मैं ऑन-अपडेट() विधि में कुछ एरे शुरू करता हूं और उसके बाद, एक इरादा और बटन का उपयोग करके, मैं ऑनसेप्ट() फ़ंक्शन पर कॉल करने का प्रयास करता हूं जो ठीक चलता है लेकिन अपडेट() विधि में सेट किए गए सरणी तक नहीं पहुंच सकता है। ऐसा क्यों है? वे सरणी ऑब्जेक्ट चर हैं और सार्वजनिक घोषित की जाती हैं। क्या मुझे कुछ याद आ रही है?अद्यतन पर विजेट, ऑन रीसीव
onReady():
package net.aerosoftware.widgettest;
import java.util.HashMap;
import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.RemoteViews;
public class WidgetTest extends AppWidgetProvider {
public static String ACTION_WIDGET_RECEIVER = "ActionReceiverWidget";
public HashMap<Integer, String> channelsImages;
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)
{
Log.e("UPDATE", "Start");
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.main);
channelsImages = new HashMap<Integer, String>();
channelsImages.put(0, "one");
channelsImages.put(1, "two");
Intent active = new Intent(context, WidgetTest.class);
active.setAction(ACTION_WIDGET_RECEIVER);
PendingIntent actionPendingIntent = PendingIntent.getBroadcast(context, 0, active, 0);
remoteViews.setOnClickPendingIntent(R.id.buttonclick, actionPendingIntent);
super.onUpdate(context, appWidgetManager, appWidgetIds);
appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);
Log.e("UPDATE", "End");
}
@Override
public void onReceive(Context context, Intent intent)
{
Log.e("RECEIVE", "Start 2");
if (intent.getAction().equals(ACTION_WIDGET_RECEIVER))
{
try
{
Log.e("SIZE", "Size Of channel array: "+channelsImages.size());
}
catch(Exception e)
{
Log.e("ON_RECIEVE_ERROR", " "+e.getMessage());
}
}
super.onReceive(context, intent);
Log.e("RECEIVE", "End");
}
}
"एक्सेस नहीं कर सकते" से आपका क्या मतलब है? क्या आपको कोई अपवाद मिलता है? सामग्री खाली है? – DuduAlul
हां, शून्य सूचक अपवाद। – dfilkovi
क्या आप अपने प्रश्न में कोड जोड़ सकते हैं, जिससे चीजों को आसान बना दिया जाएगा। – DuduAlul