Android面试题(三)

本文详细阐述了Android开发中JNI接口的调用过程,包括环境准备、接口设计、C/C++实现及生成动态链接库,最后在Java工程中调用并运行。此外,文章还提供了一个实例,帮助开发者更好地理解和实践JNI技术。

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 工程即可

转载于:https://www.cnblogs.com/liuzenglong/archive/2011/10/22/2221028.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值