文档章节

Android 导入项目时出现的各类错误(红色感叹号)

峰易
 峰易
发布于 2015/02/05 17:39
字数 1573
阅读 116
收藏 0

听云性能监测产品Ap

如果发现导入工程的时候,出现”No projects are found to import” 的提示,首先查看项目目录中是否有隐藏文件.project,还有目录结构也还要有一个隐藏文件.classpath, 如果没有的解决办法。

方法1:最直接的操作,可以把其它项目的.project, .classpath文件拷贝过来,修改相应的地方则可。
1).project文件只需要修改<name>AboxTVExchange</name>这个项目名称则可
2) .classpath文件通常不用改,内容如下:
<?xml version=”1.0″ encoding=”UTF-8″?>

<classpath>

<classpathentry kind=”src” path=”src”/>

<classpathentry kind=”src” path=”gen”/>

<classpathentry kind=”con” path=”com.android.ide.eclipse.adt.ANDROID_FRAMEWORK”/>

<classpathentry kind=”output” path=”bin”/>

</classpath>

kind= “… “是指这个目录在project中的类型。kind= “src “为源文件目录,
这个目录下的文件会被编译器编译.   kind= “output “是java文件编译输出
目录,src目录下的文件会编译到这个目录下。

当修改项目属性-> java   build   path时这个文件会被自动修改

方法2:将源码包移到非workspace目录下,然后new -> android project -> create project from exist source

添加写 工程名称则可
注意如果不移到非workspace目录下, 出现如下错误信息:

Invalid project description
——>detail: ->>> xxxx(project path) overlaps the location of another project: ‘xxxx’
eclipse插件在创建项目的时候需要在workspace目录下创建一个同名的目录。
但发现workspace目录下已存在对应的目录时,就会报上面的处错误信息了

1、当import一个新的android项目时,项目名称上出现一个红色的感叹号,程序不能运行。

原因:工程中classpath中指向的包路径错误。

解决方法:在项目名称上点右键选择Properties,然后选择Java Bulid Path中的libraries选项,其中出现红色x号的路径为错误路径,删除之后,通过Add External Jars添加正确路径,点击确定之后,在Package Explorer中刷新一下。

2、当点击Eclipse中的Properties中的Android选项时,出现“the currently displayed page contains invalid values”。

原因:项目丢失了default.properties文件所致。

解决方法:从其他项目中重新拷贝一个default.properties文件,并修改文件中的target值。或者,将项目根目录下的project.properties改名为default.properties。

3、引入一个新的项目后,丢失android.jar文件。

解决方法:在项目名称上点右键,选择Properties,再选择Android,再在其中选择一个project build target,点确定之后,如还有问题,尝试在项目名称上点右键,然后选择Android Tools,再点 Fix Project properties。

4、出现leak window错误。

原因:Android的每一个Activity都有个WindowManager窗体管理器,同样,构建在某个Activity之上的对话框、PopupWindow也有相应的WindowManager窗体管理器。因为对话框、PopupWindown不能脱离Activity而单独存在着,所以当某个Dialog或者某个PopupWindow正在显示的时候我们去finish()了承载该Dialog(或PopupWindow)的Activity时,就会抛Window Leaked异常了,因为这个Dialog(或PopupWindow)的WindowManager已经没有谁可以附属了,所以它的窗体管理器已经泄漏了。
解决方法:关闭(finish)某个Activity前,要确保附属在上面的Dialog或PopupWindow已经关闭(dismiss)了。
   

@Override
     public void onPause(){
        super.onPause();
        if(pw != null) {
             pw.dismiss();
        }
     }

参考:  http://blog.csdn.net/andy_android/article/details/7304761

5、Eclipse中显示行号

在代码编写区的靠近左侧边框处,点右键选择Show Line Numbers,即可显示行号。

6、在使用ImageView的setImageResource(int res id)方法时遇到一个java.lang.OutOfMemoryError:bitmap size exceeds VM budget错误。

原因:图片占用的内存超出了系统分配的最大内存限制,导致内存溢出。

解决方法:使用BitmapFactory的带有Options参数的方法解析图片资源,具体如代码:

<p></p><pre name=”code”>BitmapFactoty.options opts = new BitmapFactory.Options();  
opts.inSampleSize = 4;  
Bitmap bitmap = BitmapFactory.decodeResource(Resources res, int   id,opts);

当然当bitmap不用的时候,应该强制回收一下,具体如下:

