Android 摘要
-
Android应用权限管理 Understanding App Permissions
Android Marshmallow(API 23)引入了动态权限,当targetSdkVersion >= 23 时,需要处理动态权限,但普通权限Normal Permissions还是依然是直接在AndroidManifest.xml文件中申请。不需要弹窗让用户确认授权,用户也不能在以后注销授权。这和 API 23 以前的版本的处理方式一样。
不在Normal Permissions权限列表中的权限都是Runtime Permissions,需要在App运行时动态申请。一般是通过向用户弹出权限申请对话框,让用户选择是否授权。如果拒绝授权,程序中的某些功能将不可用,但App是可以正常运行的,其他不需要该权限的功能也都正常可用 -
Java中拼接JSON字符串语法
有时在mock阶段用来构造临时JSON测试数据,如果使用 Retrofit 则可用通过MockServer来创建更方便的mock数据。
String bowlingJson(String player1, String player2) { return "{'winCondition':'HIGH_SCORE'," + "'name':'Bowling'," + "'round':4," + "'lastSaved':1367702411696," + "'dateStarted':1367702378785," + "'players':[" + "{'name':'" + player1 + "','history':[10,8,6,7,8],'color':-13388315,'total':39}," + "{'name':'" + player2 + "','history':[6,10,5,10,10],'color':-48060,'total':41}" + "]}"; }
-
注解
-
Android中Junit单元测试
Android测试on android developer training: Android Testing
应用内UI测试 :Espresso
跨应用UI测试:UIAutomator
Android Testing Support Library
Unit and UI Testing in Android Studio
Unit and UI Testing in Android Studio 中文翻译
模拟android环境,提供android mocking方法 mockito
For Android UI Testing : Espresso 中文
-
okhttp源码分析
compileSdkVersion & buildToolsVersion & minSdkVersion & targetSdkVersion & support-xxx-Version
参考
JSON - Gson - okHttp - okHttp-doc - okhttp wiki - Retrofit - Dagger1 - Dagger2 - RxJava - RxAndroid - RxKotlin - RxPermissions - RxBinding - Picasso - okio - ButterKnife - Fabric - TestNG - Junit - AndroidStudio - Git - Ant - Maven - Gradle - Selenium - Jenkins - Square - Square GitHub - Android Developer - Google Github - ReactiveX - JakeWharton - JNI规范 - 沉浸式UI - Http2.0和Http1.1 - Gitlab - Confluence - Blog Piasy