Frage: Gibt es eine Möglichkeit, einige der Homescreen-Widgets zu aktivieren, die ich programmgesteuert mit meiner App ausgeben? Zum Beispiel, ein "Premium" -Widget zu haben und Zugang nur nach Bezahlung zu gewähren?Android: App-Widgets programmgesteuert aktivieren/deaktivieren
Als Android docs sagen, sollte man einen Rundfunkempfänger in dem Manifest hinzufügen, dem System zu sagen, dass es ein Widget mit der App kommt, ist: kann Rundfunkempfänger
<receiver android:name="ExampleAppWidgetProvider" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/example_appwidget_info" />
</receiver>
Aber in der Theorie auch programmgesteuert hinzugefügt werden, können die Widgets später zur Laufzeit registriert werden?
Danke! Eine kurze Frage dazu: Bedeutet das, dass andere Apps diese Funktion aufrufen können, indem sie meine Empfänger-Komponente angeben oder sie sogar über die adb-Befehlszeile aktivieren? – frangulyan
@frangulyan: "bedeutet dies, dass andere Apps diese Funktion aufrufen können, indem sie meine Empfängerkomponente angeben" - gewöhnliche Android SDK-Apps können das nicht. System-Apps, Apps auf gerooteten Geräten usw. könnten. "Aktivieren Sie es sogar über die ADB-Befehlszeile?" -- Ich denke schon. IMHO, das sollte ziemlich weit unten auf Ihrer Liste der Bedenken sein. – CommonsWare
Spät zur Party, ich weiß, aber für zukünftige Referenz 'SetComponentEnabledSetting()' funktioniert nicht zuverlässig für AppWidgets auf allen Android-Versionen. Fehlerbericht ist hier: https://issuetracker.google.com/issues/36914010 – String