Android 更新后损坏的快捷方式

标签 android shortcut android-launcher

Launcher/Main activity 在 list 中发生了变化,更新后使用自定义 OS Launcher(即:dodol Launcher)的用户报告他们的快捷方式被破坏并显示消息“App isnt installed”。

这是一个大问题,因为许多人只是困惑地卸载了应用程序。

据我了解,发生的事情是启动器捕获了一些关于快捷方式的额外信息,当它发现与 list 中的启动器 Activity 不匹配时,它认为应用程序不再存在。

这显然是一个自定义启动器问题,但似乎传播范围很广,需要解决这个问题。

我正在尝试将新旧 Activity 都设置为 MAIN/LAUNCHER,看看这是否有任何影响。

有没有其他人遇到过类似的问题,如果有的话,有什么解决这个问题的推荐策略吗?

谢谢。

最佳答案

这是我解决这个问题的方法。我将 LoginActivity 作为主要启动 Activity :

<activity android:name=".activities.LoginActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity-alias>

我们不得不重做一些逻辑,主要是我们的 MAIN Activity 是如何开始的。我们最终创建了虚拟 LauncherActivity 并将用户带到应用程序内部或 LoginActivity。因此,完成后我们在升级后遇到了完全相同的问题。幸运的是我在发布前捕获了它。 “应用未安装”。

解决方案。使用 activity-alias,进行了一些修改,但我不能 100% 确定我们是否需要重命名 LoginActivity。但我们确实将其重命名为 SignInActivity,这是对我们有用的 list 中的最终配置。

<activity android:name=".activities.LauncherActivity" android:noHistory="true" android:theme="@android:style/Theme.NoDisplay" />

        <!-- Don't brake 2.7.2->3.0.0 shortcuts, keep ALIAS for old way to access app -->
        <activity-alias android:name=".activities.LoginActivity" android:targetActivity=".activities.LauncherActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity-alias>

        <activity android:name=".activities.SignInActivity" />

点这里 - 我们保留旧签名,但“重新路由”启动器以使用我们新的 LauncherActivity

关于Android 更新后损坏的快捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28836116/

相关文章:

android - 如何更改 Android 应用程序的启动器文本

java - 如何在phonegap android中隐藏推送通知栏

android - 使用 LinearLayout 的 mapView 布局失败?

windows - 创建快捷方式以使用 Powershell 运行 Powershell

android - 你如何提示用户设置默认家庭应用程序

安卓:如何将我的普通安卓应用程序转换为安卓启动器?

android - Flutter App Firebase 推送通知未在后台出现

android - 我如何在微调项目列表中有两个部分,具有不同的部分标题布局和项目布局

java - 更新 Java 中的 Windows 快捷方式图标

wix - 为所有用户安装可选的桌面快捷方式