Android BroadcastReceiver, getResultData () всегда возвращает ноль - PullRequest
0 голосов
/ 05 сентября 2011

Я новичок в разработке Android и Java. В настоящее время у меня есть небольшое задание для информирования о батарее в виде виджета .

Я искал и нашел кусок исходного кода для извлечения информации из батареи (http://www.tutorialforandroid.com/2009/01/getting-battery-information-on-android.html). Я пытался адаптировать его к виджету, но у меня была проблема с BroadcastReceiver . Я пытался передать значение уровня заряда батареи от BroadcastReceiver к RemoteViews. Я нашел метод getResultData () для объекта BroadcastReceiver, но всегда получаю для него значение Null.

Поэтому я хотел бы предложить передать это значение BroadcastReceiver в RemoteViews.

Чтобы прояснить ситуацию, я добавляю сюда часть своего кода.

public class MyBattery extends TimerTask {
    RemoteViews remoteViews;
    AppWidgetManager appWidgetmanager;
    ComponentName thisWidget;
    TextView contentTxt; 

    Context context;
    public MyBattery(Context context, AppWidgetManager appWidgetManager){
        this.appWidgetmanager = appWidgetManager;
        remoteViews = new RemoteViews(context.getPackageName(),R.layout.main);
        thisWidget = new ComponentName(context,widgetTest.class);
        this.context = context;
    }

    private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver(){

        @Override
        public void onReceive(Context arg0, Intent intent){
            int level = intent.getIntExtra("level", 0);

            contentTxt.setText(String.valueOf(level)+"%");
            this.setResultData(String.valueOf(level)+"%");
        }
    };
    @Override
    public void run() {
        remoteViews.setTextViewText(R.id.battery_label,""+ this.mBatInfoReceiver.getResultData());
        appWidgetmanager.updateAppWidget(thisWidget, remoteViews);

    }


}

1 Ответ

0 голосов
/ 05 сентября 2011

проверьте этот учебник, так как он поможет вам построить концепцию на BraodCastReceiver:

http://www.vogella.de/articles/AndroidServices/article.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...