Java Intent.getAction()在RemoteViewsFactory[AppWidget]中引发NullPointerException

Java Intent.getAction()在RemoteViewsFactory[AppWidget]中引发NullPointerException,java,android,android-intent,android-appwidget,remoteview,Java,Android,Android Intent,Android Appwidget,Remoteview,我试图修改某些动作的数据,但它抛出了NPE if("Button1_OnClickTag".equals(mIntent.getAction())){ Collections.sort(mCollections, Anlik.COMPARE_BY_BIRIM); Log.d("****CollectionSize****", "initDataFromService_if: "+mCollections.size()); notify();

我试图修改某些动作的数据,但它抛出了NPE

if("Button1_OnClickTag".equals(mIntent.getAction())){
        Collections.sort(mCollections, Anlik.COMPARE_BY_BIRIM);
        Log.d("****CollectionSize****", "initDataFromService_if: "+mCollections.size());
        notify();
    }
我在RemoteViesFactory的数据初始化中使用了这一部分。我不知道这样做是否正确。如果没有,你能建议其他方法吗? 谢谢

编辑: 代码流通过以下方式达到这一点

if(Button1_OnClick.equals(intent.getAction())){
        sharedPreferences = context.getSharedPreferences("PREFERENCES", context.getApplicationContext().MODE_PRIVATE);
        widgetIdupdate=sharedPreferences.getInt("mWidgetId", 66);
        Toast.makeText(context, "Category1", Toast.LENGTH_SHORT).show();
        //WidgetDataProvider.modifData();
        Log.d("****ONCLICK WIDGETID", "onReceive: " + widgetIdupdate);
        RemoteViews mView = new RemoteViews(context.getPackageName(),R.layout.mudo_life_widget);
        mView.setRemoteAdapter(widgetIdupdate, R.id.list,intent);
        onUpdate(context);
    }
在我的AppWidgetProvider中

public class WidgetService extends RemoteViewsService {

@Override
public RemoteViewsFactory onGetViewFactory(Intent intent) {

    WidgetDataProvider dataProvider = new WidgetDataProvider(
            getApplicationContext(), intent);
    return dataProvider;
}
}

在WidgetService中以及创建WidgetDataProvider时

public WidgetDataProvider(Context context, Intent intent) {mContext = context; mIntent=intent;}
所以我认为它已经被分配给
按钮1\u OnClick

我是不是想错了?

提供的信息很低,可能会重复。你能提供更多的代码和日志吗?