- 博客(45)
- 资源 (1)
- 问答 (2)
- 收藏
- 关注
原创 Markdown Graph
1. graph1. BaseAB1. graph LR 从左到右排列 ,同理 RL2. graph BT 从上到下排列,同理 TB2. ContentContent AContent BContent CContent D3. ShapeGraph Type1:Round Rectangle表示程序的开始或者结束2:Rectangle一般用作要执行的处理3:菱形表示决策或判断Particular shapeUnknown圆形Usecase4. LineLink1Link2AB0B1B
2020-06-19 17:22:16 2626
原创 Markdown Graph
## 1. graph### 1. Base```graph LRA-->B``````1. graph LR 从左到右排列 ,同理 RL2. graph BT 从上到下排列,同理 TB```### 2. Content```graph LRA[Content A]-->B[Content B]B-->C[Content C]B-->D[Content D]```### 3. Shape```graph LRA1-1(Graph Typ.
2020-06-19 17:17:10 5154 1
原创 CAS算法
1.为什么使用CAS因为大多数的同步操作,超过90%的情况是不会碰到互斥的情况的,即不会碰到需要同步的情况,悲观锁则认为一直需要同步,影响了性能,CAS从硬件和算法层面避免这超过90%的情况。2.什么是CASCAS 全称Compare-and-Swap,广义上的讲是CAS重入算法和CAS硬件操作。它采用乐观锁的方式,即认为不需要加锁,如果有多线程在同一时间段对同一个变量或者引用的...
2019-05-08 12:05:03 1961
原创 android 保存Json数据到本地
android 保存Json数据到本地一:摘要本文主要介绍一些Json的基本知识,包括数据的保存和解析,但更重要的是使用Json保存一些非常规的数据,提供一种保存数据的方式。例如,常规的Json不支持保存Bitmap的数据,我们可以保存Bitmap,将Bitmap作为Json的value。二:Json简介Json是一种键值对存在的数据形式,值一般可以有四种形式的值。
2016-05-25 10:50:32 16308
原创 Android触屏事件传递(个人实践总结)
Android触屏事件传递一:前言 之前由于做Launcher部分,涉及到许多交互的部分,因为项目过去很长时间了,最近又在做GTS,CTS的测试与修改,好多都不熟悉甚至忘记了,结合别人的文章经验(我发现有些地方和别人有出入,但自己经测试验证),加上自己的测试,今天写下文章来总结一下。二:关于ViewGroup与其中的view视图 ViewGroup是一个容器类,
2015-04-15 15:57:27 1415 1
原创 android计时与系统休眠
android计时与系统休眠摘要:之前做项目的时候,修改一个倒计时秒表,本来以为比较简单,但是发现很多有趣的东西。我们项目里面用的是Timer计时的方法,但是,当系统休眠的时候,Timer也是处于休眠状态的。后来,我改进了几个方法,一个是handle+message的方法,还有一个是handle+runnable的方法,还有handle+Thread的方法。但是同样发现系统休眠的时候,这些同样
2015-03-05 11:24:07 3519 1
原创 android打印程序调用堆栈信息
StackTraceElement st[]= Thread.currentThread().getStackTrace(); for(int i=0;i<st.length;i++) Log.d(TAG,i+":"+st[i]);
2015-02-11 15:20:07 1148
原创 Android如何安装系统应用,及自己增加安装系统应用的接口
根据SIM卡安装系统应用功能:1:如何安装系统应用,apk放在system/app系统分区下面。2:根据SIM卡的归属国家选择性的安装应用。本人使用方法:在开机的服务里面添加接口(PackageManagerService.java),检测到SIM卡的信息调用该接口。下面是具体的方法:在
2015-01-07 14:48:14 1716
原创 Android设置里面默认存储器选项(default write disk)的实现
原生的Android设置里面没有默认存储器的选项,但是MTK偏偏加上了这个功能,可能MTK觉得这个比较有用吧,所以,他们在原生的基础上面做了修改,加上了这个功能。但是高通平台没有这个功能,相对MTK来说,高通比较严谨一点,不会随随便便加上一些功能,但是MTK平台优化了很多东西(有有点也有缺点),开发者这可能是很多山寨手机选择MTK平台的原因吧。 我给“默认存储器”做了一个简单的定义:一些内
2014-12-16 17:52:34 3804
转载 安卓手机与电脑连接正常却不显示设备
问题通常出现在同一部手机以前可以连接,但刷机后却出问题了。症状是:手机通知栏显示已经和电脑通过媒体设备连接,电脑的托盘USB指示也显示连接正常,但资源管理器却怎么都不显示手机设备。原文地址:http://zhangcs3d.blog.163.com/blog/static/30301998201401795134370/解决方法:连接手机到电脑,然后在“我的电脑”右键选择“管理
2014-12-04 10:44:07 11424
翻译 Bitmap缓存机制
Bitmap缓存机制加载一个bitmap到UI里面比较简单直接,但是,如果我们一次加载大量的bitmap数据的时候就变得复杂了。许多情况下(比如这些组件:ListVIew,GridView或者ViewPager),显示的图片和将要滚动显示的图片一般是没有限制的。内存的使用量可以被降下来,通过回收那些移出屏幕之外的组件。Android的垃圾回收机制同样会释放你的资源,如果它们没有被引用。这种
2014-11-06 10:16:24 1786 1
翻译 在UI线程之外,多线程处理Bitmaps
多线程处理Bitmaps 上一篇,我们讨论了:Android有效的处理Bitmap,减少内存 ,但是最好不要执行在主线程(UI线程),如果图片是本地的或者网络的又或者是其他地方的。图片加载的时间和许多因素有关(比如从网络或本地读取速度,图片的大小,CPU的能力),如果这些任务阻塞了UI线程,系统有可能会回收并关闭它(see Designing for Responsivene
2014-11-05 10:04:34 1917 2
翻译 Android有效的处理Bitmap,减少内存
Android有效的处理Bitmap,减少内存 图片可能会有不同的大小。在许多情况下,图片的大小会超出我们需要的大小。例如,我们的Camera应用,我们所拍的照片的大小远大于屏幕显示的大小 假如你的应用被限制了内存使用,显而易见,你会选择加载一个低分辨率的图片。这张低分辨率的图片应该匹配屏幕的尺寸。更高分辨率的图像没有提供任何可见的好处,但仍占用宝贵的内存,而且由于额外的动态缩放,会带
2014-11-04 16:26:23 2688 1
原创 android绘制路径
package com.my.apitest;import android.os.Bundle;import android.util.Log;import android.view.View;import android.annotation.SuppressLint;import android.app.Activity;import android.content.Contex
2014-10-22 10:32:14 1613
原创 Android的View抗锯齿
在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实Android自带了解决方式。 方法一:给Paint加上抗锯齿标志。然后将Paint对象作为参数传给canvas的绘制方法。
2014-10-11 14:41:54 4571
转载 runnable与Thread的区别
在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限。AD:2014WOT全球软件技术峰会北京站 课程视频发布在java中可有两种方式实现多
2014-09-16 17:06:58 592
转载 listview添加不同的view(转载)
class ActiveCenAdapter extends BaseAdapter{ private Context context; private ArrayList infos; private AsyncImageLoader asyncImageLoader; private ListView listView; private stati
2014-09-02 14:28:08 811
原创 listview的item的点击事件与checkbox点击时间冲突
android:layout_width="40px" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_marginLeft="140dp" android:fo
2014-08-27 14:17:14 1161
原创 Android UI
onInterceptTouchEvent()是ViewGroup的一个方法,目的是在系统向该ViewGroup及其各个childView触发onTouchEvent()之前对相关事件进行一次拦截.画完背景后,draw过程会调用onDraw(Canvas canvas)方法,然后就是dispatchDraw(Canvas canvas)方法, dispatchDraw()主要是分发给子组件进行
2014-08-01 12:22:50 827
原创 ActionBar总结
actionBar.setDisplayShowHomeEnabled(true) //使左上角图标是否显示,如果设成false,则没有程序图标,仅仅就个标题,否则,显示应用程序图标,对应id为android.R.id.home,对应ActionBar.DISPLAY_SHOW_HOME
2014-06-26 15:40:19 1278
原创 MediaScannerConnectionClient更行数据库中的多媒体文件
package com.example.t;import android.content.Context;import android.media.MediaScannerConnection;import android.media.MediaScannerConnection.MediaScannerConnectionClient;import android.net
2014-04-24 15:02:19 1465
转载 PreferenceActivity讲解(转载)
为了引入这个概率 首先从需求说起 即:现有某Activity专门用于手机属性设置 那么应该如何做呢? 根据已学知识 很快一个念头闪过 即:Activity + Preference 组合 前者用于界面构建 后者用于设置数据存放 其实 这是正确的 但是 这会比较繁琐 因为 每个设置选项 都要建立与其对应的Preference 所以 现在有更好的选择了 那就是本文的主角:Prefe
2014-04-22 10:07:08 673
原创 android从service里面启动一个Activity
mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
2014-03-21 16:56:58 1062
原创 Android的Service学习
1:Service和其他组件一样,都是运行在主线程中,因此不能用它来做耗时的请求或者动作。你可以在服务中开一一个线程,在线程中做耗时动作。2:一个服务不是一个单独的进程。服务对象本身并不意味着它是在自己的进程中运行,除非另有规定,否则它与运行程序在同一个进程中。3:一个服务不是一个单独的线程,他是一种手段,本身做着主线程的工作(以避免应用没有响应的错误)。
2014-03-20 16:43:26 716
转载 android 广播机制
//广播的添加方式有两种You can either dynamically register an instance of this class with //Context.registerReceiver() or statically publish an implementation //through the tag in your AndroidManifest.xml.impo
2014-03-18 10:59:14 658
转载 系统分区(hd,sdax)
一块硬盘最多只能有四个主分区。其中一个可以为扩展分区(主分区的特殊形式),扩展分区中可以有60个逻辑分区。linux表示分区,与顺序和类型有关。/dev/sda1为第一主分区/dev/sda2为第二主分区/dev/sda3为第三主分区/dev/sda4为第四主分区/dev/sda5为第一逻辑分区/dev/sda6为第二逻辑分区不管有几个主分区,逻辑分区都是从
2014-03-07 16:10:55 1033
原创 fork()与vfork()
进程在系统的唯一标识是PID,PID是一个从1到32768的正整数,其中1一般是特殊进程init,其它进程从2开始依次编号.当用完32768后,从2重新开始.函数原型:(from百度)pid_t fork( void);(pid_t 是一个宏定义,其实质是int 被定义在#include中)返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程ID;否则,出错返回
2014-03-07 16:09:57 721
原创 android获取联系人信息,插入联系人
Cursor cur = getContentResolver().query( ContactsContract.Contacts.CONTENT_URI, null, null, null, ContactsCont
2014-03-07 09:09:26 1018
原创 android汉字所占内存
android里面一个汉字占3个字节(java里面是两个,本人经验)String str = "我";str.getBytes().length获得的值是3,而不是2.
2014-03-05 14:14:10 1279
原创 Android获取SIM卡状态
TelephonyManager tm = (TelephonyManager)this.getSystemService(TELEPHONY_SERVICE);//取得系统服务tm.getSimState();//获取SIM卡的6种状态,分别是TelephonyManager.SIM_STATE_ABSENT,TelephonyManager.SIM_STATE_UNKNOW//Tele
2014-03-04 09:06:52 1393
原创 ActionBar自定义视图
ActionBar.LayoutParams lp = new ActionBar.LayoutParams( ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER); View view
2014-01-28 15:35:28 1131
转载 外网之间的远程桌面连接问题
一、被控计算机上的设置: 右击桌面上“我的电脑”,选择“属性”——“远程”标签,选中“远程桌面”——“允许用户远程连接到此计算机”(即打开远程桌面连接的默认端口3389),如果要发送远程协助邀请则还要选中前一项。二、在被控机所在局域网的路由器上设置端口映射登陆路由器的管理页面,在“虚拟服务器”中添加一条:端口号为3389,然后填入被控机
2014-01-16 08:27:35 1499
转载 centos6.4,将终端快捷键添加到鼠标右键菜单
1# 以root身份在终端执行如下命令2yum -y install nautilus-open-terminal3 4# 重启操作系统5shutdown -r now
2014-01-11 13:33:31 1588
原创 Centos添加字体
先下载zysong.ttf字体(当然其它字体也可以)mkdir -p /usr/share/fonts/zh_CN/TrueType cp zysong.ttf /usr/share/fonts/zh_CN/TrueType/
2014-01-03 23:59:52 1312
转载 系统分区(hd,sdax)
一块硬盘最多只能有四个主分区。其中一个可以为扩展分区(主分区的特殊形式),扩展分区中可以有60个逻辑分区。linux表示分区,与顺序和类型有关。/dev/sda1为第一主分区/dev/sda2为第二主分区/dev/sda3为第三主分区/dev/sda4为第四主分区/dev/sda5为第一逻辑分区/dev/sda6为第二逻辑分区不管有几个主分区,逻辑分区都是从/dev
2013-12-25 19:31:06 1146
空空如也
如何上android.developer.com
2014-11-25
Android如何获取音量键的触发事件?
2014-11-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人