MotionEvent
obtain(MotionEvent other) ,没有构建器,只有静态工厂方法
http://www.2cto.com/kf/201109/102655.html
Instrumentation发送键盘鼠标事件:Instrumentation提供了丰富的以send开头的函数接口来实现模拟键盘鼠标,如下所述:
sendCharacterSync(int keyCode) //用于发送指定KeyCode的按键
sendKeyDownUpSync(int key) //用于发送指定KeyCode的按键
sendPointerSync(MotionEvent event) //用于模拟Touch
sendStringSync(String text) //用于发送字符串
Instrumentation inst=new Instrumentation();
inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, 10, 10, 0));
FloatMath 优化无极限
TimingLogger log time 功能
android util package and os package
只要不uninstall 只是install ,以前的cache 还可以用。
snapshot 可以加快模拟器启动
但是也会遇到一种情况,不管你怎么修改源文件都无法应用你的修改,程序还是跟上一次关闭时的状态一样。原因可能是snapshot引起的。
http://www.girlcoding.com/category/mobileprogramming/android/
Tinker:Android的SD卡插拔广播
最近项目里面需要监听SD卡的插拔,网上搜广播的时候,很多东西都没提到。我将这些东西记录下来,以备后用。
1. 如果是单个Activity监听广播,则在Activity的onCreate方法里面,用下面的代码注册广播
IntentFilter iFilter = new IntentFilter();iFilter.addAction(Intent.ACTION_MEDIA_EJECT);iFilter.addDataScheme("file");registerReceiver(mBroadcastReceiver ,iFilter);
2. 如果是整个程序监听广播,则在Android manifest用下面的方法注册广播
<receiver android:name=".activities.widget.UsbBroadCastReceiver"><intent-filter android:priority="1000"><action android:name="android.intent.action.MEDIA_MOUNTED"/><action android:name="android.intent.action.MEDIA_EJECT"/><data android:scheme="file"/></intent-filter></receiver>
3.如果广播别别的程序截获,导致你无法收到广播,给intent-filter加上一个android:priority="1000"的属性就行,添加位置,参照上面的代码。
4. 我的项目里面是整个程序监听广播,
①Android Manifest的代码如下:
<receiver android:name=".activities.widget.UsbBroadCastReceiver"><intent-filter android:priority="1000"><action android:name="android.intent.action.MEDIA_MOUNTED"/><action android:name="android.intent.action.MEDIA_EJECT"/><data android:scheme="file"/></intent-filter></receiver>
Android Manifest一定要在intent-filter注意加上<data android:scheme=”file”>,否则无法监听到SD卡插拔广播,如果你在Activity里面用代码注册广播,那一定要加iFilter.addDataScheme("file"),具体原因我还没闹明白,等我闹明白时补上
线性布局LinearLayout也支持给每个单独的子视图分配一个权重。这个属性分配一个“重要性”数值给一个视图,并允许它扩展来填充父视图的任何剩余空间。子视图可以指定一个整型权重值,然后任何这个视图组中的剩余空间将按照子视图声明的比重来分配给它们。缺省权重是0。比如,如果有三个文本框,其中两个声明权重为1,而另一个未给定数值(0),这第三个没有权重的文本框将不会增长而只是占据其内容所要求的空间。其它两个将均匀分配剩余的空间。如果把第三个控件权重改为2,那意味着它被声明为比其它两个“更为重要”,因此它将占据整个空间的一半,而前面两个均分剩下的空间。
如何更换Android模拟器界面 ,不用缺省的太丑陋
http://blog.csdn.net/iefreer/article/details/4616025
压力测试,快速(多线程执行),大量数据处理能力。
交互测试,
新界面测试,不可以不断的打开一个dialog (设计的时候,不让他连续调整,只有回到主界面,才可以,如果有连续跳转,可以搞个计数器,到了一定比例,不允许再加)
输入框测试。
按钮连按测试
中途改变配置处理。
http://baike.baidu.com/view/470808.htm SMART原则
以前的goal 目标。
以前的工作,开会,分析问题回邮件,编码。没有分清主次。
表现自己。网状结构。
前一阶段 编码。口头上,然后再推。
Runtime.getRuntime().exec("sendevent /dev/input/event0 1 102 1");
home 键 拦截
http://blog.csdn.net/yiyaaixuexi/article/details/6604430
把系统权限禁止掉
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
Android地图和定位学习总结
http://www.cnblogs.com/zhangchaoyang/articles/1799531.html
触感反馈
v.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS,HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING);
v.playSoundEffect(SoundEffectConstants.CLICK);
click 有 ,touch 无
快图浏览
不要知足于短期记忆和API 细节。
要注意概念原理,是否可以做,如何研究。
Android权限机制总结与常见权限不足问题分析
http://blog.csdn.net/Zengyangtech/article/details/5749999
http://hi.baidu.com/donghaozheng/blog/item/30a00d4f9fca873baec3ab69.html
java 权限设置和 android
关机,重启,install uninstall 其他程序。监视这些动作。
关屏,锁屏。关网 网络改变
http://blog.csdn.net/freshman_studing/article/details/6646253
android应用中监听按下HOME键
onUserLeaveHint() use press home will call ,but an incoming phone call will not call
http://www.blogjava.net/lihao336/archive/2010/11/22/338677.html
这正是我想要的,这样,在启动activity时,往intent中加上这个flag,onUserLeaveHint就不会再被调用了,hoory...
FLAG_ACTIVITY_NO_USER_ACTION ,只有在按home 键的时候才会调用 onUserLeaveHint。
可以通过"singleTask" 和 onNewIntent(Intent intent) 来监视 Home 键
注意: 当按Home键退出,再长按Home键进入(recent ),此时onNewIntent不被访问,因为再次进入的时候没有被发起Intent
onUserLeaveHint 在 protected 方法,在public 找不到
recent 调用
intent 和系统交互, 以及管理自己activity (主要flag )
category 是分类 ,home ,browsable 。
action 有activity 和 broadcast 两种
intent flag
可以管理task (顺序,清楚,新task ),可以管理不同的入口(是否从Home ,recent ,background )
甚至权限,
FLAG_ACTIVITY_REORDER_TO_FRON 改变顺序
FLAG_FROM_BACKGROUND
ACTION_DEVICE_STORAGE_LOW Broadcast Action: A sticky broadcast that indicates low memory condition on the device
This is a protected intent that can only be sent by the system.
ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
可以每一次直接去读取信息,而不是设个变量
public static final String ACTION_MEDIA_SCANNER_SCAN_FILE
Since: API Level 1
Broadcast Action: Request the media scanner to scan a file and add it to the media database. The path to the file is contained in the Intent.mData field.
主动要求的广播
intent copy data
Content URI Summary
HttpClient 设计模式
分析工具,重复动作容易发现问题。
根据类名check 对象个数是否异常。
关闭后查看是否还有对象存在,不过一般不是list ,没有问题。
在手机上可以直接打开,有时候报没有写权限
可以点击下面显示更多,可以根据class (根据名字 )显示 object ,然后再显示 GC path
why space activity still exist
浏览的欲望
还有3个入口
直接杀程序
android.os.Process.killProcess(android.os.Process.myPid());
http://blog.csdn.net/maxleng/article/details/5490770
Android 核心分析
RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片.
Alarm 闹钟是 android 系统中在标准 RTC 驱动上开发的一个新的驱动,提供了一个定时器用于把设备从睡眠状态唤醒,当然因为它是依赖 RTC 驱动的,所以它同时还可以为系统提供一个掉电下还能运行的实时时钟
programe
debug log ,programe , view debug ,memory debug ,system dump . profile.
static check
test
第三方 类库。
优化
第一个 滚动停止后
recent task , 管理,读取 task 。task 的设计目的。
Handle 进程
SQLiteQuery
SQLiteProgram
From class android.database.sqlite.SQLiteClosable
// Setup the list of columns
int columnCount = mQuery.columnCountLocked(); 找不到
SQLiteDatabase.CursorFactory
act Cursor newCursor(SQLiteDatabase db, SQLiteCursorDriver masterQuery, String editTable, SQLiteQuery query)
http://www.2cto.com/kf/201109/102655.html
Instrumentation发送键盘鼠标事件:Instrumentation提供了丰富的以send开头的函数接口来实现模拟键盘鼠标,如下所述:
sendCharacterSync(int keyCode) //用于发送指定KeyCode的按键
sendKeyDownUpSync(int key) //用于发送指定KeyCode的按键
sendPointerSync(MotionEvent event) //用于模拟Touch
sendStringSync(String text) //用于发送字符串
Instrumentation inst=new Instrumentation();
inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, 10, 10, 0));
FloatMath 优化无极限
TimingLogger log time 功能
android util package and os package
只要不uninstall 只是install ,以前的cache 还可以用。
snapshot 可以加快模拟器启动
但是也会遇到一种情况,不管你怎么修改源文件都无法应用你的修改,程序还是跟上一次关闭时的状态一样。原因可能是snapshot引起的。
http://www.girlcoding.com/category/mobileprogramming/android/
Tinker:Android的SD卡插拔广播
最近项目里面需要监听SD卡的插拔,网上搜广播的时候,很多东西都没提到。我将这些东西记录下来,以备后用。
1. 如果是单个Activity监听广播,则在Activity的onCreate方法里面,用下面的代码注册广播
IntentFilter iFilter = new IntentFilter();iFilter.addAction(Intent.ACTION_MEDIA_EJECT);iFilter.addDataScheme("file");registerReceiver(mBroadcastReceiver ,iFilter);
2. 如果是整个程序监听广播,则在Android manifest用下面的方法注册广播
<receiver android:name=".activities.widget.UsbBroadCastReceiver"><intent-filter android:priority="1000"><action android:name="android.intent.action.MEDIA_MOUNTED"/><action android:name="android.intent.action.MEDIA_EJECT"/><data android:scheme="file"/></intent-filter></receiver>
3.如果广播别别的程序截获,导致你无法收到广播,给intent-filter加上一个android:priority="1000"的属性就行,添加位置,参照上面的代码。
4. 我的项目里面是整个程序监听广播,
①Android Manifest的代码如下:
<receiver android:name=".activities.widget.UsbBroadCastReceiver"><intent-filter android:priority="1000"><action android:name="android.intent.action.MEDIA_MOUNTED"/><action android:name="android.intent.action.MEDIA_EJECT"/><data android:scheme="file"/></intent-filter></receiver>
Android Manifest一定要在intent-filter注意加上<data android:scheme=”file”>,否则无法监听到SD卡插拔广播,如果你在Activity里面用代码注册广播,那一定要加iFilter.addDataScheme("file"),具体原因我还没闹明白,等我闹明白时补上
线性布局LinearLayout也支持给每个单独的子视图分配一个权重。这个属性分配一个“重要性”数值给一个视图,并允许它扩展来填充父视图的任何剩余空间。子视图可以指定一个整型权重值,然后任何这个视图组中的剩余空间将按照子视图声明的比重来分配给它们。缺省权重是0。比如,如果有三个文本框,其中两个声明权重为1,而另一个未给定数值(0),这第三个没有权重的文本框将不会增长而只是占据其内容所要求的空间。其它两个将均匀分配剩余的空间。如果把第三个控件权重改为2,那意味着它被声明为比其它两个“更为重要”,因此它将占据整个空间的一半,而前面两个均分剩下的空间。
如何更换Android模拟器界面 ,不用缺省的太丑陋
http://blog.csdn.net/iefreer/article/details/4616025
压力测试,快速(多线程执行),大量数据处理能力。
交互测试,
新界面测试,不可以不断的打开一个dialog (设计的时候,不让他连续调整,只有回到主界面,才可以,如果有连续跳转,可以搞个计数器,到了一定比例,不允许再加)
输入框测试。
按钮连按测试
中途改变配置处理。
http://baike.baidu.com/view/470808.htm SMART原则
以前的goal 目标。
以前的工作,开会,分析问题回邮件,编码。没有分清主次。
表现自己。网状结构。
前一阶段 编码。口头上,然后再推。
Runtime.getRuntime().exec("sendevent /dev/input/event0 1 102 1");
home 键 拦截
http://blog.csdn.net/yiyaaixuexi/article/details/6604430
把系统权限禁止掉
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
Android地图和定位学习总结
http://www.cnblogs.com/zhangchaoyang/articles/1799531.html
触感反馈
v.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS,HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING);
v.playSoundEffect(SoundEffectConstants.CLICK);
click 有 ,touch 无
快图浏览
不要知足于短期记忆和API 细节。
要注意概念原理,是否可以做,如何研究。
Android权限机制总结与常见权限不足问题分析
http://blog.csdn.net/Zengyangtech/article/details/5749999
http://hi.baidu.com/donghaozheng/blog/item/30a00d4f9fca873baec3ab69.html
java 权限设置和 android
关机,重启,install uninstall 其他程序。监视这些动作。
关屏,锁屏。关网 网络改变
http://blog.csdn.net/freshman_studing/article/details/6646253
android应用中监听按下HOME键
onUserLeaveHint() use press home will call ,but an incoming phone call will not call
http://www.blogjava.net/lihao336/archive/2010/11/22/338677.html
这正是我想要的,这样,在启动activity时,往intent中加上这个flag,onUserLeaveHint就不会再被调用了,hoory...
FLAG_ACTIVITY_NO_USER_ACTION ,只有在按home 键的时候才会调用 onUserLeaveHint。
可以通过"singleTask" 和 onNewIntent(Intent intent) 来监视 Home 键
注意: 当按Home键退出,再长按Home键进入(recent ),此时onNewIntent不被访问,因为再次进入的时候没有被发起Intent
onUserLeaveHint 在 protected 方法,在public 找不到
recent 调用
intent 和系统交互, 以及管理自己activity (主要flag )
category 是分类 ,home ,browsable 。
action 有activity 和 broadcast 两种
intent flag
可以管理task (顺序,清楚,新task ),可以管理不同的入口(是否从Home ,recent ,background )
甚至权限,
FLAG_ACTIVITY_REORDER_TO_FRON 改变顺序
FLAG_FROM_BACKGROUND
ACTION_DEVICE_STORAGE_LOW Broadcast Action: A sticky broadcast that indicates low memory condition on the device
This is a protected intent that can only be sent by the system.
ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
可以每一次直接去读取信息,而不是设个变量
public static final String ACTION_MEDIA_SCANNER_SCAN_FILE
Since: API Level 1
Broadcast Action: Request the media scanner to scan a file and add it to the media database. The path to the file is contained in the Intent.mData field.
主动要求的广播
intent copy data
Content URI Summary
HttpClient 设计模式
分析工具,重复动作容易发现问题。
根据类名check 对象个数是否异常。
关闭后查看是否还有对象存在,不过一般不是list ,没有问题。
在手机上可以直接打开,有时候报没有写权限
可以点击下面显示更多,可以根据class (根据名字 )显示 object ,然后再显示 GC path
why space activity still exist
浏览的欲望
还有3个入口
直接杀程序
android.os.Process.killProcess(android.os.Process.myPid());
http://blog.csdn.net/maxleng/article/details/5490770
Android 核心分析
RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片.
Alarm 闹钟是 android 系统中在标准 RTC 驱动上开发的一个新的驱动,提供了一个定时器用于把设备从睡眠状态唤醒,当然因为它是依赖 RTC 驱动的,所以它同时还可以为系统提供一个掉电下还能运行的实时时钟
programe
debug log ,programe , view debug ,memory debug ,system dump . profile.
static check
test
第三方 类库。
优化
第一个 滚动停止后
recent task , 管理,读取 task 。task 的设计目的。
Handle 进程
SQLiteQuery
SQLiteProgram
From class android.database.sqlite.SQLiteClosable
// Setup the list of columns
int columnCount = mQuery.columnCountLocked(); 找不到
SQLiteDatabase.CursorFactory
act Cursor newCursor(SQLiteDatabase db, SQLiteCursorDriver masterQuery, String editTable, SQLiteQuery query)