Android面试题(三)

来源:互联网 发布:知乎 近年来 动漫神作 编辑:程序博客网 时间:2024/06/05 19:04
1.View如何刷新? 
2.DDMS与TraceView的区别? 
3.activity被回收了怎么办? 
4.在Java中如何引入C语言? 
答案 
1.View 可以调用invalidate()和postInvalidate()这两个方法刷新 
2.DDMS是一个程序执行查看器,在里面你可以看见线程和堆栈等信息,TraceView是程序性能分析器 
3.activity回收了,那就只有另起了 
4.java调用C语言程序,可以用JNI接口来实现 
上面答案仅作参考,毕竟我个人能力也有限嘛,难免会回答错误,呵呵..... 
解答: 
1.View受系统刷新(系统内部有个循环,监控事件、做业务处理、绘UI),可以用postInvalidate()促使系统刷新。 
2.(还真不知道) 
3.请参照Activity生命周期,如果被系统destroy了,也就是说的回收,只有从新start了 
4.通过JNI调用。建议阅读《The Java Native Interface Programmer's Guide and Specification》,英文版的,从sun网站下吧。 

 

 34. 在 android 中,请简述 jni 的调用过程。

(8 分)

 1)安装和下载 Cygwin,下载 Android NDK

2)在 ndk 项目中 JNI 接口的设计

3)使用 C/C++实现本地方法

4)JNI 生成动态链接库.so 文件

 5)将动态链接库复制到 java 工程,在 java 工程中调用,运行 java 工程即可

0 0
原创粉丝点击