ответ

-3

Добавить эту строку в BroadcastReceiver

YourActivity.Update(); 

К этому создать статический метод Update() в классе деятельности и делать все вещи вы хотите в методе Update().

-1

В деятельности:

 class TestActivity extends Activity{ 
     private static TestActivity Obj; 

     public TestActivity(){ 
       Obj=this; 
      } 

     public static getInstance(){ 
      return Obj; 
      } 
     public void refresh(){ 
     //refresh Logic here 
     } 
     } 

В Receiver:

 public TestReceiver extends BroadcastReceiver{ 
       ........ OnReceive(){ 


     if(TestActivity.getInstance()!=null){ 
      TestActivity.getInstance().refresh(); 
      } 
      } 
     } 
0

Привет, ребята, как я могу сделать, чтобы освежить действия из класса, которые проходят BroadcastReceiver?

Вы можете достичь этого, добавив BroadcastReceiver в свою деятельность и отправляя в него вещание в своем классе, который расширяет BroadcastReceiver.

Зарегистрируйте BroadcastReceiver в своей деятельности:

IntentFilter filter = new IntentFilter("yourpackagename.updateActivity"); 
registerReceiver(new BroadcastReceiver(){ 
    public void onReceive(Context context, Intent intent) { 
     // Update your Activity here. 
    } 
}, filter); 

Отправить радиопередачу для этой деятельности в своем классе, который простирается BroadcastReceiver:

public void onReceive(Context context, Intent intent) { 
     if(meet the condition){ 
      Intent i = new Intent("yourpackagename.updateActivity"); 
      context.sendBroadcast(i); 
     } 
    } 

PS. Это решение может гарантировать, что каждое действие получит уведомление об обновлении, когда есть более одного экземпляра Activity, в то время как решение статического поля не может этого гарантировать.