我需要上传一个 .apk
,但它超过了 50 MB 的限制。
我在文档和一些问题上读到了这一点,但我很难做到这一点。
有没有人有一些教程来解释如何做到这一点(使用 Android Studio)以及是否有某种方法可以使用 Gradle 来做到这一点?
最佳答案
我已经在几个项目中这样做过,但我从来没有想出一个简单的方法。说明在
http://developer.android.com/google/play/expansion-files.html
帮助我了解了基础知识,但我发现流程的某些部分(例如“android 更新项目”)无法与 Gradle 一起正常工作。
以下说明将帮助您使用所需的库设置项目。之后,您可以返回官方文档并找出如何处理您刚刚包含的所有内容。
将这些权限添加到 AndroidManifest.xml
<uses-permission android:name="com.android.vending.CHECK_LICENSE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
将 Play 服务依赖添加到 build.gradle
dependencies {
compile 'com.google.android.gms:play-services:4.0.30'
}
打开 SDK Manager 并安装 Google Play APK Expansion Library 和 Google Play Licensing Library。
将这些文件夹中的 java 源文件复制到项目的 source/main/java 文件夹中:
YOUR-ANDROID-SDK-FOLDER\extras\google\play_apk_expansion\zip_file\src
YOUR-ANDROID-SDK-FOLDER\extras\google\play_apk_expansion\downloader_library\src
YOUR-ANDROID-SDK-FOLDER\extras\google\play_licensing\library\src
打开
YOUR-ANDROID-SDK-FOLDER\extras\google\play_apk_expansion\downloader_library\res
将 drawable-hdpi、drawable-mdpi 和 layout 复制到项目的 source/main/res 文件夹中.
对于 values 文件夹中的所有文件,将文件中的内容合并到项目中的匹配文件中。
创建一个扩展android.content.BroadcastReceiver的类
将类似这样的内容添加到您的 list 中:
<receiver android:name="mypackage.MyReceiver"/>
创建一个扩展 com.google.android.vending.expansion.downloader.impl.DownloaderService 的类
将类似这样的内容添加到您的 list 中:
<service android:name="mypackage.MyDownloaderService"/>
编译项目并查找与
相关的错误import com.android.vending.expansion.downloader.R;
改为在此处导入您自己的项目资源。
关于android - 如何使用 Android Studio 制作 Android 扩展文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22368251/