Android 发送具有挂起意图的数据并进入AppWidgetProvider中的打开活动

Android 发送具有挂起意图的数据并进入AppWidgetProvider中的打开活动,android,android-widget,android-pendingintent,Android,Android Widget,Android Pendingintent,当我激发一个待定的意图时,我将发送数据。打开活动后,我将获取数据。但它什么也没做。我不知道代码中有什么错误。请帮帮我 这是我发送数据的代码 public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { super.onUpdate(context, appWidgetManager, appWidgetIds); System.out

当我激发一个待定的意图时,我将发送数据。打开活动后,我将获取数据。但它什么也没做。我不知道代码中有什么错误。请帮帮我

这是我发送数据的代码

public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {

    super.onUpdate(context, appWidgetManager, appWidgetIds);

    System.out.println("id len: " + appWidgetIds.length);


    for (int i = 0; i < appWidgetIds.length; i++) 
    {
        int appWidgetId = appWidgetIds[i];

        System.out.println("id : " + appWidgetId);  

        Intent intent = new Intent(context, Report.class);
        PendingIntent pend = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        RemoteViews view = new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.repClear, pend);

        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent1 = new Intent(context, Map.class);
        intent1.putExtra("widgetId", appWidgetId);
        PendingIntent pend1 = PendingIntent.getActivity(context, 0, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        view= new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton1, pend1);
        //intent1.putExtra("string", "view.getId()");
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent2 = new Intent(context, Map.class);
        PendingIntent pend2 = PendingIntent.getActivity(context, 0, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
        view= new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton2, pend2);
        //intent2.putExtra("string", "view.getId()");
        appWidgetManager.updateAppWidget(appWidgetId, view);}
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {

    super.onUpdate(context, appWidgetManager, appWidgetIds);

    System.out.println("id len: " + appWidgetIds.length);

    for (int i = 0; i < appWidgetIds.length; i++) {
        int appWidgetId = appWidgetIds[i];

        System.out.println("id : " + appWidgetId);

        Intent intent = new Intent(context, Report.class);
        PendingIntent pend = PendingIntent.getActivity(context, 0, intent,PendingIntent.FLAG_UPDATE_CURRENT);
        RemoteViews view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.repClear, pend);
        // view.setViewVisibility(R.id.repClear, View.INVISIBLE);
        // view.setViewVisibility(R.id.repClear1, View.VISIBLE);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent1 = new Intent(context, Map.class);
        intent1.putExtra("data 1", true);
        intent1.setAction("myString1"+ 1);
        PendingIntent pend1 = PendingIntent.getActivity(context, 1, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton1, pend1);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent2 = new Intent(context, Map.class);
        intent2.putExtra("data 2", true);
        intent2.setAction("myString2"+ 2);
        PendingIntent pend2 = PendingIntent.getActivity(context, 2, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton2, pend2);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent3 = new Intent(context, Map.class);
        intent3.putExtra("data 3", true);
        intent3.setAction("myString3"+ 3);
        PendingIntent pend3 = PendingIntent.getActivity(context, 3, intent3, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton3, pend3);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent4 = new Intent(context, Map.class);
        intent4.putExtra("data 4", true);
        intent4.setAction("myString4"+ 4);
        PendingIntent pend4 = PendingIntent.getActivity(context, 4, intent4, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton4, pend4);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent5 = new Intent(context, Map.class);
        intent5.putExtra("data 5", true);
        intent5.setAction("myString5"+ 5);
        PendingIntent pend5 = PendingIntent.getActivity(context, 5, intent5, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton5, pend5);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent6 = new Intent(context, Map.class);
        intent6.putExtra("data 6", true);
        intent6.setAction("myString6"+ 6);
        PendingIntent pend6 = PendingIntent.getActivity(context, 6, intent6, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton6, pend6);
        appWidgetManager.updateAppWidget(appWidgetId, view);

    }
}

最后我解决了这个问题。这不是最好的解决方案,但可能会对您有所帮助

下面是发送数据的代码

public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {

    super.onUpdate(context, appWidgetManager, appWidgetIds);

    System.out.println("id len: " + appWidgetIds.length);


    for (int i = 0; i < appWidgetIds.length; i++) 
    {
        int appWidgetId = appWidgetIds[i];

        System.out.println("id : " + appWidgetId);  

        Intent intent = new Intent(context, Report.class);
        PendingIntent pend = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        RemoteViews view = new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.repClear, pend);

        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent1 = new Intent(context, Map.class);
        intent1.putExtra("widgetId", appWidgetId);
        PendingIntent pend1 = PendingIntent.getActivity(context, 0, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        view= new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton1, pend1);
        //intent1.putExtra("string", "view.getId()");
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent2 = new Intent(context, Map.class);
        PendingIntent pend2 = PendingIntent.getActivity(context, 0, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
        view= new RemoteViews(context.getPackageName(),R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton2, pend2);
        //intent2.putExtra("string", "view.getId()");
        appWidgetManager.updateAppWidget(appWidgetId, view);}
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) {

    super.onUpdate(context, appWidgetManager, appWidgetIds);

    System.out.println("id len: " + appWidgetIds.length);

    for (int i = 0; i < appWidgetIds.length; i++) {
        int appWidgetId = appWidgetIds[i];

        System.out.println("id : " + appWidgetId);

        Intent intent = new Intent(context, Report.class);
        PendingIntent pend = PendingIntent.getActivity(context, 0, intent,PendingIntent.FLAG_UPDATE_CURRENT);
        RemoteViews view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.repClear, pend);
        // view.setViewVisibility(R.id.repClear, View.INVISIBLE);
        // view.setViewVisibility(R.id.repClear1, View.VISIBLE);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent1 = new Intent(context, Map.class);
        intent1.putExtra("data 1", true);
        intent1.setAction("myString1"+ 1);
        PendingIntent pend1 = PendingIntent.getActivity(context, 1, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton1, pend1);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent2 = new Intent(context, Map.class);
        intent2.putExtra("data 2", true);
        intent2.setAction("myString2"+ 2);
        PendingIntent pend2 = PendingIntent.getActivity(context, 2, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton2, pend2);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent3 = new Intent(context, Map.class);
        intent3.putExtra("data 3", true);
        intent3.setAction("myString3"+ 3);
        PendingIntent pend3 = PendingIntent.getActivity(context, 3, intent3, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton3, pend3);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent4 = new Intent(context, Map.class);
        intent4.putExtra("data 4", true);
        intent4.setAction("myString4"+ 4);
        PendingIntent pend4 = PendingIntent.getActivity(context, 4, intent4, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton4, pend4);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent5 = new Intent(context, Map.class);
        intent5.putExtra("data 5", true);
        intent5.setAction("myString5"+ 5);
        PendingIntent pend5 = PendingIntent.getActivity(context, 5, intent5, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton5, pend5);
        appWidgetManager.updateAppWidget(appWidgetId, view);

        Intent intent6 = new Intent(context, Map.class);
        intent6.putExtra("data 6", true);
        intent6.setAction("myString6"+ 6);
        PendingIntent pend6 = PendingIntent.getActivity(context, 6, intent6, PendingIntent.FLAG_UPDATE_CURRENT);
        view = new RemoteViews(context.getPackageName(), R.layout.widget_main_1);
        view.setOnClickPendingIntent(R.id.imageButton6, pend6);
        appWidgetManager.updateAppWidget(appWidgetId, view);

    }
}