一、当出现下面错误时候
08-21 03:43:16.679: E/AndroidRuntime(1087): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.fragment/com.example.fragment.MainActivity}: android.view.InflateException: Binary XML file line #5: Error inflating class fragment
确定是那个MainActivity.xml文件出了问题,就在第五行,我用的fragment,里面的一个class="com.sss.TitleFragment" 原来是这个写错了,
那个包名写错了,改了就好,而后再xml里面写时候要注意是<fragment/>第一个是小写,不是大写,要记住html
二、mTabWeixin.setOnClickListener((OnClickListener) this); 这样写会报错
08-21 04:06:16.920: E/AndroidRuntime(1274): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.fragment/com.example.fragment.MainActivity}: java.lang.ClassCastException: com.example.fragment.MainActivity cannot be cast to android.view.View$OnClickListener
后来改为mTabWeixin.setOnClickListener(new OnClickListener(){ @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
stopService(intent);
}});就能够了
三、 emulator: ERROR: This AVD's configuration is missing a kernel file!!
以博客形式解决java
四、emulator: ERROR: ANDROID_SDK_ROOT is undefinedandroid
以博客形式解决
5 、ADB not responding. If you'd like to retry, then please manually kill "adb.exe" and click 'Restart'git
以博客形式解决
六、android studio 里面修改sdk other setting default project ……
以博客形式解决github
七、CPU acceleration status: HAX kernel module is not installed!
解决方法:
以博客形式解决shell
1)打开sdk manager-》Extras,勾选Intel x86 Emulator Accelerator(HAXM installer),并点击
以博客形式解决json
install packages。windows
2)安装完后,进入api
/Users/username/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager,路径可能不一样
,以root权限对silent_install.sh加可执行权限,chmod +x silent_install.sh
3)运行,./silent_install.sh,就ok了服务器
8 、在andorid studio 出现了乱码
File-->setting-->Appearance-->name-->修改 就能够了,还觉得是电脑问题,找了半天才搞好
九、 Gradle project sync failed. Please fix your project and try again.
Error:failed to find Build Tools revision 23.0.0
<a href="install.build.tools">Install Build Tools 23.0.0 and sync project</a>
我把那个Build Tools revision 23.0.0拷贝到sdk里面的build-tools里面就能够了
十、当在学习binder的时候 客户端没有执行那个ServiceConnetion里面的链接的时候 报了空指针的错误,原来我没有在AndroidMainfest.xml配置文件写上<service android:name=""> 下次要注意,否则链接不到服务端.
十一、a android.intent.action.MAIN -c android.intent.category.LAUNCHER
不是主Activity启动的,因此会报错
十二、ViewHolder holder=null;
holder.img= (ImageView) convertView.findViewById(R.id.img);出现空指针异常
要这样写
ViewHolder holder=new ViewHolder();就不会报错了
13 android:support.v4.view.ViewPager 错了
android.support.v4.view.ViewPager
1四、Installation failed since the device possibly has stale dexed jars that don't match the current version (dexopt error). In order to proceed, you have to uninstall the existing application.
WARNING: Uninstalling will remove the application data!
Do you want to uninstall the existing application?
已运行就是这样,死活没办法,最后搞了一夜,终于找到了答案,AndroidStudio-> Build -> Clean Projects 而后等下面任务完成后,从新运行就能够了。
INSTALL_FAILED_INSUFFICIENT_STORAG
缘由:空间不够用
解决办法:
第一种办法:在反复安装android apk的时候,有的时候可能会遇到adb install错误,内容是:Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
这极可能是由于你在之前uninstall应用的时候,没有作完全,只是简单的rm /data/app/下面的apk文件了,一个补救的办法以下:
启动模拟器,而后进入菜单
settings->applications->mange
applications-> select the application->select "unistall".
这样就能完全删除了,而后再从新安装这个apk就没问题了
第二种办法:你用的是emulator?若是是的話能够在起emulator启动的时候加个参数 例:emulator -avd android22 -partition-size 200
表示內存大小为200M
最后我用eclipse也打开项目,一样仍是报这个install-failed insuffient storag
应该是手机内存不足了,而后我就把手机删掉一些程序就能够了
以博客形式解决
15 getActionBar获得的actionBar是空指针异常
解决办法
1 getActionBar()这个方法须要放在setContentView(args)以后
2 getActionBar()这个方法是在3.0以上版本才有的,因此在manifest清单文件中须要标注下
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="19" />
3 menifest清单文件中对应的该activity的主题设置
android:theme="@style/AppTheme.FullScreen"或者
android:theme="@android:style/Theme.NoTitleBar"
都须要取消,由于这样就没法找到actionBar
或者父类基类ACTIVITY中须要注释以下代码:
//requestWindowFeature(Window.FEATURE_NO_TITLE);
//getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
1六、java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'java.lang.Runtime
那是由于我在MainActivity里面继承了ListActivity,而后我在MainActivity里面经过R.id.listview 获得的listview和ListActivity里面冲突了
1七、java.lang.SecurityException: Permission denied (missing INTERNET permission?) even with adding this permission in android manifest
加上<uses-permission android:name="android.permission.INTERNET"/>
记住不是加上<uses-permission android:name="android.permission.internet"/>
否则也是无效的
1八、Error:Timeout waiting to lock buildscript class cache for settings file 'H:\android\ImageLoader\settings.gradle' (C:\Users\Think\.gradle\caches\2.4\scripts\settings_8kjkk683u0p1beph8uxo3q5nf\SettingsScript\buildscript). It is currently in use by another Gradle instance.
Owner PID: unknown
Our PID: 15396
Owner Operation: unknown
Our operation: Initialize cache
Lock file: C:\Users\Think\.gradle\caches\2.4\scripts\settings_8kjkk683u0p1beph8uxo3q5nf\SettingsScript\buildscript\cache.properties.lock
解决办法:找到红色标识部分文件而后删除文件。删除的时候会提示文件被占用。开打进程管理器把关于java的进程结束后,在Android Stuido中从新build就能够。
1九、Error:Could not run build action using Gradle installation 'C:\Program Files\Android\Android Studio\gradle\gradle-2.4'.
20、Error:(45, 0) Could not read script 'H:\android\ImageLoader\lib\gradle\maven_push.gradle' as it does not exist.
<a href="openFile">Open File</a>
解决办法:打开所导入库的build.gradle文件,将 apply from: ‘../maven_push.gradle’ 这行给注释掉,同步一下就ok。
2一、java.lang.IllegalStateException: ImageLoader must be init with configuration before using
imageLoader.init(ImageLoaderConfiguration.createDefault(MainActivity.this));
public ImageLoader imageLoader = ImageLoader.getInstance();
而后在Oncreate中添加imageLoader.init(ImageLoaderConfiguration.createDefault(this));
ImageLoader.getInstance().init(ImageLoaderConfiguration.createDefault(MainActivity.this));
22 Unable to find the layout for Action Bar. Consider updating to a more recent version of appcompat, or switch the rendering library in the IDE down to API 21
下载android 21放到platforms里面就能够
23 Can't create handler inside thread that has not called Looper.prepare()
没有在主线程里面建立Handler
应该加上
//初始化Looper对象
Looper.prepare();
handler1=new Handler(){
@Overide
public void handleMessge(Message msg){
}
};
//启动Looper
Looper.loop();
24 java.lang.NullPointerException
at com.example.administrator.view.MainActivity$1.handleMessage(MainActivity.java:41)
原来是我本身R.id.img 搞错了 应该是R.id.imageView
2五、Target device: xiaomi-mi_2-1fd295bc
Uploading file
local path: E:\android-client\build\outputs\apk\android-client-arm-debug.apk
remote path: /data/local/tmp/com.hztcl.quickshopping.ui
Installing com.hztcl.quickshopping.ui
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.hztcl.quickshopping.ui"
pkg: /data/local/tmp/com.hztcl.quickshopping.ui
Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE]
重新启动手机
2六、Android gradle build时出现Duplicate resources错误
项目由eclipse转到Android studio时, 在eclipse中编译正常, 用gradle编译出出现Duplicate resources报错, 项目中有部分字符串资源存在重复定义, 能不能在不删除重复定义文件的状况下, 使gradle能正常编译不报错
27 android6.0 PullToRefreshWebView中的FloatMath.floor()不能用了如何替换
Android6.0使用 Math.floor 代替 FloatMath.floor 便可;
28 Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_60\bin\java.exe'' finished with non-zero exit value 2
(1)若是是初搭环境,运行失败。多是安装包路径有空格的缘由。
(2)若是之前运行项目正常,楼主标红部分,我不知道问题出在哪。但只看问题标题的话,有的是由于项目路径为汉字的问题(我今天就遇到了,把项目换个全英文的路径就能够了)
删掉v4包就好了 有相同包了,注意finished这句话,删除包,
若是还不行的话加上multiDex的配置
defaultConfig {
applicationId "com.kuyu.kuxianghui"
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
multiDexEnabled true
}
就是下面的这段代码结局个人问题
multiDexEnabled true
29java.lang.IllegalArgumentException: Wrong arguments were passed to displayImage() method (ImageView reference must not be null)
一看到这个错误,头脑里面第一条件反射就是参数传错了,可是个人确传了URL和imageView ,url有值,可是imageView那确定没有值,原来我只把imageView定义了,没有初始化,没有findviewById(R.id.imageView);下次要记得
30 org.json.JSONException: End of input at character 0 of
10-23 21:28:11.288 7528-7528/com.kuyu.kuxianghui I/treeMapToString﹕ 199cf7bdf2dd4ea0da93cb53558e79a7
10-23 21:28:11.288 7528-7528/com.kuyu.kuxianghui D/MD5Util﹕ BAC23EF0AEDF28F7D4CE38A9D620A75D
10-23 21:28:11.298 7528-7528/com.kuyu.kuxianghui I/postUrl﹕ http://10.68.5.30/api/distributorCall?jsonParam={"sign":"BAC23EF0AEDF28F7D4CE38A9D620A75D","map":{},"openType":"getCaptcha"}
10-23 21:28:11.298 7528-7528/com.kuyu.kuxianghui I/kuxianghui﹕ url:http://10.68.5.30/api/distributorCall?jsonParam={"sign":"BAC23EF0AEDF28F7D4CE38A9D620A75D","map":{},"openType":"getCaptcha"}
10-23 21:28:11.318 7528-10533/com.kuyu.kuxianghui I/kuxianghui﹕ post Params:{jsonParam={"sign":"BAC23EF0AEDF28F7D4CE38A9D620A75D","map":{},"openType":"getCaptcha"}}
10-23 21:28:11.338 7528-7528/com.kuyu.kuxianghui I/errorMessage﹕ org.json.JSONException: End of input at character 0 of
原来我把opeType写成了openType 该死的 找了很久才找到错误
31
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
at com.android.dx.command.dexer.Main.main(Main.java:245)
UNEXPECTED TOP-LEVEL EXCEPTION:
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.Main.main(Main.java:106)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_60\bin\java.exe'' finished with non-zero exit value 2
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
com.android.dex.DexException: Multiple dex files define Lcom/tencent/a/a/a/a/a;
解决办法
defaultConfig {
applicationId "com.kuyu.kuxianghui"
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
multiDexEnabled true
}
就是下面这行代码起到了做用,惊叹吧
multiDexEnabled true
32
res\drawable-mdpi-v4\guide_1.png:0: error: Resource entry guide_1 is already defined.
res\drawable-mdpi-v4\guide_1.jpg:0: Originally defined here.
Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'E:\Android\sdk\build-tools\23.0.0\aapt.exe'' finished with non-zero exit value 1
资源一开始就有
解决办法
build ->clean project
33
为何
<pre name="code" class="html">Toast.makeText(RegisterActivity.this, "注册成功", Toast.LENGTH_SHORT)
没反应
我插,我在最后忘记写.show()了,妈的,下次必定要记得,忘记了要打死本身。
3四、
java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
原来是我写的
Toast.makeText(RegisterActivity.this, "注册成功", Toast.LENGTH_SHORT).show()
没有放在ui线程里面,因此出现这个异常,用handler去处理而后再调用就能够。
3五、java.net.SocketTimeoutException: Read timed out
缘由:客户端没有在限定的时间内将数据发送给服务器,服务器为了保证服务性能,认定那个链接已经失效,因此出现上述异常。
解决办法:增大客户端的超时时间。
System.setProperty("sun.net.client.defaultConnectTimeout", String
.valueOf(10000));// (单位:毫秒)
System.setProperty("sun.net.client.defaultReadTimeout", String
.valueOf(10000)); // (单位:毫秒)
3六、android:showAsAction="never"在as里面的menu.xml里面不能够用
解决办法:改为 app:showAsAction="never"就能够了
3七、当咱们把github里面的模块拷贝到项目的时候,发现那个导入的包 前面是白色 后面是红色 ,一直找不到缘由,后来终于找到了
解决办法:
在app build.gradle里面忘记添加 compile project(':mplib')
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.0.0'
compile project(':mplib')
}
3八、
Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Users\Think\AppData\Local\Android\sdk\build-tools\23.0.0\aapt.exe'' finished with non-zero exit value 1
资源文件错了,不能识别pd
3九、
java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.CALL dat=tel:xxxxxxxxxxx cmp=com.android.phone/.OutgoingCallBroadcaster } from ProcessRecord{43557be8 8101:com.kuyu.kuyucontact/u0a81} (pid=8101, uid=10081) requires android.permission.CALL_PHONE
分析缘由:
因为个人应用要拨打电话,因此须要配置相应的权限信息
解决办法:
须要在(功能清单文件中)AndroiManifest.xml Application外添加<uses-permission android:name="android.permission.CALL_PHONE"/>
40、今天程序报了这个异常
Unable to start activity ComponentInfo{com.kuyu.kuyucontact/com.kuyu.kuyucontact.ui.UserInfoActivity}: java.lang.NullPointerException
空指针啊,没有拿到数据,我还觉得是个人bundle出了问题,妈的,原来findViewById(R.id.tv_name),tv_name 这个id在其它地方命名了,因此才会出现
Unable to start activity {.ui.UserInfoActivity}这个异常啊,麻痹的,之后切记。
41
have you declared this activity in your AndroidManifest.xml
没有注册Activity
42
duplicate registration for activity
重复注册了Activity,认真检查哪一个地方已经注册了
43
android.view.InflateException: Binary XML file line #13: Error inflating class com.wingsofts.simplelinechart.SimpleLineChart
自定义的时候,上面那个包名写错了
44
用eclipse 开发 android应用时出现个错误,“your project contains error(s),please fix them before running your application”
解决办法:
使用eclipse写好Android的代码,代码没有报错。想在AVD中运行测试时,老是会弹出错误框,提示信息为:
“Your project contains error(s),please fix them before running your application.”
无论是重启AVD 重启eclipse 甚至建立一个新的Android工程项目都不能运行
上网查找缘由,有几种可能:
1.在不一样的电脑下开发,并且文件存放路径不一样,错误的主要缘由是 “.classpath” 文件的载三方类库包路径错误。
2.也多是你的SDK版本不存在或者没有。
3.编译的class、apk文件有问题:执行清除一下就能够了。Project→Clean→Clena Projects Selected Below 选择你出错的项目就能够了。
4.有可能就是最重要的这一点:
在Program提示框中会提示:
“Error generating final archive: Debug Certificate expired on 12-7-25 下午7:52”
缘由分析:
android要求全部的程序必须有签名,不然就不会安装该程序。在咱们开发过程当中,adt使用debug keystore,在 preference->android->buid中设置。debug的keystore默认有效期为一年,若是你是从一年前开始完android程序,那么在一年后导入这个app的时候极可能出现debug keystore过时,致使你没法生成apk文件。
此时你只要删除debug keystore就行,系统又会为你生成有效期为一年的私钥。
解决方法:
进入C:\Documents and Settings\Administrator\.android 删除路径下的debug.keystore及ddms.cfg。
(不一样环境下的目录可能略有不一样,可在eclipse中查找此路径:Window->Preferences->Android->Build下 Default debug keystore)
我出错的缘由是第4种,我直接删除了.android 文件,成功解决问题
45
[2016-02-20 09:38:37 - aWork] Unable to resolve target 'android-22'
解决办法:
出现 “Unable to resolve target 'android-XX'”,解决办法进入你的android project跟目录,找到此文件 project.properties(或default.properties),找到target=android-XX出现此错是由于你的android环境跟此处不对应,那么,你只须要将此处的android版本改为你机器上配置的android版本便可,例如target=android-15
进入activity类中,一些重写的方法的地方老是出现 "Remove @Overrideannotation",解决办法:出现此错误的缘由主要是 编译器 版本的 的问题,Java 1.5的编译器默认对父类的方法进行覆盖,采用@Override进行说明;但1.6已经扩展到对接口的方法;因此若是仍是以Java 1.5的编译器来编译的话,会出现错误,默认是java1.5的,你须要将它设置到1.6打开你的eclipse,进入 window->Preferences->Java->Compiler 把它改成 Java1.6便可
46 把项目导入eclipse出现乱码问题
解决办法:
1.编码不对
a.对某文件或某工程更改编码:
鼠标移到工程名或文件名,右键->Properties->Resource->Text file enCoding ->更改编码(GBK、UTF-8等)->Apply->OK退出
b.修改整个命名空间的编码
eclipse菜单栏->Window->Preferences(preferences通常就是修改各类eclipse设置的地方)->General->Workspace->text file encoding ->更改编码(GBK、UTF-8等)->Apply->OK退出
c.修改某个特定类型的文件(如xml文件、java文件类型)的编码(不会受命名空间编码的影响)
eclipse菜单栏->Window->Preferences->General->Content types->在右视图中选在文件类型->在Default enCoding中选择语言->Update->Ok退出
注意:若下拉菜单栏里面没有你要的语言类型,能够本身用键盘打一个进去。若是没有改语言类型,eclipse天然会报错,没有报错就说明能够用改语言类型。
2.maven的问题
eclipse菜单栏->Window->Preferences->Maven->Installations->User Settings->导入maven的settings.xml文件->Refresh
可是目前maven为何会致使乱码不知道- -
3.两个工程不一样编码方式放到一个工做空间里面有可能会有冲突。能够尝试着别放到一个工做空间里面看看可不能够解决问题
4七、[2016-02-20 17:13:44 - aWork] ERROR: Application requires API version 21. Device API version is 16 (Android 4.1.1).
[2016-02-20 17:13:44 - aWork] Launch canceled!
解决办法:
缘由是应用程序的版本跟模拟器的版本不一致致使的。
解决方法:修改两个配置文件
1:在AndroidManifest.xml里, <uses-sdk android:minSdkVersion="8" />找到这一行,这行是表示要执行这个应用程序所须要的最低版本,把数字改为低于模拟器上面的版本。
2:在default.properties里target=android-14把target改成要运行模拟器的版本就OK了。
48 Failed to install*.apk on device '': timeout
解决办法:
前提:
1.adb shell是没问题,排除数据线
2.eclipse的ddms中是有设备的
3.模拟器安装N个程序是没问题的,排除程序问题
本身找到解决方法:
1.替换数据线
2.去掉延长线
3.修改windows-per-android-DDMS 5000改成10000,50000
4.工程文件clean
5.由于使用的是真机,因此不存在删掉C盘中的某些*.lock文件夹
天调试android,忽然报了这个错误,非常郁闷,
意思是:把程序安装到设备失败,超时了。
研究无果,一阵搜索,最后能够经过设置eclipse解决问题,
以下设置
在window->preferences->Android->DDMS->ADB connection time out (ms):
设置这一项,把值设高一些 我设置了1000000
49 adb logcat -v threadtime > xxx.log
C盘-》用户-》C里面
50 The connection to adb is down,a severe error
解决办法:adb kill-server
adb -startserver
51 判断游标是否为空
SQLite中的Cursor千万不能使用Cursor == null 来判断是否为空,即使Cursor中什么记录都没有,他也不会是空(已测试)。
判断是否为空的方法是 Cursor.getCount()这么一个简单的函数,若是是0,表示Cursor为空;若是非0,则表示Cursor不为空。
51 咱们用SimpleDateFormat 须要注意的问题
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日hh:mm");表示是12小时制
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH:mm");表示是24小时制
52 在相对布局里面 若是要把一个控件放在另外一个控件的左边 记得使用 android:layout_toLeftOf="@+id/scan_code_image"
53 android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 5
本身写游标的时候,明明须要循环便利游标,而我没有加上循环,因此就出现了这个问题
if(cursor != null) {
// 循环遍历cursor
while (cursor.moveToNext()) {
}
53 android.app.application cannot be case to package.ShotApplication
错在 AndroidManifest.xml里面
<application
android:name ="com.wang.capurescreen.ShotApplication"
我没有写name,因此错了,要记得加上
54 今天运行代码的时候出现了missingFormatArgumentException异常
缘由:
使用string.format("aaa%d, dsaa,""%d",a)
很明显多了一个d%.
匹配不正确 。
55 java.net.socketimeoutexception
设置超市时间短了,settimeout时间久点就能够了
56 stException: com.example.dexclassloaderactivity.MyApplication cannot be cast to android.app.Activity
缘由:我把在Android配置文件里面application里面的声明改到了activity里买去了,下次不要犯这个错误,写了applicaiion必定要记得写配置切记。--------------------- 做者:chenyu_insist 来源:CSDN 原文:https://blog.csdn.net/u011068702/article/details/48850639 版权声明:本文为博主原创文章,转载请附上博文连接!