У меня есть виджет для моего приложения. При создании виджета, когда Android запускает onEnabled
Я проверяю, удовлетворяет ли пользователь определенному требованию, тогда пользователь может создать виджет. Но мне нужно остановить создание виджетов, если они не отвечают определенным требованиям. Я не могу понять, как динамически отменить создание виджета. Вот то, что я пытался, но это не сработало.
RemoteViews views;
void updateAppWidget(Context context, AppWidgetManager appWidgetManager,
int appWidgetId) {
// Construct the RemoteViews object
views = new RemoteViews(context.getPackageName(), R.layout.lock_widget);
views.setOnClickPendingIntent(R.id.lock_widget, getPendingSelfIntent(context, LOCK));
// Instruct the widget manager to update the widget
appWidgetManager.updateAppWidget(appWidgetId, views);
}
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
// There may be multiple widgets active, so update all of them
for (int appWidgetId : appWidgetIds) {
updateAppWidget(context, appWidgetManager, appWidgetId);
}
}
@Override
public void onEnabled(Context context) {
// Enter relevant functionality for when the first widget is created
// Query User pro status when creating widget
Log.d("Widget", "OnEnabled Fired");
views.removeAllViews(views.getLayoutId());
//views.
}
views.removeAllViews(views.getLayoutId());
не похоже на работу.
Есть ли способ к этому? Обходной путь, который я использую, проверяет определенную проверку требований в onUpdate
.