【问题标题】:Zip file modified when added to Phonegap app?添加到Phonegap应用程序时修改了Zip文件?
【发布时间】:2012-05-20 06:39:37
【问题描述】:

我正在编写一个 Phonegap 应用程序,该应用程序在 /assets/www/ 文件夹中包含一个 zip 存档。当应用程序启动时,文件被复制到文件系统根目录。当我尝试读取标题时,文件似乎已被修改。

这是我电脑上的 hexdump:

# hexdump -C Archive.zip| more
00000000  50 4b 03 04 14 00 00 00  08 00 4c b7 b1 40 84 1d  |PK........L..@..|
00000010  9b 1a 21 00 00 00 a0 01  00 00 0a 00 1c 00 73 61  |..!...........sa|

这是 /sdcard/ 中文件的 hexdump:

hexdump -C Archive.zip|更多

00000000  50 4b 03 04 14 00 00 00  08 00 4c ef bf bd ef bf  |PK........L.....|
00000010  bd 40 ef bf bd 1d ef bf  bd 1a 21 00 00 00 ef bf  |.@........!.....|
00000020  bd 01 00 00 0a 00 1c 00  73 61 6d 70 6c 65 2e 74  |........sample.t|

休斯顿!我们有问题!

那么,谁动了我的奶酪?发生了什么?由于 .apk 文件是压缩文件夹,因此将 zip 文件添加到 zip 文件中是否存在潜在的破坏性副作用?

【问题讨论】:

  • 我只知道apk文件是带有特殊对齐方式的特殊zip文件。
  • 啊是的对齐方式...可能是个问题。谢谢!

标签: android cordova zip


【解决方案1】:

Android 使用特殊的 zip 对齐方式。这可能是你的问题。

【讨论】:

  • 确实看起来像。我尝试了不同的扩展名,甚至伪装成.mp3,没有骰子。我将不得不单独加载 zip...谢谢
【解决方案2】:

您的应用将 zip 文件从(可能)Latin-1 转换为 UTF-8。

ef bf bd 是用于替换字符的 UTF-8 代码。

【讨论】:

    猜你喜欢
    • 2017-04-14
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多