2014-12-16 1 views
5

Панель запуска падает на Android Lollipop при добавлении виджета дает следующее сообщение (Это прекрасно работает на предыдущих версиях Android):Android леденец: пусковая сбой при добавлении приложения виджет на главном экране

Edit: Это происходит только в альбомная ориентация.

12-16 12:35:10.208: E/AndroidRuntime(960): 
java.lang.RuntimeException: Unable to resume activity {com.android.launcher/com.android.launcher2.Launcher}: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=5, result=-1, data=Intent { (has extras) }} to activity {com.android.launcher/com.android.launcher2.Launcher}: java.lang.NullPointerException:  Attempt to read from field 'android.content.pm.ActivityInfo  
android.appwidget.AppWidgetProviderInfo.providerInfo' on a null object reference 
12-16 12:35:10.208: E/AndroidRuntime(960): at 
android.appwidget.AppWidgetHostView.getRemoteContext(AppWidgetHostView.java:465) 
12-16 12:35:10.208: E/AndroidRuntime(960): at 
android.appwidget.AppWidgetHostView.updateAppWidget(AppWidgetHostView.java:376) 
12-16 12:35:10.208: E/AndroidRuntime(960): at com.android.launcher2.LauncherAppWidgetHostView.updateAppWidget(LauncherAppWidgetHostView.java:54) 
12-16 12:35:10.208: E/AndroidRuntime(960): at android.appwidget.AppWidgetHost.createView(AppWidgetHost.java:325) 
12-16 12:35:10.208: E/AndroidRuntime(960): at com.android.launcher2.Launcher.completeTwoStageWidgetDrop(Launcher.java:703) 
12-16 12:35:10.208: E/AndroidRuntime(960): at com.android.launcher2.Launcher.onActivityResult(Launcher.java:664) 

Это информация поставщика:

<?xml version="1.0" encoding="utf-8"?> 
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:minWidth="201dp" 
    android:minHeight="201dp" 
    android:updatePeriodMillis="180000" 
    android:initialLayout="@layout/appwidget_week" 
    android:configure="com.example.myApp.Widgets.Configure.WidgetConfigure_Week" 
    android:resizeMode="horizontal|vertical" 
    android:previewImage="@drawable/widget_screenshot_week" 
    android:label="@string/widget_week"> 
</appwidget-provider> 

И манифеста:

<receiver 
     android:name="com.example.myApp.Widgets.Provider.WidgetProvider_Week" 
     android:enabled="@bool/is_above_version_3_1" 
     android:label="@string/widget_week" > 
     <intent-filter> 
      <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 
     </intent-filter> 

     <meta-data 
      android:name="android.appwidget.provider" 
      android:resource="@xml/appwidget_week_provider_info" /> 
    </receiver> 

ответ

0

У меня был подобный сбой происходит на Зефир. Мой сбой произошел, когда ориентация экрана была изменена, когда в Управлении, используемом для настройки Виджета на главном экране (это не происходило ни в одной ориентации, если ориентация не была изменена).

Просто уточнить: авария произошла не сразу, когда экран был повернут. Скорее, это произошло после того, как пользователь закончил настройку виджета, вышел из Activity и Android начал создавать виджет Home Screen.

Это также вызвало появление «фантомных виджетами» (то есть виджетов, которые не отображаются на экране, но существуют внутри Android).

Я смог решить эту проблему, вынудив операцию настройки виджетов оставаться в портретном режиме, когда устройство было повернуто. Как описано здесь:

Force "portrait" orientation mode

Смежные вопросы