【问题标题】:Shortcuts for <activity-alias> disappear on Jelly Bean<activity-alias> 的快捷方式在 Jelly Bean 上消失了
【发布时间】:2012-11-20 12:40:02
【问题描述】:

我已采用旧版应用程序进行完全重写,因此,开始的活动已被重命名。为了应对用户从他们的主屏幕放置到我的应用程序的快捷方式,我添加了一个activity-alias,它将旧名称指向新名称。

以前:

<activity
    android:name=".SplashScreenActivity"
    android:theme="@style/Theme.Styled.NoAnimation" />

现在:

<activity
    android:name=".activities.StartActivity_"
    android:theme="@style/Theme.Styled.NoAnimation">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
<activity-alias
    android:name=".SplashScreenActivity"
    android:exported="true"
    android:targetActivity=".activities.StartActivity_"/>

这适用于我在 2.1 和 4.0 之间测试的各种设备。但是,在 Jelly Bean(4.1 和 4.2)上,我看到默认启动器现在正在删除启动图标。

更糟糕的是,在某些测试中,升级不会显示任何应用程序,只会在第二次安装时从应用程序列表中显示它。似乎没有韵律或理由;有时应用会丢失。

我已经尝试过交换IntentFilter

<activity
    android:name=".activities.StartActivity_"
    android:theme="@style/Theme.Styled.NoAnimation" />
<activity-alias
    android:name=".SplashScreenActivity"
    android:exported="true"
    android:targetActivity=".activities.StartActivity_" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity-alias>

亚行似乎不太喜欢这样:

未找到启动器活动!
启动只会同步设备上的应用包!

为了完整起见:将IntentFilter 添加到两个活动名称会保留主屏幕快捷方式,但会在应用程序列表中显示两个应用程序。

如何迁移并让所有用户满意?

【问题讨论】:

  • 应用程序根本没有出现的问题似乎是 4.2 模拟器特有的。我无法在其他设备或 4.1 模拟器上重现它。然而,启动快捷方式消失了。

标签: android android-manifest android-launcher


【解决方案1】:

在 Android 4.2.2 上,将启动器意图过滤器移动到另一个 Activity 或别名会导致所有快捷方式、小部件和系统应用列表图标消失。此错误发生在设备和模拟器上。此问题在 Android 4.1.2 中不会发生。我在这里提交了这个错误:

应用启动器快捷方式和小部件在更改启动器活动后消失 https://code.google.com/p/android/issues/detail?id=54720

【讨论】:

  • 似乎没有人承认或承认这是 Google 的实际错误。所以现在我很困惑:这是不是一个错误?
  • 没有收到来自 Google 的任何消息。下面的自我回答说这只会影响模拟器,但我从来没有机会测试是否是这种情况。我很好奇它是否已在 Android 4.4 模拟器中修复。
【解决方案2】:

这似乎是带有股票启动器的 4.2 模拟器特有的错误。

相关应用是荷兰市场上非常受欢迎的应用。随着更多设备迁移到 Jelly Bean,我将密切关注可能相关的任何问题。

当然,如果有人在野外遇到这种情况,我很想知道。

【讨论】:

    猜你喜欢
    • 2013-03-08
    • 2022-11-07
    • 2013-09-02
    • 1970-01-01
    • 2012-07-22
    • 2018-11-26
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    相关资源
    最近更新 更多