चलाने के लिए मैं एक वर्ग जो BroadcastReceiver
फैली है। एक एसएमएस प्राप्त करने पर, मैं बॉक्स में टेक्स्ट प्रदर्शित करने के लिए अपनी मुख्य गतिविधि कक्षा में जानकारी पास करना चाहता हूं (संलग्न करें, यदि पहले से ही टेक्स्ट मौजूद है)।BroadcastReceiver वर्ग से भेजा जा रहा है आशय वर्तमान गतिविधि
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent)
{
Intent i = new Intent(context, MainActivity.class);
i.putExtra("updatedString","Hello");
context.startActivity(i);
}
}
MainActivity.java
public class MainActivity extends Activity{
private TextView results;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Bundle extras = getIntent().getExtras();
if(extras!=null){
results = (TextView) findViewById(R.id.results);
results.setVisibility(View.VISIBLE);
results.append(extras.getString("updatedString"));
}
}
मैं केवल एक गतिविधि वर्ग (MainActivity.java
) है। हालांकि जब मैं ऐसा करता हूं तो मुझे अपवाद मिलता है गतिविधि को रोकने में असमर्थ। MainActivity
private BroadcastReceiver smsReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//you can update textBox here
handler.postDelayed(sendUpdatesToUI, 10);
}
};
में onCreate()
registerReceiver(smsReceiver, new IntentFilter(SMS_RECIEVED));
में और परिभाषित smsReciver एक runnable को परिभाषित:
1) आप इस तरह अपने MainActivity
अंदर अपने प्रसारण को परिभाषित कर सकते हैं:
मैं एसएमएसआरसीवर कक्षा से संदेश कैसे भेजूं।मैंने निम्नलिखित कोड लिखा है: इरादा i = नया इरादा ("SMS_RECIEVED"); i.putExtra ("अपडेटस्ट्रिंग", str); स्थानीय ब्रॉडकास्ट प्रबंधक mgr = LocalBroadcastManager.getInstance (संदर्भ); mgr.sendBroadcast (i); – user1692342
आप किस तरह से उपयोग करना चाहते हैं? 1 या 2 या 3? – MHP
मैं विधि 1 – user1692342