如何使用Android Studio制作Android扩展文件?

gro*_*f07 15 android gradle android-studio apk-expansion-files

我需要上传.apk但超过50 MB的限制.

我在文档和一些问题上读到了这个,但是我很难做到这一点.

有没有人有一些教程解释如何做到这一点(使用Android Studio),如果有一些方法可以使用Gradle来做到这一点?

Sha*_*ley 30

我在一些项目上完成了这个,但我从来没有想过一个简单的方法.的说明

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"/>
Run Code Online (Sandbox Code Playgroud)

将Play服务依赖项添加到build.gradle

dependencies {

    compile 'com.google.android.gms:play-services:4.0.30'
}
Run Code Online (Sandbox Code Playgroud)

打开SDK Manager并安装Google Play APK扩展库Google Play许可库.

将这些文件夹中的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
Run Code Online (Sandbox Code Playgroud)

打开

YOUR-ANDROID-SDK-FOLDER\extras\google\play_apk_expansion\downloader_library\res
Run Code Online (Sandbox Code Playgroud)

drawable-hdpi,drawable-mdpilayout复制到项目的source/main/res文件夹中.

对于values文件夹中的所有文件,将文件中的内容合并到项目中的匹配文件中.

创建一个扩展android.content.BroadcastReceiver的类

在清单中添加以下内容:

<receiver android:name="mypackage.MyReceiver"/>
Run Code Online (Sandbox Code Playgroud)

创建一个扩展com.google.android.vending.expansion.downloader.impl.DownloaderService的类

在清单中添加以下内容:

<service android:name="mypackage.MyDownloaderService"/>
Run Code Online (Sandbox Code Playgroud)

编译项目并查找与之相关的错误

import com.android.vending.expansion.downloader.R;
Run Code Online (Sandbox Code Playgroud)

这里导入您自己的项目资源.

  • 谢谢.我稍后会测试并回来说是否有效. (2认同)
  • 所以使用新的SDK更新已经删除了apache,因为AndroidHTTPClient包含在src文件中,因此这种方法很糟糕. (2认同)