必须条件 如测试Google登录的条件: 手机具备翻墙能力 手机为Google手机或者安装Google Play service(各大应用市场搜索谷歌安装器) 应用签名配置正确 google-services.json为最新并放置在module目录下 引入Google Play Servic
问题描述 Glide在Activity或Fragment销毁destroy时报错: java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity 解决办法 使用Glide加载图片时判断con
问题描述 Glide加载https图片:https://futurestud.io/tutorials/glide-module-example-accepting-self-signed-https-certificates#0 Android 5.0以下Glide加载https图片报错: cl
问题描述 Glide加载https图片:https://futurestud.io/tutorials/glide-module-example-accepting-self-signed-https-certificates#0 OkHttp在Android 4.4及以下请求https报错: j
productFlavors productFlavors { defaultConfig { //versionNameSuffix 'default' } developTest { minSdkVersion 15
问题描述 Android 8.0下崩溃错误:Only fullscreen opaque activities can request orientation,即只有全屏不透明的Activity才可以设置方向 java.lang.RuntimeException: Unable to start
什么是 Monkey Monkey 是一个 Android 自动化测试小工具。主要用于Android 的压力测试,主要目的就是为了测试 App 是否会Crash。 Monkey 特点 顾名思义,Monkey就是猴子,Monkey测试,就像一只猴子,在电脑面前,乱敲键盘在测试。猴子什么都不懂,只知道
Android RecycleView添加HeaderView宽度不能撑满屏幕问题 作为HeaderView的根布局不可以使用LinearLayout,否则就会产生上述的问题 EditText设置inputType为密码不能生效问题 //设置密文时,需要同时设置TYPE_CLASS_TEXT才能生
添加多语言文件 在不同的 value文件夹下(例如value 、value-en、values-zh-rCN、values-zh-rTW、value-th 文件夹)添加不同语言的 string.xml 对于Android 7.0及以下版本 Android 7.0及以前版本,Configuration
错误日志 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/alibaba/android/arouter/routes/ARouter$$Group$$order_service; 路由无法跳转或者外部无法调用子模块向外部暴露的
ARouter是阿里巴巴开源的Android平台中对页面、服务提供路由功能的中间件,提倡的是简单且够用。 Github:https://github.com/alibaba/ARouter Google提供的原声路由主要是通过Intent,可以分成显示和隐式两种。显示的方案会导致类之间的直接依赖问
Android 26及以上:startActivity -> startActivityForResult -> mInstrumentation.execStartActivity -> ActivityManagerNative.getDefault().startActivi
DialogFragment.show显示的生命周期是:先执行show()方法,再执行onCreateView()方法,若有如下操作: mActivityDialogFragment.show(((FragmentActivity) mActivity).getSupportFragmentMana
遇到复杂的不规则列(即有的行显示的列数多,有的行显示的列数少,并且每列显示的内容页不一样)。对于这种需求在RecyclerView出来之前的解决方案,要么就是ListView中嵌套GirdView,要么就直接使用ScrollView,勉强可以实现此效果,但是这两种实现都有非常大的缺陷,即都不能进行i
解决思路主要是复写ViewPager中的dispatchTouchEvent函数,在分发之前记录事件,具体代码如下: (1)拦截dispatchTouchEvent事件 @Override public boolean dispatchTouchEvent(MotionEvent ev) {