【问题标题】:Assets on storage card存储卡上的资产
【发布时间】:2011-04-05 16:01:59
【问题描述】:

我有一个应用程序,它在资产文件夹(html、音频、视频等)中存储了大量数据。我使用 file:///android_assets 来访问这些文件。但由于市场强加的 50 MB 的 apk 大小限制,我会将这些文件迁移到存储卡。 是否可以将应用程序安装在手机内存中,并将资产目录放在存储卡上,这样仍然可以使用文件协议访问它们?

【问题讨论】:

    标签: android android-assets


    【解决方案1】:

    由于资产是您的 apk 的一部分,因此无法将它们分开或将它们移动到 sdcard。您可以为您的应用启用“移动到 SD 卡”,但这对 50 MB 的市场限制没有帮助。

    一种解决方案是将数据文件存储在网络上,而不是将它们包含在 apk 中。当您的应用在安装后第一次启动时,您将启动一个一次性过程,将它们下载到 sdcard。

    文件在 sdcard 上后,您可以通过以下方式访问它们:

    file:///sdcard/<your_directory>
    

    或者获取对 sdcard 根目录的 File 引用:

    File sdCard = Environment.getExternalStorageDirectory();
    

    【讨论】:

    • 是的,我也这样做了。将所有内容移至 SDCard。数据包含许多图像,这些图像与文本一起显示在自定义列表中。将此数据移动到外部存储后,应用程序的性能已经下降。列表滚动不像数据在资产中时那样平滑。关于如何提高性能的任何指示?
    猜你喜欢
    • 1970-01-01
    • 2017-08-30
    • 2014-10-31
    • 1970-01-01
    • 2013-01-21
    • 1970-01-01
    • 1970-01-01
    • 2014-06-09
    • 2019-01-16
    相关资源
    最近更新 更多