Android 中的小部件启用小部件设置按钮?
Enable Widget Setting button for widgets in Android?
Samsung One UI 当我 select 小部件时,主屏幕显示一些小部件的设置按钮,
但对某些人来说不是
想知道两者之间有什么区别,或者它只是 OEM 特定的功能,因为我根本无法在 POCO 启动器或模拟器的启动器中使用菜单。
请注意我已经在使用
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:configure=".WidgetConfigurationActivity"
...
在我的提供商中,在我的清单中
<receiver ...>
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
...
然而这些只是我在添加一个widget时添加的配置,而不是在添加widget之后,在网上搜索也没有找到答案。
我知道这个问题已经几个月了,但我还是会回答。在对三星应用程序进行逆向工程后,我发现了“设置”按钮背后的秘密。
您只需将此元数据添加到您的应用小部件 (<receiver>
):
<meta-data android:name="android.appwidget.provider.semConfigureActivity" android:value="com.example.MySettingsActivity" />
完整示例:
<receiver android:name="com.example.MyWidget">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_info"/>
<!-- The secret sauce is here -->
<meta-data android:name="android.appwidget.provider.semConfigureActivity" android:value="com.example.MySettings"/>
</receiver>
建议:建议学习逆向工程以实现未记录的功能(只要确保您应用的核心功能不依赖于未记录的 API)。
还要补充一下,在 Android 12 中,这最终已经标准化并提供了 android:widgetFeatures="reconfigurable"
或 (reconfigurable|configuration_optional
),请参阅 https://developer.android.com/guide/topics/appwidgets/configuration#use-default 以获取来自 [= 的更多信息18=]12.
还可能值得注意,显然 reconfigurable
已为某些版本定义,只是在此版本中声明它为官方支持。
Samsung One UI 当我 select 小部件时,主屏幕显示一些小部件的设置按钮,
但对某些人来说不是
想知道两者之间有什么区别,或者它只是 OEM 特定的功能,因为我根本无法在 POCO 启动器或模拟器的启动器中使用菜单。
请注意我已经在使用
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:configure=".WidgetConfigurationActivity"
...
在我的提供商中,在我的清单中
<receiver ...>
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
...
然而这些只是我在添加一个widget时添加的配置,而不是在添加widget之后,在网上搜索也没有找到答案。
我知道这个问题已经几个月了,但我还是会回答。在对三星应用程序进行逆向工程后,我发现了“设置”按钮背后的秘密。
您只需将此元数据添加到您的应用小部件 (<receiver>
):
<meta-data android:name="android.appwidget.provider.semConfigureActivity" android:value="com.example.MySettingsActivity" />
完整示例:
<receiver android:name="com.example.MyWidget">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_info"/>
<!-- The secret sauce is here -->
<meta-data android:name="android.appwidget.provider.semConfigureActivity" android:value="com.example.MySettings"/>
</receiver>
建议:建议学习逆向工程以实现未记录的功能(只要确保您应用的核心功能不依赖于未记录的 API)。
还要补充一下,在 Android 12 中,这最终已经标准化并提供了 android:widgetFeatures="reconfigurable"
或 (reconfigurable|configuration_optional
),请参阅 https://developer.android.com/guide/topics/appwidgets/configuration#use-default 以获取来自 [= 的更多信息18=]12.
还可能值得注意,显然 reconfigurable
已为某些版本定义,只是在此版本中声明它为官方支持。