【问题标题】:How to modify the data in the assets folder in existing apk programmatically? [duplicate]如何以编程方式修改现有apk中资产文件夹中的数据? [复制]
【发布时间】:2015-08-22 21:13:23
【问题描述】:

我想用生成的 apk 替换 assets 文件夹中的一个文件(在 assets 文件夹中有 sample.txt 文件,在生成 apk 后我想更改该文件中的数据并重新生成新的 apk)。

===> 旧 APK+modified(sample.txt)=newApk

如何做到这一点?

【问题讨论】:

  • 您是指在构建时(在您的开发机器上)还是在运行时(您的应用程序更新自己的资产)执行此操作?后者是不可能的。
  • 我再问一遍:在哪里您要修改资产?您是希望在开发机器上完成这项工作,还是希望在运行时在 Android 设备上完成这项工作?
  • 在开发机器中
  • 这个问题不是链接问题的重复,因为它不是在谈论运行时。

标签: android apk android-assets


【解决方案1】:

APK 文件是一个 ZIP 归档文件,在构建过程中不会修改资产。因此,在您的开发机器上,您可以:

  • 解压缩 APK 文件
  • 替换您的资产
  • 将结果压缩回 APK 文件
  • 使用 jarsigner 使用您的生产密钥库为 APK 签名
  • 使用 zipalign 在四字节边界上对齐结果,以便在运行时更快地加载

【讨论】:

    【解决方案2】:

    这是不可能的,除非通过部署更新的 APK。 APK 是数字签名的,不能在运行时修改

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-22
      • 1970-01-01
      相关资源
      最近更新 更多