欢迎来到天天文库
浏览记录
ID:37708253
大小:188.20 KB
页数:25页
时间:2019-05-29
《Android 开发规范与应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Android开发规范与应用摘要使用Gradle和它推荐的工程结构把密码和敏感数据放在gradle.properties不要自己写HTTP客户端,使用Volley或OkHttp库使用Jackson库解析JSON数据避免使用Guava同时使用一些类库来避免65kmethodlimit(一个Android程序中最多能执行65536个方法)使用Fragments来呈现UI视图使用Activities只是为了管理FragmentsLayout布局是XMLs代码,组织好它们在layoutoutXMLs布局时,使用styles文件来避免使用重复
2、的属性使用多个style文件来避免单一的一个大style文件保持你的colors.xml简短DRY(不要重复自己),只是定义调色板总是使用dimens.xmlDRY(不要重复自己),定义通用常数不要做一个深层次的ViewGroup在使用WebViews时避免在客户端做处理,当心内存泄露使用Robolectric单元测试,Robotium做UI测试使用Genymotion作为你的模拟器总是使用ProGuard和DexGuard混淆来项目【→前面的一节课已经给大家介绍了如何搭建Android开发环境。本节课就来给大家介绍如何使用Andr
3、oidstudio来开发我们第一个Android应用程序。当然如果大家对于安卓开发有什么疑问,或者想找大牛教你如何从0开始系统打造一个完整的企业级安卓开发教程可以加企鹅号:前面444然后513+089免费学习,获取最新最全的企业级开发视频教程←】AndroidSDK将你的AndroidSDK放在你的home目录或其他应用程序无关的位置。当安装有些包含SDK的IDE的时候,可能会将SDK放在IDE同一目录下,当你需要升级(或重新安装)IDE或更换的IDE时,会非常麻烦。此外,若果你的IDE是在普通用户,不是在root下运行,还要避免吧
4、SDK放到一下需要sudo权限的系统级别目录下。构建系统你的默认编译环境应该是Gradle.Ant有很多限制,也很冗余。使用Gradle,完成以下工作很方便:构建APP不同版本的变种制作简单类似脚本的任务管理和下载依赖自定义秘钥更多同时,AndroidGradle插件作为新标准的构建系统正在被Google积极的开发。工程结构有两种流行的结构:老的Ant&EclipseADT工程结构,和新的Gradle&AndroidStudio工程结构,你应该选择新的工程结构,如果你的工程还在使用老的结构,考虑放弃吧,将工程移植到新的结构。老的结构
5、:old-structure ├─assets ├─libs ├─res ├─src │└─com/futurice/project ├─AndroidManifest.xml ├─build.gradle ├─project.properties └─proguard-rules.pro新的结构new-structure ├─library-foobar ├─app │├─libs │├─src ││├─androidTest │││└─java │││└─com/futurice/project ││└─main ││├─jav
6、a │││└─com/futurice/project ││├─res ││└─AndroidManifest.xml │├─build.gradle │└─proguard-rules.pro ├─build.gradle └─settings.gradle主要的区别在于,新的结构明确的分开了'sourcesets'(main,androidTest),Gradle的一个理念。你可以做到,例如,添加源组‘paid’和‘free’在src中,这将成为您的应用程序的付费和免费的两种模式的源代码。你的项目引用第三方项目库时(例如,lib
7、rary-foobar),拥有一个顶级包名app从第三方库项目区分你的应用程序是非常有用的。然后settings.gradle不断引用这些库项目,其中app/build.gradle可以引用。Gradle配置常用结构参考Google'sguideonGradleforAndroid小任务除了(shell,Python,Perl,etc)这些脚本语言,你也可以使用Gradle制作任务。更多信息请参考Gradle'sdocumentation。密码在做版本release时你app的build.gradle你需要定义signingConf
8、igs.此时你应该避免以下内容:不要做这个.这会出现在版本控制中。signingConfigs{ release{ storeFilefile("myapp.keystore") storePassword"password123"
此文档下载收益归作者所有