Я пытаюсь отправить дополнительную информацию получателю вещания. Я всегда получаю нулевое значение. Может ли кто-нибудь помочь мне исправить это?Отправить значение broadcastReceiver Intent Filter
Вот что я пробовал:
IntentFilter intentFilter = new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE);
context.registerReceiver(downloadReceiver, intentFilter);
Intent intent2 = new Intent("my.action.string");
intent2.putExtra("value", position);
context.sendBroadcast(intent2);
И в моем BroadcastReceiver
:
private BroadcastReceiver downloadReceiver = new BroadcastReceiver()
{
public int value=5;
@Override
public void onReceive(Context arg0, Intent intent)
{
String action = intent.getAction();
value = Integer.valueOf(intent.getExtras().getString("value"));
if(action.equals("android.intent.action.DOWNLOAD_COMPLETE"))
{
Log.e("Value","+ - "+value);
CheckDwnloadStatus(value);
}
}
};
Спасибо!
Вы пытаетесь получить значение '' 'extra как' String'. Является ли 'position' a' String'? Похоже, это может быть числовой тип. –
Да. Это целое число. Следовательно, я получаю преобразование в целое число при его получении. –
Вам нужно использовать метод 'getInt()' вместо метода getString(). –