我按照教程设置从资产中读取 JSON 文件并使用 GSON 进行解析。这一切都很好,但我希望用户也能够通过在应用程序中进行更改来编辑 json 文件。
我读到您无法编辑资产文件夹中的文件,但我不知道应该将文件放在哪里以及如何正确引用它的路径,而且在线文章似乎对我没有帮助。所以,两个问题:
1 ) 我可以将我的 JSON 文件移动到我的 MainActivity 目录中的一个新包中吗?这会包含在应用程序 APK 中吗?
2)我如何加载这个...?从我使用的资产加载当前 json
val mySquibsJSONfile = getApplication<Application>().assets.open("MySquibs.json")
应用程序文件夹中的文件的等价物是什么./src/main/java/com/myname/myapp/json/MySquibsLocal.json
?
我已经尝试了下面的各种版本,但无法让它工作......
val mySquibsJSONfile = File("./src/main/java/com/myname/myapp/json/MySquibsLocal.json").inputStream()
那么替换文件中的json容易吗?
您打包到 APK 中的任何内容都将是只读的,因为 APK 是一个二进制文件,并且在安装时不会展开。因此,仅将您的资产移至新包无济于事。并且“src”目录不会出现在 APK 中。
您必须在运行时将资产复制到 Android 的文件系统,并对该副本进行任何修改。
Android 现在对读取和写入文件的位置和方式有很多限制,因此您可能需要非常仔细地阅读:https : //developer.android.com/training/data-storage
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句