1、将eclipse工程导入到android studio后的配置。
Error: Your project contains C++ files but it is not using a supported native build system.
在app模块的build.grade中的BuildTypes中加上sourceSets{ main{jni.src.Dirs=[ ] } }
1.1、工作电脑gradle版本为3.1.2,gradle插件版本为4.4,新建activity什么都没做也会报错,是因为默认配置不对。
需要修改support库和SDK版本。support库和sdk一般还具有相关性,
根据eventlog的信息找到出错的代码段落,把鼠标放到报错标注的部分,as会提示为什么以及怎么改。
2、使用ndk生成.so文件的步骤。
首先需要安装ndk,在AS界面右上角的SDK manager中给NDK打个勾就行了。
然后设置一下jni文件夹下的两个mk文件
在app模块的build.grade中的BuildTypes中加上sourceSets{ main{jni.src.Dirs=[ ] } }
然后在调试的terminal终端进入到jni所在的文件夹后,输入ndk-build,就可以自动创建了so文件了。
3、如何设置定制机的APP签名
3.1下图是如果签名不正确,或者没有签名会报的错误:
Failed to finalize session : INSTALL_PARSE_FAILED_NO_CERTIFICATES: Package /data/app/vmdl540410799.tmp/0_dependencies has mismatched certificates at entry AndroidManifest.xml
3.2解决前提:已有.keystore文件、key store password、key alias、key password
解决步骤:build→generate signed apk→记得勾选两个按钮,点击完成之后会自动编译
→project structure→app→signing中信息填写→buildtypes框框中signing config选上刚设置的签名。
4、关于Activity.finish()、Activity.onDestory()、System.exit(0)
4.1、finish() 功能等价于back按键,结束当前acticity,但是并没有释放activity内存资源;
4.2、onDestory() 结束当前activity且释放内存资源;
4.3、System.exit(0) 结束当前应用程序且释放内存资源;
5、用drawable绘制btn的自定义xml时,右键drawable文件夹,new一个新的drawable resource file时并不会弹出selector的小框,而是弹出大框格New Resource File。
不知道为什么会这样,但是我们可以换种方式来新建一个selector的xml文件。
在res层右键,new一个Andrioid Resource File,然后在弹出框格中将resource type选为drawable,再给file取个名字,就会生成一个seletor的.xml了。
然后下一次绘制btn的自定义xml的时候,又可以直接通过右键new一个新的selecotr或者shape、layer-list了。
ps1:这是一篇让你少走弯路的 JNI/NDK 实例教程 https://blog.csdn.net/kisty_yao/article/details/79466396
ps2:Android NDK 视频https://www.youtube.com/watch?v=BWLOas4nojY
ps3:使用Stacktrace处理异常(这里是各种举例) https://blog.csdn.net/u012585964/article/details/51772622
ps4:彻底解决unable to find valid certification path to requested target https://blog.csdn.net/gabriel576282253/article/details/81531746
原文地址:https://www.cnblogs.com/caesura-k/p/11694715.html