Android Studio导入jar后无法识别、但项目能正常运行的问题
2015-10-30 15:48
766 查看
(一)导入jar基础
1.首先,Android Studio默认的jar存储位置和eclipse不同!jar必须放在src/main/jniLibs文件夹下,同样so文件必须放在src/main/jniLibs/armeabi中。
2.当然,这个目录的位置是可以自己配置的,在module对应的build文件中添加如下代码即可将jar存储位置改为本module之下的libs目录,类似eclipse:
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}(放在android{...} 这个标签中)
3.在jar文件上点击右键,选择“Add as Library”,然后选择当前的module。此时build.gradle文件中会自动增加依赖,如:
compile "xxx.jar"
(二)关于此问题
完成上述步骤之后,99% 的可能项目已经没有任何问题了。但是最近做百度地图的项目时出现了很奇怪的问题:上述步骤之后代码中依然无法导入百度的包、类(代码报红色错误:cannot resolve... ),但是相应的代码却可以正常编译、运行,安装在手机上之后也没有任何问题。
解决方案:File -> Invalidate Caches and Restart,
参见:http://stackoverflow.com/questions/19508649/android-studio-says-cannot-resolve-symbol-but-project-compiles
1.首先,Android Studio默认的jar存储位置和eclipse不同!jar必须放在src/main/jniLibs文件夹下,同样so文件必须放在src/main/jniLibs/armeabi中。
2.当然,这个目录的位置是可以自己配置的,在module对应的build文件中添加如下代码即可将jar存储位置改为本module之下的libs目录,类似eclipse:
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}(放在android{...} 这个标签中)
3.在jar文件上点击右键,选择“Add as Library”,然后选择当前的module。此时build.gradle文件中会自动增加依赖,如:
compile "xxx.jar"
(二)关于此问题
完成上述步骤之后,99% 的可能项目已经没有任何问题了。但是最近做百度地图的项目时出现了很奇怪的问题:上述步骤之后代码中依然无法导入百度的包、类(代码报红色错误:cannot resolve... ),但是相应的代码却可以正常编译、运行,安装在手机上之后也没有任何问题。
解决方案:File -> Invalidate Caches and Restart,
参见:http://stackoverflow.com/questions/19508649/android-studio-says-cannot-resolve-symbol-but-project-compiles
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories