Android警告错误搜集

来源:互联网 发布:最新淘宝装修教程视频 编辑:程序博客网 时间:2024/04/29 07:29


Eclipse提示:

50.overlaps the location of another project: 'xxxx'

new -> android project -> create project from exist source
出现如下错误信息:
Invalid project description
------>detail: ->>> xxxx(project path) overlaps the location of another project: 'xxxx'
最后发现时我把源码把放到了workspace目录下了的原因导致的。
eclipse插件在创建项目的时候需要在workspace目录下创建一个同名的目录。
但发现workspace目录下已存在对应的目录时,就会报上面的处错误信息了。

解决办法很简单,就是将源码包移到非workspace目录下

Android提示

26.Adbconnection Error:您的主机中的软件中止了一个已建立的连接

控制台DDMS不停的提示这个错误,产生这个错误的情景是:

手机系统是Android4.0.3,windows7 64bit,Eclipse打开了两个或两个以上,adb是32bit的。每次运行都会不停提示这个错误。在系统为2.3.4的Android系统运行没有这个错误现象。

解决办法(感谢作者):

问题出现的原因:这是ddms调用adb引发的.经过一番搜索,发现这是windows环境下, adb的一个限制,也可以说是bug.当手机上同时运行的进程数大于64,就会引发adb奔溃.更深层次的原因,就是windows APIWaitForMultipleObjects所支持的最大句柄数是MAXIMUM_WAIT_OBJECTS,64.

解决问题的办法:http://code.google.com/p/android/issues/detail?id=12141下载相应的adb.exe文件(下载处在下面的附件标志,不是页面上面的 downLoad ),用它替换掉你机器上的sdkplatform/tools目录下面的adb.exe。这样就可以完美解决问题。

25.export aborted because fatal lint errors were found

作者:Eping发布时间:May 14, 2012分类:Android

Eclipse打包时出现export aborted because fatal lint errors were found
 参照
http://stackoverflow.com/questions/8590908/android-export-aborted-because-fatal-error-were-founds
 解决办法:
 Project -> properties, find Android Lint Preferences, in top to right click configure workspace settings... -> unclick "Run full error check when exporting app", apply done.
ctrl + l delete line

 

24.jpush的一个java.lang.UnsatisfiedLinkError: Couldn't load jpush: findLibrary returned null

不知这是什么原因?问题出在JPushInterface.init(this);

问题已解决,原因是libs目录下多了一个armeabi-v7a文件夹,而这个文件夹下面没有libjpush.so,
我复制进去一份,运行。OK没问题了。

 

23.java.lang.RuntimeException: Canvas: trying to use a recycled bitmapandroid.graphics.Bitmap@2b004ab8

 E/AndroidRuntime(14016):
java.lang.RuntimeException:
Canvas: trying to use a recycled bitmap android.graphics.Bitmap@2b004ab8

回收时机不当造成的错误

22.java.net.ConnectException: 42.121.237.116/42.121.237.116:80 -
Network is unreachable

无法访问

21.java.lang.IllegalArgumentException: bitmap size exceeds 32bits

E/AndroidRuntime(4113): Caused by:

Matrix matrix = new Matrix();
//   matrix.setRotate(degree,width,height);
//   matrix.setRotate(degree);
   matrix.postScale(newWidth, newHeight);
   
   newbmp = Bitmap.createBitmap(bmp, 0, 0, width, height, matrix, true);
使用Matrix缩小图片时产生错误。postScale()方法里面的参数是新宽(高)和旧宽(高)的比值。而不是新的宽高。

bitmap所占内存的大小取决于尺寸和每个像素占的字节数。像素有几个参数在Bitmap.Config类里面有四个常量即是。不同的常量会占用不同数量的字节。

20.上传图片产生java.net.SocketException: Broken pipe

上传图片出错

19. java.lang.OutOfMemoryError: bitmap size exceeds VM budget

1280000-byte external allocation too large for this process.

VM won't let us allocate 1280000 bytes

 E/dalvikvm-heap(10866): 1440000-byte external allocation too large for this process.
 E/GraphicsJNI(10866): VM won't let us allocate 1440000 bytes
 E/AndroidRuntime(10866): java.lang.OutOfMemoryError: bitmap size exceeds VM budget