很多时候我们学习android回去书店买一些书籍,而这些书籍为了方便大家理解代码,通常都会把这些教学用到的案例的源代码放在光碟中供学习者使用,我们可以直接用eclipse导入现有的项目来看看代码,也可以运行代码看看结果如何,但是导入的时候经常会出现代码报错,使得这个项目无法运行,在网上查了好多方法,最后有一个方法我试过解决这类问题的效果不错,就是讲现有代码拷贝到eclipse的workspace文件夹目录下,然后导入,ctrl+shift+o加入包,一般会出现project has no project.properties. file!edit the project properties to set one,然后这个错误最快捷的解决办法我认为是新建一个空白项目,什么都不写,然后保存,讲其文件夹里面的project properties文件拷贝到现有项目的根目录下,然后重新打开eclipse,打开这个项目,这个时候一般会出现R.java报错,关闭eclipse,直接找到这个R.java,删除,然后再次打开eclipse,打开这个项目,就可以了。
当然也会有另外一种情况就是出现android reguies compiler compliance level 5.0 or 6.0.Found 1.7 instead please use android tools ——Fix project properties,按照这个英文提示,将java compiler的java版本改成1.6,重启项目即可。

这个主要是导入项目的属性文件中的sdk版本与当前开发环境的sdk版本不同,在这里只需要稍微修改一
下项目的属性文件就可以,在android项目的default.properties 中的修改target的值,如果是2.1版本就将target的值改为android 7, 如果开发环境是2.3版本,就将target改为android 9,总之这个值与使用的android sdk版本的关,这个修改完后,右键点击项目选择 Android Tools->Fix Project Properties,这时你会看到项目所引用的android.jar已经自动导入到项目中。或者修改完target的值后,只要保存一下就可以成功。

© 著作权归作者所有

峰易
粉丝 1
博文 16
码字总数 13133
作品 0
杭州
程序员
私信 提问
android和java中常见 Exception

1, 常见的nullpointerexception,在调式程序中最常见是空指针异常了,这个是一般是对象实例化为null, 比如在组件的实例化和class对象实例化的时候, 声明 TextView mTestTV; 没有findViewByI...

dominic69
2015/03/19
76
0
Android studio 下的svn配置使用

一、Android Studio配置SVN Android Studio关联配置SVN很简单,在Settings里面,找到Version Control->Subversion;在这个页面的控制面板中的General中将Use command line client打勾勾选上,...

让代码飞一会
2015/11/05
4.5K
5
Phonegap3.4 环境搭建及新建项目

一、环境准备 1、到这里安装Node.js。 2、到这里下载Adroid ADT Bundle for Windows,下载后解压,我的放在:F:MobileDevadt-bundle-windows-x86-20131030。打开eclipse,安装最新的Android...

gogoblue
2014/04/12
0
0
Eclipse新建项目报错

使用Eclipse新建项目时,minSdkVersion="8",targetSdkVersion="19". 自动生成appcompat v7.但是依赖包报错,项目红色感叹号。更加不可理解的是提示 D:\DailyStudy\Android\NDKProject\appco......

wolfbigbig
2016/03/01
326
2
解决build path errors

新建一个eclipse-android项目后,如test2,从其它项目中拷贝若干个包到test2中, 在编译时总会出现以下错误: ?主要看第三条:The project cannot be built until build path errors are res...

中华大吉
2012/03/15
203
0

没有更多内容

加载失败,请刷新页面

加载更多

cleanLastUpdated.bat

@echo offrem create by AnXiaole rem 这里写你的仓库路径set REPOSITORY_PATH=C:\Users\AnXiaole\.m2\repositoryrem 正在搜索...for /f "delims=" %%i in ('dir /b /s "%REPO......

安小乐
15分钟前
3
0
操作放大器的用法是什么?

  有区别   1、单级放大的倍数比较有限,一般在100倍以下。放大倍数很大的话,负反馈就比较浅,对于放大倍数的稳定性不利。假如需要放大倍数更高,就不得不动用多级放大电路了。单级放大...

仙溪
17分钟前
2
0
c++ 上传文件 curl

bool uploadFile(std::string url, std::string file, std::string auth) { boost::filesystem::path p(file); CURL *curl; CURLcode res; struct curl_httppost *for......

青黑
23分钟前
2
0
冒泡与插入排序的代码实现

// 冒泡排序,a 表示数组,n 表示数组大小public void bubbleSort(int[] a, int n) { if (n <= 1) return; for (int i = 0; i < n; ++i) { // 提前退出冒泡循环的标志位 ...

无名氏的程序员
26分钟前
3
0
centos7.6 +mhvtl1.6安装

以前的mhvtl都是在centos6.x,5.x上安装的mhvtl以前版本为1.4,现在最新的1.6出来,可以安装在centos7.6上,下面是安装过程: 1.安装基础包 centos7.6只要能上外网,默认是配置了yun源的,这些...

突突突酱
28分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部