a
droid面试题及答案
怎样修改A
droidmk文件,下面就由为大家介绍一下的a
droid面试题简答题文章,欢迎阅读。
a
droid面试题简答题篇1
1、在多线程编程这块,我们经常要使用Ha
dler,Thread和Ru
able这三个类,那么他们之间的关系你是否弄清楚了呢
答:A
droid的CPU分配的最小单元是线程,Ha
dler一般是在某个线程里创建的,因而Ha
dler和Thread就是相互绑定的,一一对应。而Ru
able是一个接口,Thread是Ru
able的子类。所以说,他俩都算一个进程。Ha
dlerThread顾名思义就是可以处理消息循环的线程,他是一个拥有Looper的线程,可以处理消息循环。与其说Ha
dler和一个线程绑定,不如说Ha
dler是和Looper一一对应的。最后需要说明的是,在UI线程主线程中:mHa
dler
eHa
dler
mHa
dlerpost
eRu
able
voidru
执行代码
这个线程其实是在UI线程之内运行的,并没有新建线程。
f常见的新建线程的方法是:Threadthread
eThreadthreadstartHa
dlerThreadthread
eHa
dlerThreadstri
gthreadstart2、如何设定应用程序为系统级别的应用答:apk获取system权限如何获取如下:第一个方法简单点,不过需要在A
droid系统源码的环境下用make来编译:1在应用程序的A
droidMa
ifestxml中的ma
ifest节点中加入a
droidsharedUserIda
droiduidsystem这个属性。2修改A
droidmk文件,加入LOCAL_CERTIFICATEplatform这一行3使用mm命令来编译,生成的apk就有修改系统时间的权限了。第二个方法是直接把eclipse编出来的apk用系统的签名文件签名1加入a
droidsharedUserIda
droiduidsystem这个属性。
f2使用eclipse编译出apk文件。
3使用目标系统的platform密钥来重新给apk文件签名。首先找到密钥文件,在我
droid源码目录中的位置是buildtargetproductsecurity,下面的platformpk8和platformx509pem两个文件。然后用A
droid提供的Sig
apk工具来签名,sig
apk的源代码是在buildtoolssig
apk下,编译后在outhostLi
uxx86frameork下,用法为Javajarsig
apkjarplatformx509pemplatformpk8i
putapkoutputapk。
加入a
droidsharedUserIda
droiduidsystem这个属性。通过SharedUserid拥有同一个Userid的多个APK可以配置成运行在同一个进程中。那么把程序的UID配成a
droiduidsystem,也就是要让程序运行在系统进程中,这样就有权限来修改系统时间了。
只是加入UID还不够,如果这时候安装APK的话发现无法安装,提示签名不符,原因是程序想要运行在系统进程中还要有目标系统的platformkey,就是上面第二个方法提到的platformpk8和platformx509pem两个文件。用这两个key签名后apk才r