Python通过Kivy-Buildozer打包apk时,如何在安卓系统下读写txt文件

在通过Kivy-Buildozer打包成apk在安卓手机运行。

按之前存放图片和字体,音乐文件的方法,在根目录下建立一个log文件夹,里面存放txt文件做为程度的日志记录。log文件夹里的txt文件无法读写,apk程序闪退。

在查阅了android的开发资料后,发现应用程序被安装到系统后,其所在的包会有专用文件夹存放可读写的数据文件,也只有我们的这个程序可对这个文件夹的有写入权限,这个私有文件夹路径位于程序根目录下的/data/data/{Package name},其他的应用程序都无法在这个文件夹中写入数据。

于是,按此开发要求,我在本地的程序main.py同根目录下,也新建了/data/data/airgame/三层目录,其中airgame是Buildozer.spec配置文件里的包名。

 

然后将log.txt放入/data/data/airgame/log.txt,在Python源代码中调用的方法是直接读取:

'data/data/airgame/'

而Python源代码中读取images/或fonts/目录时,则需要在前面加 app/images/,大家要注意区别对待!

再次进行打包apk,运行后读写txt文件正常!

就此,Python程序开发的安卓app读写txt文件的问题就此解决!

扫描二维码关注公众号,回复: 14809502 查看本文章

猜你喜欢

转载自blog.csdn.net/alixixi/article/details/127339130