教育教学软件
 
警方提示:请勿相信陌生电话,谨慎交易,谨防被骗!
 
软件开发|极客营|UI前端
2016-04-05 16:00  
价格:¥1.00/个
品牌:长沙极客营IT梦想学院
起订:1个
供应:1个
发货:3天内
立即购买
软件开发|极客营|UI前端 | 长沙极客营IT梦想学院

刚学会安卓开发者,应该注意哪些事项?


作为一个有三、四年Android应用开发经验的码农,自然会遇到很多坑,下面是我能够想起的一些坑(实践证明不记笔记可不是个好习惯),后面有想到其它坑会陆续补上。

  • 有些时候不能使用Application的Context,不然会报错(比如启动Activity,显示Dialog等):

  • 同一个应用的JNI代码,不要轻易换NDK编译的版本,否则会有很多问题(主要是一些方法实现不一样,并且高版本对代码的检测更严格),比如r8没有问题,但到r9就有问题了,这是个大坑;

  • Android的JNI代码中,有返回类型的函数没有返回值编译的时候也不会报错;

  • 当前Activity的onPause方法执行结束后才会执行下一个Activity的onCreate方法,所以在onPause方法中不适合做耗时较长的工作,这会影响到页面之间的跳转效率;

  • 谨慎使用Android的透明主题,透明主题会导致很多问题,比如:如果新的Activity采用了透明主题,那么当前Activity的onStop方法不会被调用;在设置为透明主题的Activity界面按Home键时,可能会导致刷屏不干净的问题;进入主题为透明主题的界面会有明显的延时感;

  • 不要在非UI线程中初始化ViewStub,否则会返回null;

  • 公共接口一定要考虑到代码重入的情况,能设计为单例就尽量用单例;

  • 不要通过Bundle传递大块的数据,否则会报TransactionTooLargeException异常:java - Issue: Passing large data to second Activity**

  • 尽量不要通过Application缓存数据,这不稳定:不要在Android的Application对象中缓存数据!**

  • 尽量不要使用AnimationDrawable,它在初始化的时候就将所有图片加载到内存中,特别占内存,并且还不能释放,释放之后下次进入再次加载时会报错;

  • 9图不能通过tinypng压缩,不然会有问题;

  • genymotion模拟器快是因为它是基于x86架构的,如果你的应用中用到了so,但没有x86架构的so,只能放弃使用它;Android Studio的模拟器也一样;

  • Eclipse的Android开发环境配置好后不要轻易升级ADT和build tools,不然会浪费你很多时间,还有就是一个workspace中的工程不要太多,不然每次启动都会很慢;

  • Android studio每个版本、gradle每个版本差别都比较大(我是这样认为的),对于jni代码的编译建议在Eclipse中进行,如果在Android studio中开发jni会浪费很多时间,主要是编译脚本的配置比较麻烦;

  • Eclipse中的Lint太不靠谱,特别是主工程中依赖library的时候,很多提示都是有问题的,建议使用Android Studio的工程清理工具,特别推荐。

  • AsyncTask默认自己维护一个静态的线程池,而该线程池只允许同时执行一个线程,也就是说,不管多少个AsyncTask,只要是调用execute()方法,都是共享这个默认进程池的,你的任务必须在之前的任务执行完以后,才能执行。


长沙极客营IT梦想学院是一个致力于高素质软件开发人才培养的计算机教育基地,首创国内《极客Android课程》、《极客IOS课程》、《极客Java课程》、《前端工程师培训》等专业教材,成为国内许多前沿IT企业的人才孵化基地,通过专业实训彻底排除学员的后顾之忧,并解决用人企业难以招聘到合格人才的困扰。



联系方式
免责声明:本站所展示的图片和信息均为用户自行免费发布,其真实性、准确性及合法性未证实。请谨慎采用,风险自负。企业网对此不承担任何法律责任。
 
公司:长沙极客营IT梦想学院
状态:离线 发送信件
姓名:郭老师(女士)
职位:老师
电话:0731-89602019
手机:15773128068
传真:0731-89602030
地区:湖南-长沙市
地址:湖南省长沙市雨花区韶山南路443号(中南林业科技大学斜对面)
邮编:410000
邮件:1057108440@qq.com
QQ:1057108440