উদাহরণে যাওয়ার আগে, আমাদের জানা উচিত অ্যান্ড্রয়েডে ইন্টেন্ট পরিষেবা কী। ইনটেন্ট সার্ভিস অ্যাসিঙ্ক্রোনাসভাবে ব্যাকগ্রাউন্ড অপারেশন করতে যাচ্ছে। যখন ব্যবহারকারী ক্রিয়াকলাপ থেকে startService() কল করে, তখন এটি প্রতিটি অনুরোধের জন্য দৃষ্টান্ত তৈরি করে না এবং পরিষেবা ক্লাসে কিছু কাজ করার পরে এটি পরিষেবা বন্ধ করে দেয় বা অন্যথায় আমাদের stopSelf() ব্যবহার করে ম্যানুয়ালি পরিষেবা বন্ধ করতে হবে।
এই উদাহরণটি Android স্টপ নির্দিষ্ট IntentService সম্পর্কে প্রদর্শন করে৷
৷ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷
ধাপ 2 − res/layout/activity_main.xml-এ নিম্নলিখিত কোড যোগ করুন।
উপরের কোডে, আমরা টেক্সট ভিউ নিয়েছি, যখন ব্যবহারকারী ইনটেন্ট সার্ভিস থেকে ডেটা পাবে তখন তা আপডেট হবে। ধাপ 3 − src/MainActivity.java
-এ নিম্নলিখিত কোড যোগ করুনপ্যাকেজ com.example.andy.myapplication; android.content.BroadcastReceiver আমদানি করুন; android.content.Context আমদানি করুন; android.content.Intent আমদানি করুন; android.content.IntentFilter আমদানি করুন; android.os.Bundle আমদানি করুন; Android আমদানি করুন৷ support.v7.app.AppCompatActivity;import android.view.View;import android.widget.TextView;পাবলিক ক্লাস MainActivity AppCompatActivity প্রসারিত করে { TextView text; BroadcastReceiver broadcastReceiver =new BroadcastReceiver() { @Override public void onReceive(প্রসঙ্গ প্রসঙ্গ, উদ্দেশ্য অভিপ্রায়) { স্ট্রিং s1 =intent.getStringExtra("DATAPASSED"); text.setText(s1); } }; @Override সুরক্ষিত শূন্যতা onStart() { super.onStart(); IntentFilter intentFilter =নতুন IntentFilter(); intentFilter.addAction("com.example.andy.myapplication"); registerReceiver(broadcastReceiver, intentFilter); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); text =findViewById(R.id.text); text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startService(new Intent(MainActivity.this, service.class)); } }); } @ওভাররাইড সুরক্ষিত অকার্যকর অনস্টপ() { super.onStop(); রেজিস্টার রিসিভার (ব্রডকাস্ট রিসিভার); }}উপরের কোডে, আমরা একটি সার্ভিস ক্লাস এবং ডায়নামিক ব্রডকাস্ট রিসিভার তৈরি করেছি যা নীচে দেখানো হয়েছে –
@Overrideprotected void onStart() { super.onStart(); IntentFilter intentFilter =নতুন IntentFilter(); intentFilter.addAction("com.example.andy.myapplication"); registerReceiver(broadcastReceiver, intentFilter);}…………………………………………..BroadcastReceiver broadcastReceiver =new BroadcastReceiver() { @Override public void onReceive(প্রসঙ্গ প্রসঙ্গ, উদ্দেশ্য অভিপ্রায়) { স্ট্রিং s1 =intent.getStringExtra("DATAPASSED"); text.setText(s1); }};…………………………………………………………………………………..@অভাররাইডপ্রোটেক্টেড ভ্যায়েড অনস্টপ() { super.onStop(); unregisterReceiver(broadcastReceiver);}service.class ফাইল নামে একটি ক্লাস তৈরি করুন এবং নিম্নলিখিত কোড যোগ করুন –
প্যাকেজ com.example.andy.myapplication;import android.app.IntentService;import android.content.Intent;import android.os.IBinder;পাবলিক ক্লাস সার্ভিস IntentService প্রসারিত করে { পাবলিক স্ট্যাটিক ভোলাটাইল বুলিয়ান shouldStop =মিথ্যা; পাবলিক সার্ভিস() { সুপার(service.class.getSimpleName()); } @Override public IBinder onBind(Intent intent) { রিটার্ন নাল; } @Override protected void onHandleIntent(Intent intent) { Intent intent1 =new Intent(); intent1.setAction("com.example.andy.myapplication"); intent1.putExtra("DATAPASSED", "Tutorialspoint.com"); sendBroadcast(intent1); if(stop) { stopSelf(); প্রত্যাবর্তন } } }পরিষেবা বন্ধ করতে, পরিষেবা শ্রেণিতে নিম্নলিখিত কোডটি ব্যবহার করুন –
stopSelf();পদক্ষেপ 4৷ - manifest.xml
-এ নিম্নলিখিত কোড যোগ করুন<অ্যাপ্লিকেশন android:allowBackup ="true" android:icon ="@mipmap/ic_launcher" android:label ="@string/app_name " android:roundIcon ="@mipmap/ic_launcher_round" android:supportsRtl ="true" android:theme ="@style/AppTheme"> <অ্যাক্টিভিটি android:name =".MainActivity"> আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং রান আইকনে ক্লিক করুন টুলবার থেকে । একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে –
উপরের ফলাফলে, এটি একটি অ্যাপ্লিকেশনের ডিফল্ট স্ক্রীন দেখায়। যখন ব্যবহারকারী “Start Service”-এ ক্লিক করেন তখন এটি পরিষেবা শুরু করবে এবং নীচে দেখানো টেক্সটভিউ আপডেট করবে-
মেইনঅ্যাক্টিভিটিতে সম্প্রচার পাঠানোর পরে, এটি অভিপ্রায় পরিষেবা বন্ধ করে দেবে৷
৷