RockPi4安卓开发日记(二)

本文介绍了在Ubuntu操作系统中使用Android Studio进行开发的优势,如无需设置代理,SDK/NDK下载快速。详细步骤包括安装库以解决debug问题,新建Native C++工程,管理CMakeLists.txt,以及使用外部工具生成JNI头文件。还强调了处理C/C++头文件的注意事项,以避免编译错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、开发环境:操作系统Ubuntu,开发工具:android studio4.2.1。之前我在win10和MAC OS都有用过android studio,对比发现ubuntu版本的最友好。例如ubuntu版本不需要设置代理,SDK/NDK下载没有问题,速度非常快。android studio4.2.1版本智能很多,例如缺什么库在代码同步时会有提示,点击提示的链接自动下载,大大提升开发效率。

2、需在ubuntu上安装一个库,否则debug时会出现“Waitting for Debugger”的提示

sudo apt install libncurses5

3、新建一个Native C++工程,在搭好的框架下将c代码添加到cpp目录下

4、修改CMakeLists.txt,增加所有添加进来的源文件。我这为了图省事儿,头文件和c文件都放在同一个目录下了。

#源文件目录
aux_source_directory(. DIR_SRCS)
#下边这句也可以
#file(GLOB DIR_SRCS *.c *.cpp)

add_library( # Sets the name of the library.
        rtlSdrAndroid

             # Sets the library as a shared library.
             SHARED

             # Provides a relative path to your source file(s).
             ${DIR_SRCS} )

5、java类转jni的方法:在Android studio的external tools里创建一个增加java转jni头文件的(android studio安装时会自动装jdk,javah的路径可以用find . -name 'javah*'搜索到)

Program: javah的路径/javah
Argument: -classpath . -v -jni -d $SourcepathEntry$/../cpp $FileClass$
Working directory: $SourcepathEntry$

这样就可以通过右键点击java类,在弹出菜单中选择“external tools-->create jni”生成相应的jni头文件了。新生成的文件可能会提示一堆错误,比如jni.h找不到啥的,先不管,手工创建cpp源文件,实现jni头文件里的函数,然后同步即可,之前的错误就都消除了。

6、注意,由于既有c文件又有c++文件,头文件定义一定要加上:

#ifdef __cplusplus
extern "C" {
#endif

...

#ifdef __cplusplus
}
#endif

否则调用c函数编译时会出undefined reference to function的错误。

本项目是一个基于安卓日记本项目源码,本站之前介绍过很多关于日记本/备忘录/便签这一类型的项目源码。进入应用首先进入欢迎界面会有一个开门效果,点击”进入日记”即可进入主界面,在主界面可以点击进入”写日记”、”查看日记”、”搜索日记”、”日记加密”、”退出”以及右下角path菜单按钮查看更多。进入”写日记”界面即可写日记并且可以选择当天天气情况,写完日记以后不需要其他操作直接点返回键就可以自动保存内容并回到主界面。进入”查看日记”界面即可查看写过的日记,若没有写过日记,则提示用户写日记。进入”搜索日记”界面即可对日记内容进行搜索,搜索日记功能可以根据关键字模糊搜索并且可以即时出现结果。进入”日记加密”界面即可对日记进行加密,密码保护部分可以设置日志的数字密码或者图形密码,设置完成退出应用以后再次打开应用就会出现要求输入数字密码或者绘制图像密码的界面。点击右下方按钮会弹出弧形菜单,可进入相应操作。如关于、帮助、夜间模式、换背景、设置提醒、意见反馈。”换背景”操作,手动换屏,长按图片或者按菜单键按提示操作即可。”设置提醒”可以设置提醒写日记的时间。不得不说在本项目的开发过程中作者考虑的情况很周全,对用户体验方面也下了很大功夫。例如无需手动保存、可以选择天气、带有密码设置、即时搜索出结果等等功能都可以给使用者提供不错的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值