![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Android开发问题记录
记录Android开发过程中的问题
Huang-Lin
工欲善其事,必先利其器
展开
-
解决--CRLF will be replaced by LF
我用git commit提交代码时报了这个警告,我用的是linux环境,gitconfig中关于crlf的配置为 [core] autocrlf = input safecrlf = true editor = vim autocrlf=input,表示在add代码时,会把所有的CRLF转换成LF,检出时不转换。safecrlf=true,表示把CRLF转换成L原创 2017-07-02 21:19:54 · 832 阅读 · 0 评论 -
解决-Ubuntu安装wine时停在"正在设定ttf-mscorefonts-installer"
解决办法:用tab键选中确定,然后按enter键就可以继续了。原创 2018-04-23 14:14:42 · 3819 阅读 · 0 评论 -
解决-使用OpenCSV读取文件时报错java.lang.NoClassDefFoundError
最近有个需求,需要将excel中的内容导入到数据库中。由于我们的excel内容不包含公式等,只是文字信息,采用csv格式的会更方便。在网上查找到目前比较好的Java CSV读写库是OpenCSV,于是就开始撸代码了。 InputStream inputStream = applicationContext.getAssets().open("metro_data2.c...原创 2018-04-19 11:36:38 · 2717 阅读 · 0 评论 -
解决-Gradle: build failed to resolve aar library dependency
很多SDK都会以aar形式提供给我们。aar包会放在libs下面,然后在build.gradle文件里面加上下面这条语句将aar包导入到项目中。 $ implementation(name: 'aar包的名字', ext: 'aar')这个时候直接编译,可能会报错Error:Unable to resolve dependency for ':app@debug/compil...原创 2018-06-07 20:01:28 · 2686 阅读 · 0 评论 -
Android-如何exclude aar包中的某个jar包
记录一个简单便捷的exclude arr包中某个jar包的方式。举个例子:很多aar里面都会把gson这个jar包打进去,如果版本不对,项目编译就会报有重复的类之类的错误。解决办法之一就是把aar包里的Jar打包的时候给去掉,就像下面这这样。注意,要使用exclude module这种方式,直接使用exclude group方式没有效果。 implementation(name: '××...原创 2018-06-07 20:08:26 · 27285 阅读 · 5 评论 -
解决-Android: 跨应用AIDL调用时报错 java.lang.SecurityException: Binder invocation to an incorrect interface
产生原因如果服务端和客户端 AIDL文件的包名不一致。那么在调用AIDL的接口时就会报如下错误:06-27 17:12:10.293 6433-6433/cn.zzmetro E/AndroidRuntime: FATAL EXCEPTION: main Process: c...原创 2018-06-27 17:32:42 · 4151 阅读 · 2 评论 -
解决-Android: ListView.setSelection无效
现象我调用了ListView的setSelection方法,想让选择的Item显示在界面上。但是发现调用了却没有效果。产生原因在notifyDataSetChanged 后直接调用了ListView.setSelection(int position)方法解决办法不直接调用setSelection方法,而是post到队列中执行。如果ListView的刷新还没有完成,直接就调...原创 2018-07-31 17:45:20 · 1199 阅读 · 0 评论 -
解决-Android: io.objectbox.exception.DbException
产生步骤删除项目中原有的objectbox-moduls文件夹,重新编译项目之后,打包运行APP,报了如下错误io.objectbox.exception.DbException: Incoming entity ID 3:1254311430231230573 does not match existing UID 7915716400036480317产生原因分析由于我们...原创 2018-08-20 16:06:12 · 5996 阅读 · 15 评论 -
解决-Git: 第一次提交代码时报错“missing Change-Id”
现象使用gerrit做代码管理,如果是本地第一次提交代码到git仓库,会报以下错误。Counting objects: 6, done.Delta compression using up to 8 threads.Compressing objects: 100% (6/6), done.Writing objects: 100% (6/6), 517 bytes | 517.00...原创 2018-09-01 13:53:11 · 5460 阅读 · 1 评论 -
解决-Android: Application namespace for attribute app:items will be ignored.
现象最近在把项目重构为MVVM模式,编译的时候总是提示下面这个警告信息。虽然可以正常运行,但是每次编译都会出现。很烦人。Error:(22, 24) 警告: Application namespace for attribute app:items will be ignored.分析解决我们的代码是: @BindingAdapter("app:items") publi...原创 2018-10-23 17:19:53 · 5501 阅读 · 0 评论 -
解决-Android: No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux
出现步骤我在别的项目里用到了NDK的功能,再打开老的项目时,AndroidStudio提示该报错:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android原因分析及解决办法如果你用最新版的NDK编译过SO文件应该会有印象,官方现在支持的架构只有以下4种:ar...原创 2018-12-04 14:08:00 · 677 阅读 · 0 评论 -
关于科大讯飞AIUI SDK录音时长最长只有大概5s的问题
最近在用讯飞的SDK做语音方向的应用。讯飞有两套SDK,一套是MSC的,还有一套是AIUI的。考虑AIUI的SDK已经能实现我想要的功能,并且使用AIUI的SDK可以录音扔到服务器后直接返回语义处理的结果,比MSC减少了一次网络请求,同时还能减小apk包的大小,就没有用MSC的SDK。但是在开发过程中遇到了一个非常影响体验的问题:每一次录音,最多只能录5秒钟(大概24个字)就返回给我结果了...原创 2018-03-09 19:12:17 · 2769 阅读 · 0 评论 -
解决-Glide You cannot start a load for a destroyed activity
复现步骤 在Activity的onResume()中使用Glide加载一张背景图片,Glide.with(this).load(url).into(backgroundView) 然后快速的退出重进这个Activity,多操作几次,应用就Crash,并报java.lang.IllegalArgumentException: You cannot start a load for a destro原创 2017-10-19 12:12:58 · 1293 阅读 · 0 评论 -
解决-Glide加载CircleImageView失败
在用Glide加载自定义的圆形图片时,显示的是占位图 - 加载图片的代码Glide.with(context) .apply(new RequestOptions().placeHolder(resId)) .transition(withCrossfade()) .load(url) .into(mCircleImageView)产生原因 目前Glide不支原创 2017-10-18 20:35:12 · 1370 阅读 · 0 评论 -
解决-安卓分享二维码图片,微信长按无法识别。
项目中有个需求,是要将APP下载地址生成二维码,然后可以将二维码图片分享给微信好友。一开始用的是友盟的分享SDK,将图片分享到微信后,发现长按图片不会弹出“识别图中二维码”的选项。网上搜了下,友盟官网分享的issue里面有人也遇到了这个问题。有童鞋说用微信官方分享就OK。遂改用微信官网分享,发现仍然无法识别。最终在尝试的时候发现,生成二维码的图片大小为400*400像素无法识别,但是设置为50原创 2017-04-24 23:07:04 · 13816 阅读 · 4 评论 -
解决 Error inflating class android.support.v7.widget.ActionBarContainer
工程目录libs下面导入了support-v4的jar包,查看了下External Libraties里面,发现也有一个support-v4包。两个v4包冲突了,把libs下面的v4包删除就OK了。原创 2017-06-13 10:32:39 · 2409 阅读 · 0 评论 -
解决--Error:Execution failed for task ':xxxx:compileTestDebugAidl'.
解决–java.lang.RuntimeException: com.android.ide.common.process.ProcessException: Error while executing ‘/home/Android/Sdk/build-tools/23.0.2/aidl’原创 2017-06-27 09:52:46 · 2706 阅读 · 0 评论 -
解决-Glide使用DiskLruCache缓存Gif图失效
1.Glide2.DiskLruCache3.Gif原创 2017-08-17 17:57:58 · 2623 阅读 · 0 评论 -
解决--No instance field forceOldAnimationCode of type Z in class ImageDecodeOptions
7-18 15:11:20.297 14207-14358/com.example.huanglin.dynamicimagedemo E/AndroidRuntime: FATAL EXCEPTION: Thread-24794 Process: com.example.huanglin.dynamicimagedemo, PID: 14207 java.lang.NoSuchField原创 2017-07-18 15:22:52 · 1380 阅读 · 0 评论 -
解决--android.view.InflateException: Binary XML file line #9: Error inflating class <unknown>
频繁的退出重进一个页面时报了这个异常。这个报错是说在加载XML文件第9行时出现了异常。查看XML文件的第9行,发现是一个ImageView,里面设置了一张1080p的图片。再往下看日志,发现内存溢出了。解决办法:在代码中设置ImageView的background,并且在activity的onDestroy()方法中及时回收该bitmap。 07-26 19:58:39.793 W/Syste原创 2017-07-28 09:56:14 · 4479 阅读 · 0 评论 -
解决-adb pull failed remote permission denied
我的设备已经root。在用adb pull命令拷贝data/data下面的Cache文件到电脑上时,提示没有权限。先用chmod 777 file命令修改了权限,发现这样修改可以将file文件复制到电脑上。但是当有很多文件时,这个命令就不好用了。因此想了一个绕过的方法:先用 cp sourceDir targetDir 命令将cache下的文件复制到sdcard里,然后再用adb pull命令复制到原创 2017-08-07 11:36:12 · 14286 阅读 · 0 评论 -
解决-Cannot resolve symbol "GlideApp"
当我们要定制Glide的全局加载配置时,需要创建一个类继承AppGlideModule。然后使用GlideApp而不是Glide去加载图片。按照官方配置Glide Configuration配置好,当我MakeProject时,找不到GlideApp。也就是编译时没有生成该类。最后发现,我的项目里引用了butterknife8.0.1,而8.0.1版本的注解是用android-apt工具处理的,与a原创 2017-09-15 17:14:48 · 9077 阅读 · 1 评论 -
解决-Glide preload()的一个坑
通常为了让图片能够更快地加载出来,会给图片做预加载。Glide里预加载的函数为preload()。使用姿势:Glide.with(context).load(url).preload()奇怪的现象:如果还有一个地方也在使用预加载,比如我有一个Activity的background需要预加载,为了达到加载完成后将background显示出来的目的,需要这样使用:Glide.with(contex原创 2017-09-20 12:46:07 · 7614 阅读 · 2 评论 -
解决-Android: insufficient permissions for device error
问题设备连上电脑,安装APK时提示报错:com.android.ddmlib.AdbCommandRejectedException:insufficient permissions for device.Error while installing APK解决办法打开终端,关闭adb服务adb kill-server以root权限重新开启adb服务sudo adb s...原创 2019-02-18 15:20:20 · 447 阅读 · 0 评论