Android常用秘籍总结

一.无法向模拟器push文件,显示read-only file system

$adb shell mount -o remount rw/

确保模拟器有sd卡

二.Android模拟按键

#adb shell input keyevent %key_num%

常用 Home:3,Power:26

三.ListView滑动变黑

设置android:cacheColorHint="#00000000" => 透明

四.打包userdata.img

用到的工具:make_ext4fs,simg2img,mkuserimg.sh

1.解压userdata.img

$sudo ./simg2img userdata.imguserdata_temp.img

2.挂载

$mkdir ./tmp

$sudo mount -o loop userdata_temp.img ./tmp

3.拷贝apk

$cp %apk_path% ./tmp/app

4.复制文件

同拷贝apk

5.计算userdata大小,用于打包

$ls -lh userdata_temp.img | awk -F ' ' '{print $5}'

6.重新打包image

$sudo ./mkuserimg.sh -s ./tmp/ userdata_new.img ext4 data %user_data_size% (上面算出来的,也可以是其他数值,设置前请确定EMMC大小,以防溢出)

卸载挂载目录

$sudo umount ./tmp

删除无用的目录、文件

sudo rm ./tmp userdata.img userdata_temp.img -rf

还原userdata.img

sudomv userdata_new.img userdata.img

7.改变所有者

sudo chown %your_name%:%your_name% . -R

五.Eclipse快捷键

传送门1

传送门2

六.NvFlash工具

基于版本3.08.1700测试

传送门

七.在XML里使用自定义控件报“ android.view.InflateException: Binary XML file line”异常

添加包含Context和AttributeSet的构造函数,如:

public class DrawerView extends TextView {
public DrawerView(Context context, AttributeSet attributeSet) {
super(context, attributeSet);
}
}

XML使用时需指定包名

<com.test.drawer.DrawerView
android:id="@+id/drawer_drawerView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="28sp" />


持续更新中...

上一篇:C#学习笔记1:正则表达式和数据库连接


下一篇:java_抽象类