Play Asset Delivery Android 资源链接失败 - 任务执行失败:app:linkDebugManifestForAssetPacks
Play Asset Delivery Android resource linking failed - Execution failed for task :app:linkDebugManifestForAssetPacks
我正在尝试构建音板应用程序。我有很多声音要部署,所以我决定使用 Play Asset Delivery。我遵循了 Google 指南中的说明。
我在顶层创建了一个资产包文件夹并将其命名为声音。这是我的项目的样子
项目结构:
这是声音目录中的build.gradle
文件
apply plugin: 'com.android.asset-pack'
assetPack {
packName = "sounds" // Directory name for the asset pack
dynamicDelivery {
deliveryType = "[install-time]"
}
}
更新了我的应用 build.gradle 文件
android {
.
.
.
assetPacks = [":sounds"]
}
和我的 settings.gradle 文件
include ':app'
include ':sounds'
- 将资产放在 sounds/src/main/assets
当我尝试构建捆绑包时,我不断收到此错误
Gradle 错误:
这是声音文件夹中的清单
有错误的清单:
我尝试清理项目、使缓存失效并重新启动,但似乎没有任何效果。
花了这么多时间后,我成功地构建了包。
只需从资产文件夹的 build.gradle 文件中删除括号
deliveryType = "install-time"
这是 Google 的 Play Asset Delivery 示例代码
// In the asset pack’s build.gradle file:
apply plugin: 'com.android.asset-pack'
assetPack {
packName = "asset-pack-name" // Directory name for the asset pack
dynamicDelivery {
deliveryType = "[ install-time | fast-follow | on-demand ]"
}
}
我认为 deliveryType = "[install-time]" 是正确的语法。将我的资产包清单与动态功能的清单进行比较后,我意识到 gradle 产生了错误的 dist 属性。
这是我用括号写 deliveryType 得到的结果
<dist:[install-time]/>
这是动态功能清单中的正确语法
<dist:on-demand />
去掉括号就成功了。希望对大家有帮助。
我正在尝试构建音板应用程序。我有很多声音要部署,所以我决定使用 Play Asset Delivery。我遵循了 Google 指南中的说明。
我在顶层创建了一个资产包文件夹并将其命名为声音。这是我的项目的样子
项目结构:
这是声音目录中的build.gradle
文件
apply plugin: 'com.android.asset-pack'
assetPack {
packName = "sounds" // Directory name for the asset pack
dynamicDelivery {
deliveryType = "[install-time]"
}
}
更新了我的应用 build.gradle 文件
android { . . . assetPacks = [":sounds"] }
和我的 settings.gradle 文件
include ':app'
include ':sounds'
- 将资产放在 sounds/src/main/assets
当我尝试构建捆绑包时,我不断收到此错误
Gradle 错误:
这是声音文件夹中的清单
有错误的清单:
我尝试清理项目、使缓存失效并重新启动,但似乎没有任何效果。
花了这么多时间后,我成功地构建了包。
只需从资产文件夹的 build.gradle 文件中删除括号
deliveryType = "install-time"
这是 Google 的 Play Asset Delivery 示例代码
// In the asset pack’s build.gradle file:
apply plugin: 'com.android.asset-pack'
assetPack {
packName = "asset-pack-name" // Directory name for the asset pack
dynamicDelivery {
deliveryType = "[ install-time | fast-follow | on-demand ]"
}
}
我认为 deliveryType = "[install-time]" 是正确的语法。将我的资产包清单与动态功能的清单进行比较后,我意识到 gradle 产生了错误的 dist 属性。
这是我用括号写 deliveryType 得到的结果
<dist:[install-time]/>
这是动态功能清单中的正确语法
<dist:on-demand />
去掉括号就成功了。希望对大家有帮助。