发布于 2015-05-24 01:56:25 | 457 次阅读 | 评论: 1 | 来源: PHPERZ

这里有新鲜出炉的精品教程,程序狗速度看过来!

Android移动端操作系统

Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。


一、java.lang.OutOfMemoryError

  1. 对于 JAVA来说,虚拟机上用于显示图片的堆只有64MB,在安卓里,每一个应用大约只有16MB的内存(参考training/displaying- bitmaps里)。也就是说,一旦我们使用类似于Bitmap这样的类去加载一张图片,很有可能就会把这64MB的堆给占满了。此外,如果对象还存在一 个引用,这个对象仍然会存在于堆中,JAVA的垃圾回收机制是不会处理他们的。在这种情况下,你需要用一些工具去评估你的项目必须使用的图片到底需要多大 的堆空间(静态),然后去修改这个堆的大小,让它能够容纳你需要的图片。
  2. 不要使用类似于recycle()这样的方法,如1所说,这样的方法并不能改变这样的的错误(引用还在)
  3. 代码里可能有死循环,重复地创建对象实体
  4. 在能使用低像素图片时优先使用低像素照片,而且避免优先选择加载高像素图片(高像素图片占用内存显著多于低像素图片)
 

二、图片无法充满ImageView

这个解决办法其实蛮简单的,使用ImageView的setScaleType()方法,参数选择fitXY.。如果觉得这样会使图片变形,就是用centerCrop参数

三、RuntimeError:You cannot combine custom titles with other title features

这个错误是说,你不能混合使用多个标题风格,解决方法有下面几种:

  1. 所有标题风格的设置都在AndroidManifest上用android:theme=""设置,至于标题的风格就自己用XML实现好呗
  2. 在styles.xml里加入<item name="android:windowActionBar">false</item>,因为很多自定义标题栏的教程里面,都会有一个设置theme的语句是使用了windowActionBar的,通过把这个改为false就可以避免这样的冲突
  3. 在activity里已经设置了title的theme了,结果在tab里面又设置了其他的theme(例如ViewPager)
  4. 当项目中导入了多个包,可能包之间的AndroidManifest里对theme的设置是不一样的,这样也会导致这个错误
 

四、Jar mismatch! Fix your depedencies

这个错误多数出现在一个项目中导入了多个包时,主要原因是,可能不同的包使用的jar是不一样的。拿我来说:
 
我当时使用的library1、library2和项目本身的android-support-v4.jar,就出现了这个错误,说我有3个包,无法识别该用哪一个。解决办法就是把这三个包的这个jar都统一了,所以网上有这样的做法:
 
把library的jar都换成项目的jar,然后就好了。但是我觉得在StackOverflow上看到的另一个方法更好:
 
首 先对你的项目使用Android Tools里的Add Support  Library,然后把所有的android-support-v4.jar都去掉,每一个项目或者Library都在build path menu里add external jar或者在Project Properties->Android->Library->Add...里添加jar,这样就能保证包的统一了
 

五、ClassNotFoundException

 
这个错误可能是因为包没导入完全,可能是因为AndroidManifest上没写好要启动的类的名字
 

六.java.net.SocketException: Noroute to host

解决办法:关闭防火墙/网络有问题,重新连接 WIFI 或者检查网络端口。

七.Failed to install xxx.apk on device ‘xxxxxxxxx’: Unable to open sync connection!

java.io.IOException: Unable to open sync connection!

Launch canceled!

解决办法:一般是因为设备没连接好,确认手机打开了开发者模式,并且连接上电脑就可以

八.res\values\style.xml:44:error: Error retrieving parent for item: No resource found that matches the given name ‘android:WindowTitleBackground’

解决办法:把”android:WindowTitleBackground”>改为”*android:WindowTitleBackground”>

九.Caused by: android.view.InflateException: Binary XML file line #244: Error inflating class XXXX

解决办法:我在自定义控件或使用自定义控件时常常遇见这个问题,问题的根源在于没有正确地使用自定义控件/自定义控件需要某些必须的属性,而我们在初始化时没有为这个属性赋值,报这个错时需要回到源码分析,没有通用的解决办法

十.Failed to install *.apk on device ‘emulator-5554’: timeout

解决办法:出现这个问题一般是因为没有正确地关闭虚拟机,或者是虚拟机已经启动,却没有显示。我们可以删除对应的虚拟机目录下.lock文件,也可 以在window->preferences->Android->DDMS->ADB connection time out (ms),把值设置的大一些



最新网友评论  共有(1)条评论 发布评论 返回顶部
dsveymh 发布于2016-02-04 03:25:51
好的很,支持你!
支持(0)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务