我有一个尚未公开发布的 Android 应用程序。我想使用 Play 商店的“内部测试”渠道将其分发给客户端。
我在该频道中创建了版本,复制了安装链接,通过链接安装了应用程序,到目前为止一切顺利。首先可疑的是,安装后应用的Play Store页面没有打开按钮,只有卸载按钮:
然后最大的问题是,当我尝试通过单击其图标来打开应用程序时,而不是实际打开应用程序(查看应用程序的 UI),会显示此屏幕:
你有没有遇到过这样的事情?问题出在哪里?
编辑:
我尝试将应用程序作为 .apk 文件分发,但在从此类文件安装后会发生完全相同的事情:点击应用程序的图标会打开下面的设置页面,而不是应用程序本身。
我怀疑这可能与应用程序签名有关...
编辑2:
添加我的应用程序的 Android 清单 ( /app/main/AndroidManifest.xml
):
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ariva">
<application
android:label="ARIVA dev"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background"
/>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" android:host="arivadev.page.link" />
<data android:scheme="https" android:host="arivadev.page.link" />
</intent-filter>
</activity>
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
编辑 3
根据一些评论和答案,将单个过滤器替换为intent-filter
2 个单独的过滤器。现在该应用程序已通过 Play 商店安装就好了。但是,作为副作用,用于对用户进行身份验证的 Firebase 动态链接停止工作。更具体地说,单击电子邮件链接会在直接从 Android Studio 安装时打开应用程序,但在通过 Play 商店安装应用程序时不会打开应用程序(而是打开备份网站)。
因此,这不是一个可行的解决方案,除非动态链接也正常工作。这是新版本的intent-filter
s:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:host="arivadev.page.link" android:scheme="http"/>
<data android:host="arivadev.page.link" android:scheme="https"/>
</intent-filter>