Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Android

จะเริ่มบริการเมื่อบูตในแอป Android ได้อย่างไร


ตัวอย่างนี้สาธิตวิธีการทำงานใน Android

ขั้นตอนที่ 1 − สร้างโครงการใหม่ใน Android Studio ไปที่ไฟล์ ⇒ โครงการใหม่และกรอกรายละเอียดที่จำเป็นทั้งหมดเพื่อสร้างโครงการใหม่

ขั้นตอนที่ 2 − เพิ่มรหัสต่อไปนี้ใน res/layout/activity_main.xml

 

ขั้นตอนที่ 3 – สร้างคลาส Java ใหม่ (StartAppOnBoot.java) และเพิ่มรหัสต่อไปนี้ -

นำเข้า android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent คลาสสาธารณะ StartAppOnBoot ขยาย BroadcastReceiver { @Override public void onReceive (บริบทบริบท, เจตนาเจตนา) { if (Intent.ACTION_BOOT_COMPLETED.equals (intent.getAction())) { Intent i =เจตนาใหม่ (บริบท MainActivity.class); i.addFlags(เจตนา.FLAG_ACTIVITY_NEW_TASK); บริบท.startActivity(i); } }}

ขั้นตอนที่ 4 – สร้างบริการใหม่ (RunServiceOnBoot.java) และเพิ่มรหัสต่อไปนี้ -

<ก่อนหน้า> นำเข้า android.content.Intent นำเข้า android.os.Handler นำเข้า android.os.IBinder นำเข้า android.util.Log นำเข้า android.widget.Toast คลาสสาธารณะ RunServiceOnBoot ขยาย android.app.Service { สแตติกส่วนตัว สตริง TAG ="MyService"; ตัวจัดการ Handler ส่วนตัว; Runnable ส่วนตัว runnable; รันไทม์ int สุดท้ายส่วนตัว =5000; @แทนที่โมฆะสาธารณะ onCreate() { super.onCreate(); Toast.makeText(นี่คือ "เริ่มบริการ", Toast.LENGTH_SHORT).show(); Log.i(TAG, "onCreate"); ตัวจัดการ =ตัวจัดการใหม่ (); runnable =ใหม่ Runnable () { @Override public void run () { handler.postDelayed (runnable, runTime); } }; handler.post (รันได้); } @Override สาธารณะ IBinder onBind (เจตนาเจตนา) { คืนค่า null; } @แทนที่โมฆะสาธารณะ onDestroy () { ถ้า (ตัวจัดการ !=null) { handler.removeCallbacks (เรียกใช้ได้); } super.onDestroy(); } @Override สาธารณะ int onStartCommand (เจตนาเจตนา, แฟล็ก int, int startId) { ส่งคืน START_STICKY; } @SuppressWarnings("deprecation") @Override public void onStart(เจตนาเจตนา int startId) { super.onStart(intent, startId); Log.i(TAG, "onStart"); }}

ขั้นตอนที่ 5 − เพิ่มรหัสต่อไปนี้ใน src/MainActivity.java

<ก่อนหน้า> นำเข้า android.content.Intent นำเข้า android.os.Bundle นำเข้า android.support.v7.app.AppCompatActivity คลาสสาธารณะ MainActivity ขยาย AppCompatActivity { @Override public void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); เจตนาเจตนา 1 =เจตนาใหม่ (MainActivity.this, RunServiceOnBoot.class); startService(เจตนา1); }}

ขั้นตอนที่ 6 – เพิ่มรหัสต่อไปนี้ใน androidManifest.xml

          <เจตนา -filter>     <บริการ android :name=" .RunServiceOnBoot" />

มาลองเรียกใช้แอปพลิเคชันของคุณกัน ฉันคิดว่าคุณได้เชื่อมต่ออุปกรณ์มือถือ Android จริงกับคอมพิวเตอร์ของคุณ ในการรันแอพจาก android studio ให้เปิดไฟล์กิจกรรมของโปรเจ็กต์แล้วคลิกไอคอน Run จากแถบเครื่องมือ เลือกอุปกรณ์มือถือของคุณเป็นตัวเลือก จากนั้นตรวจสอบอุปกรณ์มือถือของคุณซึ่งจะแสดงหน้าจอเริ่มต้นของคุณ –

จะเริ่มบริการเมื่อบูตในแอป Android ได้อย่างไร


จะเริ่มบริการเมื่อบูตในแอป Android ได้อย่างไร


จะเริ่มบริการเมื่อบูตในแอป Android ได้อย่างไร