编写一个应用程序用来从网络加载图片并显示,结果图片数量一多,出了这么个错误。

7990272bytes计算了一下这个值发现是7M多,难怪崩溃,原以为700多kb。发现手机拍摄的照片的长宽分别是3000多和2000多,在没改变尺寸的时候很容易出现这样的崩溃提示。

1.Bitmap.Options进行了图片的压缩,解决了图片过大容易OutofMemory的错误

2.在适当的时机对bitmap进行回收

18.MainActivity has leaked window view@40602988 that was originally added here

添加PopupWindow显示后,按返回键出了这个错。override  onkeydown方法或许解决问题。

17.android.content.res.Resources$NotFoundException

使用PopupWindow在用LayoutInflater   inflate()方法时候,第一个参数传递一个XML resource,传递了一个LinearLayout的id出了这个错无。改成XML文件名就ok了。

16.android.view.WindowManager$BadTokenException: Unable to add window

I'm having trouble getting an alert dialog to show inside of a Tab Activity. My app will force close every time I try and get the alert dialog to show

AlertDialog在TabActivity中显示出的错误。

解决方法:

用AlertDialog.Builder builder = new AlertDialog.Builder(this.getParent()); 代替 AlertDialog.Builder builder = new AlertDialog.Builder(this);

详情请参考下面链接。

http://stackoverflow.com/questions/5690069/android-development-alertdialog-showing-inside-of-tab-activity

15.audioflinger could not create track status -22

出现这个问题的原因是SoundPool对象调用play方法的时候最后一个参数的值取的太大了。合理范围是0.5到2

14.SoundPool的sample 1 not READY

因为未完成加载就播放了,应该调用

sp.setOnLoadCompleteListener(new OnLoadCompleteListener(){            @Override            public void onLoadComplete(SoundPool arg0, int arg1, int arg2) {                sp.play(spload, 1, 1, 1, 1, 1);            }});

 

13.AudioPolicyManagerBase error unknown stream type

音频录制播放程序正常运行,但是logcat出现了这个提示,从网上搜了一下,有人说set the audio stream as STREAM_MUSIC的原因,但也说出个太多所以然感觉。参考:http://stackoverflow.com/questions/6895513/audiopolicymanagerbase-error

12.no selected voice recognition service

手机语音转文字的时候,给了一个这种提示,程序没有正确运行。不知道什么原因

11.Error creating AudioRecord instance: initialization check failed.

录音程序一开始就崩溃了。

10.java.lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord

原因很简单,没有添加权限<uses-permission android:name="android.permission.RECORD_AUDIO"/>

9.Caused by: android.content.ReceiverCallNotAllowedException: IntentReceiver components are not allowed to bind to services
学习了TTS(Text To Speech)以后想在BroadcastReceiver里面使用,当收到一个
广播以后,用声音给出提示,多炫的功能啊。但是实际测试的时候报了这个错。有待研究。

8.Caused by: java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'

在Activity中继承了ListActivity本以为不需要xml布局文件了,但是视频教程上还是用了xml布局,由于我的ListView id

不是 android:id="@id/android:list"所以报了这个错误。

7.close() was never explicitly called on database

onDestroy的时候调用close()方法

6.No resource identifier found for attribute 'parentActivityName' in package 'android'

android:parentActivityName appears first in Android 4.1 (API level 16). You need to have the latest 4.1 SDK to compile this.

5. ellipsis failed line number does not match 2 1
TextView中设置了android:singleLine = "true" android:ellipsize = "end"

在settext的时候出现了上述的错误,把android:singleLine = "true"删除掉,就没有这个错误了。

错误原因:文字内容中有空格。不过没有尝试在没有空格的情况,是否没有这个错误!

解决办法:

为了只显示一行可以用这两个属性android:inputType="text" android:maxLines="1"。不过没有那三个省略号了

4.Android文件下载完成后出现java.io.IOException: unexpected end of stream

文件下载成功了,可以正常使用但是却出现了这个异常,不知道怎么回事?
代码来源于stackoverflow.com

