मैंने इस समस्या के बारे में एक दर्जन ट्यूटोरियल और फोरम उत्तरों के माध्यम से डाला है, लेकिन अभी भी कुछ कामकाजी कोड एक साथ नहीं मिला है। मैं प्रश्न को सीधे रखने की कोशिश करूंगा:एंड्रॉइड में AlarmManager के साथ आप एक गतिविधि कैसे शुरू करते हैं?
किसी दिए गए समय में गतिविधि शुरू करने के लिए आप अलार्ममेनर (एंड्रॉइड एपीआई में) का उपयोग कैसे करते हैं? इस समस्या का कोई समाधान होगा।
इसे प्राप्त करने का मेरा नवीनतम प्रयास नीचे है।
(आयात छोड़े गए। मैं के बाद कार्यक्रम खोला है, जो यह नहीं। कोई त्रुटि संदेशों में से बात करने के लिए कर रहे हैं करता MyActivity 3 सेकंड शुरू करने के लिए उम्मीद है।)
public class AndroidTest2Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Context context = this;//.getApplicationContext();
AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); // CORRECT
Intent intent = new Intent(context, myReceiver.class); // CORRECT
PendingIntent pending = PendingIntent.getBroadcast(context, 0, intent, 0); // CORRECT
manager.set(AlarmManager.RTC, System.currentTimeMillis() + 3000, pending); // CORRECT
setContentView(R.layout.main);
}
}
public class myReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Intent i=new Intent(context, myActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
public class myActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("", "Elusive success");
setContentView(R.layout.main);
}
}
किसी भी सलाह की सराहना की जाएगी।
कृपया ध्यान दें: मैं प्रकट में myReceiver मिल गया है पहले से ही
क्या आपने अपने AndroidManifest में रिसीवर पंजीकृत किया था? –
क्षमा करें, इसका उल्लेख किया जाना चाहिए था। लाइन <रिसीवर एंड्रॉइड: नाम = "। MyReceiver"> के साथ, हाँ मैंने किया। अगर मुझे गलत रेखा है तो मुझे बताएं। – BenLambell