如何在 Google Play Console 中发布 Android App Bundle?
环境:Android Studio 3.2
在“生成签名包或APK”之后,我得到了一个文件“app.aab”。如何在 Google Play Console 中发布此文件以及“Bundle”和 APK 之间有何不同?
谢谢。
Has anyone experienced issues with ConstraintLayout group visibility?
I'm using ConstraintLayout 1.1.3 and I'm setting the visibility of group in both XML layout and java code. But it does not change the visibility status. It is always visible.
This is the layout file
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/iv_message_icon_activity_dictionary"
android:layout_width="@dimen/message_icon_width"
android:layout_height="@dimen/message_icon_height"
android:layout_marginBottom="@dimen/message_text_view_margin_top"
android:contentDescription="@string/app_name"
android:src="@drawable/icon_error"
app:layout_constraintBottom_toTopOf="@+id/tv_message_activity_dictionary"
app:layout_constraintEnd_toEndOf="@id/tv_message_activity_dictionary"
app:layout_constraintStart_toStartOf="@id/tv_message_activity_dictionary" />
<TextView
android:id="@+id/tv_message_activity_dictionary"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="20dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginStart="20dp"
android:gravity="center"
android:textColor="@color/black"
android:textSize="@dimen/medium_text_size"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="@string/msg_no_internet" /> …Run Code Online (Sandbox Code Playgroud) android android-layout android-constraintlayout android-app-bundle
我们使用时会抛出一些日志语句,
Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo();
appUpdateInfoTask.addOnSuccessListener(appUpdateInfo -> {
Run Code Online (Sandbox Code Playgroud)
2019-06-13 18:30:40.556 28375-28375/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] AppUpdateService : requestUpdateInfo(<"package name here">)
2019-06-13 18:30:40.556 28375-28584/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] AppUpdateService : Initiate binding to the service.
2019-06-13 18:30:40.560 28375-28375/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] AppUpdateService : ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.installservice.DevTriggeredUpdateService})
2019-06-13 18:30:40.560 28375-28584/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] AppUpdateService : linkToDeath
2019-06-13 18:30:40.564 28375-28389/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] OnRequestInstallCallback : onRequestInfo
2019-06-13 18:30:40.564 28375-28584/com.marsplay.debug I/PlayCore: UID: [10312] PID: [28375] AppUpdateService : Unbind …Run Code Online (Sandbox Code Playgroud) android google-play google-play-services android-app-bundle in-app-update
我正在寻找一种从 Android App Bundle 生成 APK 的解决方案,这将帮助我共享该应用程序进行内部测试,而不是在 Google Play Beta 测试上发布。
有没有使用bundletool的方法或命令?
我想升级我的发布 gradle 脚本以制作 android 包而不是 android apk 包,但我找不到从 gradle 脚本而不是 apk 以编程方式创建包的命令。
这是我必须转换的。创建 apk 的特定命令是什么?用于创建包的指定命令是什么?我找不到。
// copy apk file
variant.outputs.each { output ->
if (output.outputFile != null) {
println "outputFile name ${output.outputFile.name}"
variant.assemble.doLast {
copy {
from output.outputFile
into destination
rename { String fileName ->
"app-${variant.productFlavors[0].name}-${buildType.name}-${versName}.apk"
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我以为那是
我在 Gradle 中输入了以下代码。
///start
applicationVariants.all { variant ->
variant.outputs.each { output ->
println("Roop: mappingFile: ${output.outputFile}")
}
variant.assemble.doLast {
// doLast {
File dir = new File("${project.projectDir}/out1")
dir.mkdirs()
println("Roop: copy")
variant.outputs.each { output ->
File file = output.outputFile
println("Roop: file:" + file)
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在,当我从 android studio 执行 Build Apk 时,在创建 apk后会执行 Variant.assemble.doLast 。但是如果我执行Build Bundle ,则不会调用相同的 doLast 。
为什么没有为 BuildBundle 调用 doLast 的任何信息?
Google API 无法与内部应用程序共享一起使用,这可能是由于在内部共享应用程序包和 APK 中提到的 Google Play 应用程序重新签名
如何获取要添加到 Google API 控制台的内部应用共享密钥 SHA1?
我已将我的应用程序编译为 apk,但 Google Play 拒绝了该格式,说我需要优化它。现在我知道我必须上传 aab 文件。如何将 apk 文件转换为 aab 文件?
我有一个应用程序捆绑包文件,现在我想生成一个可以安装到所有设备的通用APK。我尝试使用此命令来生成通用APK:
$bundletool build-apks --bundle=myapp_bundle.abb --output=myapp.apks --universal
Run Code Online (Sandbox Code Playgroud)
但是,我得到的是.apks(不是.apk),我无法直接安装到任何设备。有人知道如何获取通用的.apk文件而不是.apks吗?
非常感谢你。
我已经在我的Android应用中实现了最近启动的应用内更新API。当我构建apk并测试此功能时,它可以正常工作。(我已经上传了带有Beta轨道的更高版本的APK)。但是,当我构建应用程序捆绑包并将其上传到内部内部应用程序共享时,永远不会提示应用程序更新对话框。(相同的源代码区别仅在于第一种情况下的apk和第二种情况下通过应用程序捆绑包)。