[java] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. <strong>public void run() {  
  2.    try {  
  3.     URL downurl = new URL(url);  
  4.     URLConnection connection =  downurl.openConnection();  
  5.     connection.connect();  
  6.     int fileLength = connection.getContentLength();//Returns the value of the content-length header field  
  7.     InputStream ins = new BufferedInputStream(downurl.openStream());  
  8.     OutputStream ous = new FileOutputStream("/sdcard/adown.wma");  
  9.     byte[] buf = new byte[1024];long total = 0;int count;  
  10.     while((count = ins.read(buf)) != -1){// logcat提示问题出现在这里  
  11.      total += count;  
  12.      int p = (int)(total * 100 / fileLength);  
  13.      handler.sendEmptyMessage(p);  
  14.      ous.write(buf, 0, count);  
  15.     }  
  16.     ous.flush();ous.close();ins.close();  
  17.   }</strong>  


That exception is thrown by FixedLengthInputStream when the expected number of bytes (usually set in the content-length header of the response) is larger than the actual data in the response. Check that the content-length header is correct. (If you're supplying your own value for the content length, make sure it is correct.)

错误原因:固定长度输入流当期望的字节数大于实际响应返回的字节数,就会抛出这个异常。但是在循环读取的时候也有读取字节数小于1024的情况,为什么这时候不异常,读到最后就异常呢?另外在代码中无需使用BufferInputStream,因为下面已经自定义了一个1024字节的缓存,这样就双缓存了,多此一举。ins = downurl.openStream();即可。

 

 

3.No resource identifier found for attribute 'xlargeScreens' in package 'android'

错误详情:

错误原因:错误出现在AndroidManifest.xml文件中supports-screens标记中,原因是xlargeScreens属性在API9(Android2.3)中才支持

解决办法:将Android2.2 remove,添加Android2.3即可解决

2.View not attached to window manager

错误详情:

01-28 16:36:40.236: E/AndroidRuntime(2763): java.lang.IllegalArgumentException: View not attached to window manager

错误原因:这个错误是在AsyncTask中的onPostExecute()方法中ProgressDialog.dismiss()的时候发生的。

解决办法:来自stackoverflow.com感谢贡献者

<code style="border-width: 0px; margin: 0px; padding: 0px; font-family: Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif; font-size: 14px; vertical-align: baseline; background-color: rgb(238, 238, 238);"><span class="lit" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">@Override</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"></span><span class="kwd" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">protected</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="kwd" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">void</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> onPostExecute</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">(</span><span class="typ" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(43, 145, 175); font-size: 14px; vertical-align: baseline; background-color: transparent;">MyResult</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> result</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">)</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">{</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">    </span><span class="kwd" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">try</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">{</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">        dialog</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">.</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">dismiss</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">();</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">        dialog </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">=</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="kwd" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">null</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">;</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">    </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">}</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="kwd" style="border-width: 0px; margin: 0px; padding: 0px; font-size: 14px; vertical-align: baseline; background-color: transparent;">catch</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">(</span><span class="typ" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(43, 145, 175); font-size: 14px; vertical-align: baseline; background-color: transparent;">Exception</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> e</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">)</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"> </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">{</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">        </span><span class="com" style="border-width: 0px; margin: 0px; padding: 0px; color: gray; font-size: 14px; vertical-align: baseline; background-color: transparent;">// nothing</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">    </span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">}</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">    finish</span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">();</span><span class="pln" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;"></span><span class="pun" style="border-width: 0px; margin: 0px; padding: 0px; color: rgb(0, 0, 0); font-size: 14px; vertical-align: baseline; background-color: transparent;">}</span></code>

 

1.Exported servicedoes not require permission警告

很久没写过应用了,今天写一个Service时,在manifest文件的<service>标签发现了这个警告 

[java] view plaincopyprint?
  1. <service  
  2.      
  3.     android:name="SendService">  
  4.     <intent-filter>  
  5.         <action android:name="com.oem.OEMSendService.SENDMAIL" />  
  6.     </intent-filter>  
  7.       
  8. </service>  


查了下api,终于发现一些端倪

原因:这是一个可以被外部访问的service,需要使用权限来限制外部访问

解决方法:

1.添加

android:exported="false"

这种方法是限制外部访问,自然不需要权限了

2.声明权限

先在<manifest>标签下加入

<permission android:protectionLevel="normal" android:name="oem.permission.SENDMAIL"></permission>

然后在<service>标签下

android:permission="oem.permission.SENDMAIL"

0 0
原创粉丝点击