知识为进步之母,而进步又为富强之源泉。这篇文章主要讲述Android第五课 编译错误分析相关的知识,希望能为你提供帮助。
1)Error 1C/C++ Problem
问题
DescriptionDescription
Resource
Path
Location
Type
make.exe: *** [obj/local/armeabi-v7a/libtest.so] Error 1C/C++ Problem
解决
通过Eclipse无法定位到相关的错误信息,因此进入项目的jni目录,执行ndk-build指令,打印出详细的错误细节。根本原因是没有实现一个纯虚函数的接口
2)Type jint could not be resolved
原因
没有导入NDK头文件
原因
在android工程打开.cpp文件编辑的时候,也会自动调用java编译器对当前代码进行编译,因此Java编译器肯定无法正常编译C++代码,导致了问题的出现
解决
编译工程的时候,当前的Eclipse编辑界面不能是.c或者.cpp文件,必须是.java或者.h文件。操作如下,切换到.java文件,然后删除所有的错误信息,这样子就可以顺利编译通过,实际上Jni模块都是调用ndk-build进行编译的
3)cannot be resolved or is not a field
问题
DescriptionResourcePathLocationType
bt_mycity cannot be resolved or is not a fieldChangeCityActivity.java
原因
该变量没有在布局文件xml中定义。双击错误,然后跳转到错误页面,按下Ctrl,鼠标点击变量发现无法跳转到变量定义的布局文件,正常情况下如果有定义,是可以正常跳转的
解决
在布局文件中添加该变量的定义。如果该布局页面没有被实际使用到,可以直接删除该错误,通知编译器忽略该错误,就可以顺利编译,不妨碍正常安装
注意
忽略错误信息,在跳转到该页面的时候,可能会出现崩溃
4)Unable to resolve target '
android-23'
编译项目出错如下:
Description
Resource Path Location
Type
The project was not built since its buildpath is incomplete. Cannot find the class file for java.lang.Object. Fix thebuild path then try building this project
Description
Resource Path Location
Type
Unable to resolve target '
android-23'
Unknown Android Target Problem
Description
Resource Path Location
Type
error: No resource identifier found forattribute '
letterSpacing'
in package '
android'
【Android第五课 编译错误分析】原因
目标设备是Android 6.0, 需要使用的API为23,查看Project Properties中Android选项,查看到当前只有Android 4.4.2的版本API 19,所以需要更新SDK
5)appcompat_v7的作用以及编译错误
现象:
ADT环境版本v22.6.2-1085508,创建一个项目的时候,都会创建一个appcompat_v7,如果创建多个
新的项目,还会出现appcompat_v7_1等,依次递增。
原因:
appcompat_v7是google的一个兼容包,就是一个支持库,能让2.1以上的Android SDK使用4.0版本的界面。通俗来说就是你手机Android版本SDK是2.1,通过添加这个库(这个库将会打包进apk),能够显示4.0版本的超炫画面。
问题:
创建一个新的项目出错如下:
The container '
Android Dependencies'
references non existing library appcompat_v7_5in
appcompat_v7_5.jar'
解决方案:
点击Project,选择Clean,选择Clean All Project,单独选择创建的新项目不行。然后就可以编译运行.
当然,如果目标设备是4.0以上的版本,完全不用appcompat,可以直接在创建项目的时候,将Minimum Required SDK版本选择在4.0以上,就不会创建appcompat这个包了。
参考:http://jingyan.baidu.com/article/3ea51489e04eb852e61bbaa4.html
推荐阅读
- mybatis根据数据库表结构自动生成实体类,dao,mapper
- Android第六课 安装异常处理
- QML的Window与ApplicationWindow
- Android蓝牙
- 详细说明小虎一键重装win7 32位稳定旗舰版系统备份的技巧
- 如何运用一键打开重装win7 32位优化特别版系统软件?
- 详细说明win7 64位极速规范版系统一键打开打印机共享的技巧
- win7 32位稳定纯净版系统全部重装办法具体过程
- 如何运用u盘装win7 64位迅速旗舰版系统的办法