AppWidgetManager requestPinAppWidget не работает предварительный просмотр

Начиная с API 26 можно добавлять виджеты для Домашнего экрана программно. Кроме того в диалог установки виджета можно добавить его "предварительный вид". Все описано на официальном сайте довольно скупо и без примеров, но есть хорошее руководство. Код:

if( Build.VERSION.SDK_INT >= 26 ){
   AppWidgetManager awm = (AppWidgetManager) getSystemService( AppWidgetManager.class );
   if( awm.isRequestPinAppWidgetSupported() ){
      Bundle bundle = new Bundle();
      RemoteViews rv = new RemoteViews( BuildConfig.APPLICATION_ID, R.layout.my_widget );
      bundle.putParcelable( AppWidgetManager.EXTRA_APPWIDGET_PREVIEW, rv );

      awm.requestPinAppWidget( new ComponentName( this, AppWidgetProviderMy.class ), bundle, null );
   }
}

Но он не работает в части "предварительного просмотра". Если не составит труда, протестируйте код на работоспособность на ваших устройствах или укажите на ошибку.

Вкратце расскажу результаты своих тестов. Есть у меня Redmi 6A Android 8.1, на нем вообще ничего не работает, хотя isRequestPinAppWidgetSupported() возвращает true. На другом устройстве Samsung TAB-A Android 9 диалог добавления виджета выводится, сам виджет устанавливается, но предварительный просмотр не работает. Зато вызывается PendingIntent который можно передать 3 параметром в requestPinAppWidget в случае успешного добавления, это нужно для вызова активности с настройками.


Ответы (0 шт):