2015-04-02 2 views
0

Я пробую написать код для получения SMS и когда SMS придет со специального номера, сделайте что-нибудь. Я определяю приемник для своего приложения, а затем использовал код ниже, чтобы определить, работает ли приложение, иначе показывается уведомление.Как узнать, что мое приложение Android работает в ресивере?

ActivityManager activityManager = (ActivityManager) context.getSystemService(Activity.ACTIVITY_SERVICE); 
     List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses(); 
     for(int i = 0; i < procInfos.size(); i++){ 
      if(procInfos.get(i).processName.equals(app)){ 
       // set running 
       appState.isRunning = true; 
       break; 
      } 
     } 

Я тестирую этот код с помощью эмулятора и всегда возвращает true. Я отслеживаю свое приложение в DDMS и узнаю, когда я отправляю SMS, запускающее приложение, но без интерфейса.

Как я могу это сделать? Peals help

+0

см. Http://commonsware.com/blog/2010/08/11/activity-notification-ordered-broadcast.html – njzk2

+0

Вы пытаетесь написать код, чтобы проверить, работает ли ваше собственное приложение? – cyroxis

ответ

1

Ваша заявка automatically created перед тем, как ее приемник может работать (где бы он работал иначе?).

Если вы хотите проверить, есть ли какие-либо действия в вашем приложении, для этого нет API, но вы можете просто иметь счетчик, который увеличивается в onCreate и уменьшен в onDestroy.

Смежные вопросы