深圳网站建设网站推广的方法,免费的舆情网站下载,网站开发工程师专业,模板建站源码1. 目前#xff0c; Android APP开发完成后#xff0c;通常需要在哪些机型上进行测试#xff1f; 2. 目前#xff0c; 开发Android APP时#xff0c;需要考虑的分辨率有哪些#xff1f; 这两个问题可以合起来回答的。 http://developer.android.com/about/dashb… 1. 目前 Android APP开发完成后通常需要在哪些机型上进行测试 2. 目前 开发Android APP时需要考虑的分辨率有哪些 这两个问题可以合起来回答的。 http://developer.android.com/about/dashboards/index.html 源自Google Play的数据每月都会进行update可以及时了解Android版本比例趋势。 屏幕密度数据 OpenGL ES版本 也可以参考一下国内一个第三方数据http://www.umindex.com/#android_device 目前三星和小米市场占有率是遥遥领先的三星Note2、Note3、S3、S4、S5、小米123、红米必须测试魅族也比较坑爹加入测试名单吧。再选中小屏幕各一款譬如华为C8650、Moto ME511。 Android 1.5、1.6、2.0、2.1和小屏幕的属于古董级别的机器市场存量也很少新出的机器都是4.0以上的了所以必要时需要舍弃对古董的支持因为适配成本很高对于新开发的应用这个适配不值得投入。 3. 目前 开发Android APP时适应多个分辨率的技术方案有哪些 http://developer.android.com/guide/practices/screens_support.html Android的屏幕适配可以在工程res目录下进行处理无需写代码Android自动找最适合的资源进行显示相信大家都相当熟悉的了。 目前我使用的是ADT22.6新建一个Android工程会自动在res目录下生成这个目录结构。这里有5个前缀drawable的文件夹对应不同密度屏幕时所取的图片资源或者样式。 做一个功能正常的App开发者需要遵循一些开发守则与此同时设计师也需要有一套标准来设计Android UI所有的Android UI设计指南都在这里了。 http://developer.android.com/design/style/devices-displays.html 9Path这个简单易用的工具很实用必须推荐。 画个图标都要出N种分辨率每次机械操作实在有点弱爆推荐一个牛X的工具 其中的功能可以自动切图输出各种屏幕密度的icon可视化构建布局自动生成布局文件。 http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html 推荐这个设计师应该会很喜欢秒切图。 http://www.cutandslice.me/ 实际开发中考虑到包体积大小不会在所有drawable中都放不同size的图片资源而是只使用一套图片资源编写不同的布局。个别特殊的图片资源就每个drawable文件夹中放相应的size譬如程序图标不按文件夹放可能会导致在Launcher显示失真。 虽然不作任何改动也可以在Android Pad上跑但由于Pad屏幕较大操作体验不一样建议重新设计。 4. 开发Android APP时配置文件应放在哪里APP本地、远程WeB Server中应该如何考虑 这个就要看需求了如果只是本机使用譬如保存软件设置不需要联网操作的那首选当然是保存在本地。 如果业务需要和服务器交互可以做成云配置方式。为了跨平台的兼容性可以考虑使用Google的ProtoBuf比XML更小更快更简单后台和终端定义一套协议自动生成C、Java或者Python代码。 https://developers.google.com/protocol-buffers/docs/overview?hlzh-CN 5. Android APP测试方案通常考虑哪些因素有测试方案的参考实例吗 机型适配屏幕大小这个只能人工检验了程序不知道你的UI长得好不好看 Android版本某些API在低版本上没有的会Crash推荐Lint静态扫描 网络质量联通、电信、移动、WiFi、弱网络等 安全性网络数据必定经过加密处理本地不保存安全信息帐号密码等或者加密保存 代码中敏感信息尽量使用byte数组而不是字符串代码混淆处理(Proguard) SD卡剩余空间很少没SD卡双SD卡飞行模式时间有误等。 性能CPU、内存占用开发可以使用Linux的top命令或者DDMS里面的工具 网络流量消耗有各种第三方流量监控软件 6. 开发Android APP时为了提高工作效率提高项目质量、通常需要抽象出一些lib出来请列出经常用到的接口的名称和用途。 更多精彩可以上github搜搜这就不班门弄斧了。 7. Android APP开发中其它需要提醒的问题 android4.4在UI线程无法进行网络操作不单只android API版本不一定导致运行异常有些机型还使用Java 1.5进行编译使用某些Java 1.6的函数会Crash的。 注意OOM问题目前android手机已经有3G内存了但并非一个应用就能使用全部内存。了解一下堆内存一个软件至少一个进程一个进程跑一个虚拟机进程使用的堆内存大小每部手机不一定一样。 Show Dialog的问题永远要判断Activity是否还在。 使用了高版本的API函数在低版本机器上挂了。 非UI线程不能操作UI。可能有各种权限被禁的问题。 没有浏览器、没有软件安装器、没有Email等发生ActivityNotFoundexception。 超快速连续点击按钮可能触发跑多个线程的问题。 Android4.4短信权限设置原生系统带有新接口第三方系统可能裁剪掉了。 8. 什么情况下发生OOM如何避免 图片操作图片缩放、bitmap生成等、序列化反序列化数据等会消耗大量内存。合理使用数据结构链表和数组及时释放引用使用弱引用等能降低OOM情况发生。 9. 出现ANR怎么办 如果Android程序某个操作执行等待超过5s会出现ANRApplication Not Responding的对话框对于执行耗时的操作譬如网络操作就不能在主线程上进行了Android 4.4不让你这样做了这些任务应该跑在主线程外譬如新建一个线程处理或者自己写一个网络引擎对所有网络请求进行管理。 10. 如何跟踪研发质量 Coverity接入https://scan.coverity.com/ 代码缺陷扫描不扫不知道一扫吓一跳。满分推荐Fro Free如果你写的是开源代码还能直接接入GitHub超方便。 Crash是无法避免的我们能做的是尽量把Crash的情况减少。发出去的版本用户发生Crash了我们需要把Crash数据收集起来。所以软件需要做一个Crash上报汇总整理。统计每个版本的Crash率并把Crash按优先级进行修复。 当然版本检查更新也少不了。 11. 如果跟踪用户对产品的反馈 不管你写软件所用的技术有多么牛B用户是不知道的也不关心的。用户关心的是你的产品体验到底有多牛B。加上用户可以轻松反馈的反馈功能你会发现有时用户的idea还不错的。 做出来的产品好还是不好需要有产品数据支撑所以加插相关数据统计上报点哪个功能热门新增用户多少活跃用户多少一目了然。 12. 安全检查 为避免异常情况的跳转或者恶意攻击Android组件在启动时都需要判断传入的参数是否为空。 敏感信息需要进行权限限制或者加密处理。 能不暴露的组件就不暴露在AndroidManifest中为组件加上android:exported”false”属性。 需要暴露的组件通过自定义权限进行调用添加自定义权限android:permission”yourapp.permission.CALL”检测WebView漏洞http://security.tencent.com/index.php/opensource/detail/1 13. 常用工具有哪些 Lint清理资源、安全检查、layout优化等 一般在提测前清理一下冗余资源查一下有没有用了一些高API Level才有的接口查一下安全问题。 Findbugs检查java代码缺陷 在开发工程中就可以对单个文件进行检查有问题可以及时处理。 MAT内存泄漏调试工具http://www.eclipse.org/mat/ 遇到内存或者性能问题时一般会结合几种工具来查问题找解决方法。 Method Profiling统计方法耗时 Eclipse Class Decompiler从此Eclipse不怕看不到jar包内的代码了http://feeling.sourceforge.net/update Hierarchy Viewer查看Activity堆栈、layout加载层次、像素眼 只能连接开发板手机或者模拟器如果你的手机连不上搜一下“Hierarchy Viewer 真机”各种教程教你如何连上。 Activity太多有时出问题了但又想不起这个页面叫什么名字插上去一目了然。 很清晰看出Layout布局层次 还能显示计算layout耗时绘图耗时UI性能优化好帮手。 TinyPNG压缩图片资源利器山崩地裂推荐https://tinypng.com/ 7z压缩APK利器上线前压一下就可以简单实用五星推荐 Apktool、Dex2jar 、jd-gui反编译套装你懂的 Mark Man设计师何苦为难工程师 Beyond Compare各种神对比我喜欢对比代码 TcpdumpLinux dump包工具 adb shell tcpdump -p -vv-s 0 -w /sdcard/capturenet.pcap WireShark查看网络dump包 遇到棘手问题时还是需要他们帮忙解决的。 CMD (很简单的脚本却能大大提高效率大家多学多分享) 一些经常操作的动作使用手工操作又耗时又麻烦还可能出错使用命令行去操作的话会极大提供效率。 拖放安装应用不用再弹出xx助手xx宝来的蜗牛速度安装了速度快了心情好了 adb install %1 pause 卸载应用 adb uninstall com.tencent.qqpim 拉去SD卡目录文件 adb pull /sdcard/test/log c:testlog 获取联系人db adb pull /data/data/com.android.providers.contacts/databases/contacts2.db C:contact2.db tcpdump包 adb shell tcpdump -p -vv -s 0 -w /sdcard/capturenet.pcap SDK裁剪打包 裁目录rd/s/q S:tencentsrcAGJ 裁文件del S:tencentsrccomtencenttestTestApplication.java 转载于:https://www.cnblogs.com/hy66668888/p/6866920.html