Delphi开发Android使用wxsqlite3为数据库加密
近段时间对Delphi开发Android程序进行了一些尝试,发现了一些问题,也试着去解决这些问题,特将这些解决方法记录下来,以便自己和他人翻阅。由于本人接触Android程序时间有限,许多问题都是边开写代码边在网上找一些资料,我这篇文章也是集成一些网上的办法,结合自己的研究(本文所用开发工具:Delphi 10.2)。下面详细讲解:
步骤一:将wxsqlite3编译成SO动态链接库
wxsqlite3是开源的sqlite3加密模块,比较有名,对于我们来说,能不花钱的方法才是最好的,在Android下使用wxsqlite3必须将其编译成安卓支持的SO文件。网上有很多关于安卓下sqlite3加密的方法,但基本上是Java代码,而且需要Java开发工具,对于我这种delphier来说,Java虽接触过,仍是小白一个,只好另寻他法。最终找到用ndk-build编译so的方法,Delphi开发安卓必须要ndk,参照网上的方法反复折腾,始终是不得其法 。经过一番尝试,还是让我这种小白大致明白了问题所在,ndk-build编译so必须把所有C语言源码放在jni目录之下,然后直接调用命令即可。对于使用Java开发的人来说,是再简单不过了,让我们这种delphier情何以堪。
其中还有两个关键点:一是Android.mk文件的编写。ndk-build是依赖这个文件进行编译的,一并放在jni目录下即可。结构如下:
LOCAL_PATH := $(call my-di