2012-10-16 109 views
0

我有一个包含一些文件的目录。我想将这个目录绑定到apk文件中,以便在安装apk文件时将目录复制到android设备上的特定位置。我们可以在apk文件中捆绑一个目录吗?

我可以在apk文件中捆绑一个目录,因为我没有在developer.android.com上找到这个信息吗?我需要为此修改任何配置文件吗?

谢谢.. 阿贾伊

回答

3

你不能,但你可以看看Android的资产文件夹,

http://developer.android.com/guide/topics/resources/providing-resources.html

资产是原始资源,他们将不会被压缩android编译器。

从开发者网站:

资产/

这是空的。您可以使用它来存储原始资产文件。 保存在这里的文件按原样编译为.apk文件,并保留原始文件名 。您可以使用URIs以与 相同的方式导航此目录作为典型的文件系统,并使用AssetManager将文件作为 字节的流读取。例如,对于纹理和游戏数据来说,这是一个很好的位置 。

+1

+1值得注意:此解决方案不允许稍后更新这些文件;通过从网络获取更新的版本或通过从软件界面进行更改 – Elemental

+2

您可以在应用第一次启动时将这些资产文件复制到android目录,这将允许更改文件。 –

+0

感谢您的详细信息。正如你所提到的,我可以在第一次启动应用程序时复制这些文件,但是我希望这会在apk安装时发生。截至目前我不确定是否有可能,我进行了一个小测试,但没有奏效。我创建了一个文件夹,其中包含assets/folder下的一些文件。我从eclipse构建了我的java应用程序,并创建了一个apk文件。我从android设备运行这个应用程序,但没有找到我的文件夹在设备上,但应用程序已安装。我认为这个文件夹仍然不是安装在设备上的apk的一部分。 – Ajay

2

apk中的assets/文件夹旨在以任何格式存储任何额外的用户文件。它们将在编译阶段自动包含到apk中,并且可以使用getAssets()函数从应用程序访问它们。

+0

Jaguar,我进行了一个小测试,我创建了一个包含资产/文件夹下的一些文件的文件夹,我从eclipse构建了我的java应用程序,并创建了一个apk文件,我从android设备上运行这个应用程序,但没有在设备上找到我的文件夹,安装虽然我觉得这个文件夹仍然不是安装在设备上的apk的一部分,你知道如何在apk安装过程中将这个文件夹复制到设备吗?我不知道它是否可能。 – Ajay

相关问题