Android 开发中,有哪些坑需要注意
2017-02-06 · 专业app开发、互联网营销策划
Android 开发注意点:
技术角度分析
同一个应用的JNI代码,不要轻易换NDK编译的版本,否则会有很多问题(主要是一些方法实现不一样,并且高版本对代码的检测更严格),比如r8没有问题,但到r9就有问题了。
不要通过Bundle传递大块的数据,TransactionTooLargeException会显示异常。
genymotion模拟器快是基于x86架构的,如果应用中用到了so,但没有x86架构的so,只能放弃使用,Android Studio的模拟器也是同样的道理。
Eclipse中的Lint太不靠谱,特别是主工程中依赖library的时候,很多提示都是有问题的,建议使用Android Studio的工程清理工具。
在多进程之间不要用SharedPreferences共享数据,虽然可以但极不稳定。
当前Activity的onPause方法执行结束后,onCreate才会执行Activity,所以在onPause方法中不适合做耗时较长的工作,这会影响到页面之间的跳转效率。
运营角度分析
需结合市场趋势:
优秀的安卓APP开发定制结合于市场趋势,无论是那个行业要成功都需要对市场有敏锐的触觉,就安卓APP定制这个行业来说开发者需要把握动态,做到发展趋势的标记。
需要有好的想法:
定制需要与优秀的APP定制想法一致,了解AP受用户喜欢的原因,参考其他APP的排名优势。
注重用户体验:
设计过程中可以借助其他工具尽可能把需要的详细的信息传达给程序员。优秀的APP开发定制需要在完整的设计方案下进行编写代码,同时还需要不断测试。
安全问题
安卓应用开发也需要注意安全问题,应用常被用于处理非常敏感的数据,开发者有责任确保用户提供的信息不被居心不良者轻易截取。
使用网络服务(WS)通信时的风险、在存储设备上存储数据时潜在的信息泄漏以及第三方软件能轻易编辑应用程序的漏洞,这三个都是经常容易出现漏洞的地方。
2textviewsetText为int时候,textview的color代码设置,set/getTextSize 单位问题
3json 属性节点不能有空格
4asset下使用第三方字体 xx.ttf 必须都为小写
5listView自定义adapter中复用holder时候,如果view/checkbox等对应不同状态显示不同的图片,切记情况写全,不然会出现错乱问题。
6做上传时候记得问问服务端是否限制了上传文件大小
7context/getApplicationContext,视你是否需要涉及到ui时候选择合适的context
8存在复用时候,尽量new对象等操作移到复用之外,以防oom
9数据库操作加锁
10用Activity来显示出的dialog,popupwindow等控件需要在Activity关闭时候(之前也给关了)
11toast,判断是否格式(为空等)封装
12ui布局在多机型上的测试
13new handler时候尽量写在紧跟其他控件的获取之后,防止空指针
14context.startActivity();要intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
15针对一些特定的只能为数字的editText 设置软键盘类型为数字,为用户节省切换这一步骤。edittext.setInputType(EditorInfo.TYPE_CLASS_PHONE);
16armeabi-v7a
17监听键盘输入会有两次:(一次up 一次down)
18 不同类型的资源文件最好不要重名,不然会偶尔发现空指针,eclipse会抽,找成另一控件
19AlarmManager PendingIntent 这玩意在miui 不管用。。。。
20部分系统 datepickdialog 的onDateSet 执行两次
21fragment startActivityForResult 回调