当前位置:操作系统 > 安卓/Android >>

学习android(二)如何调试android应用源代码

为了学习android应用开发,学习源代码是最好的方式之一。于是我网上下载了一个源代码:MyContacts通讯录。打开eclipse,菜单使用import导入源代码,完毕后,工程出现错误。

         一.应用开发包报错,所有的import android.*;都报无发现该类库的错误。好吧,这个源代码不携带android的SDK,于是我点了工程,右键点Build Path,点Add External Archivees,在选择框找到我本地的android SDK的lib库目录D:\Program Files\Android\android-sdk\platforms\android-10的android.jar,选到jar文件确定导入,工程的应用包错误立马消失。


         二.工程包的错误全部消失,但是工程还是有错误的叉叉,想运行下试试,提示有error不能运行。好吧,不关应用文件的问题,那就关整个项目的问题,估计是哪里的信息尚不契合,有可能是版本信息?

打开工程的project.properties,根据QQ群群友的说明,找到整个工程使用的sdk版本信息是target=android-5,这个明显跟我昨天安装本地SDK不对应了,看看目录就知道我本地是android-10,于是我将project.properties文件的target=android-5改成target=android-10,刷新,一下错误消失。


         三.继续运行,还是报错:conversion to dalvik format failed with error 1,把这信息扔到网上搜索,说是android低版本工程(如1.5)放到高版本环境中(如2.2)可能会上述错误。并附加下面的解决方法:

=================================================================================

1.如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。

      (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升级)

2.如果修改android sdk版本,则需要以下几个步骤:

1)修改SDK

 选择工程,build path --> configure build path ---> library 删除引用的低版本SDK,

 然后add External JARs,选择高版本SDK,OK,保存

2)修改classpath文件

 该文件可能存在该项: <classpathentry kind="lib"  path ="你所指定的高版本的地址"

 把她修改成<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK" />

3) 修改AndroidManifest.xml

 在AndroidManifest.xml文件中,application标签后添加<uses-sdk android:minSdkVersion="3"></uses-sdk>

4) 修改default.properties(很重要)

 该文件最后一行(前面没用#的)target=android-3 该成target=android-8,保存。

再看看你的工程和新建的android 2.2的工程结构就一样了。

=================================================================================

 

   四. 我使用了第一个方法project clean,结果是无效,郁闷。对应第二个方法也修改了信息,还是错误

网上看了看,说是:
.其实这个错误很简单,你的jar包在工程里面不止一个,所以删除其他,留一个jar包即可,然后重新运行工程...

 

=================================================================================

    有了点启发,难道重复了?莫非步骤1是不需要的,而使用project clean就会自动给这个工程添加Android 2.3.3的jar包吗?于是我点Build Path,点configure Build Path,打开界面,果然出了自己手动添加的android.jar,还有系统自动添加的Android 2.3.3lib库,于是我把之前手动关联jar remove掉,顺便整理下AndroidManifest.xml,参照我hello想项目配置文件,把下面三行移动到最前面,不然总有波浪线提示,不舒服,这个应该无关大局。

   <uses-sdk android:minSdkVersion="10" />

   <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>

   <uses-permission android:name="android.permission.SEND_SMS"></uses-permission>

   <uses-permission android:name="android.permission.RECEIVE_SMS" /> 


    好了,到这一步,run as android project,如期运行,非常好。

 

摘自 落寞风聚沙
补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,