【问题标题】:Android requestPinAppWidget returns false after recent installationAndroid requestPinAppWidget 在最近安装后返回 false
【发布时间】:2019-10-19 06:46:17
【问题描述】:

我遇到了AppWidgetManager::requestPinAppWidget 的问题

有时requestPinAppWidget 方法会返回 false。我们通过卸载应用程序并使用 android studio 重新安装来重现它。我们可以使用以下代码在 Samsung 和 Pixel 设备上始终如一地重现它:

@RequiresApi(Build.VERSION_CODES.O)
private fun showWidgetAddingActivity(context: Context) {
    val appWidgetManager = context.applicationContext.getSystemService(AppWidgetManager::class.java)
    val myProvider = ComponentName(context.applicationContext, WidgetActionsReceiver::class.java)

    val launcherSupported = appWidgetManager.requestPinAppWidget(myProvider,null, null)
}

如果我们在全新安装后(或几分钟后)运行它,launcherSupported 的值将是 false。在任何其他情况下都是true

发生这种情况时,调用 appWidgetManager.isRequestPinAppWidgetSupported 始终返回 true。

这是为什么呢?我怎样才能减轻它?或者至少提前知道,所以我不会向用户展示其余的流程

【问题讨论】:

    标签: android android-widget samsung-mobile android-8.0-oreo


    【解决方案1】:

    这是由默认禁用WidgetActionsReceiver 引起的。当使用功能标志启用它时,更改需要一些时间才能到达启动器。

    【讨论】:

    • 您能否详细说明您所说的 WidgetActionsReceiver 被禁用以及您是如何启用它的?
    猜你喜欢
    • 1970-01-01
    • 2023-03-28
    • 2020-02-04
    • 2020-07-14
    • 2015-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多