কম্পিউটার

অ্যান্ড্রয়েডে কীভাবে একটি ব্রডকাস্ট রিসিভারে একটি কাস্টম ইন্টেন্ট ফিল্টার নিবন্ধন করবেন?


উদাহরণে যাওয়ার আগে, আমাদের জানা উচিত অ্যান্ড্রয়েডে ইনটেন্ট ফিল্টার কী। একটি ইন্টেন্ট ফিল্টার হল IntentFilter ক্লাসের একটি উদাহরণ। অন্তর্নিহিত উদ্দেশ্য ব্যবহার করার সময় ইন্টেন্ট ফিল্টার সহায়ক, এটি জাভা কোডে পরিচালনা করা যাচ্ছে না, আমাদের এটিকে AndroidManifest.xml-এ সেট আপ করতে হবে। অ্যান্ড্রয়েডকে অবশ্যই জানতে হবে যে এটি কী ধরনের অভিপ্রায় চালু করছে তাই অভিপ্রায় ফিল্টারগুলি অভিপ্রায় এবং অ্যাকশন সম্পর্কে অ্যান্ড্রয়েডকে তথ্য দেয়৷

উদ্দেশ্য লঞ্চ করার আগে, অ্যান্ড্রয়েড অ্যাকশন টেস্ট, ক্যাটাগরি টেস্ট এবং ডেটা টেস্ট পরীক্ষা করতে যাচ্ছে। এই উদাহরণটি দেখায় যে কীভাবে অ্যান্ড্রয়েডে একটি সম্প্রচার রিসিভারে কাস্টম অভিপ্রায় ফিল্টার ব্যবহার করতে হয়৷

ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷

ধাপ 2 − নিম্নলিখিত কোডটি res/layout/activity_main.xml-এ যোগ করুন।

 <বোতাম android:id="@+id/buton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" ইনটেন্ট ফিল্টার রেজিস্টার বোতাম" /> <বোতাম android:id="@+id/buton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ডেটা পাঠান" /> 

উপরের কোডে আমাদের দুটি বোতাম রয়েছে, একটি উদ্দেশ্য নিবন্ধন করার জন্য এবং অন্যটি সম্প্রচারের জন্য ডেটা পাঠানোর জন্য৷

প্যাকেজ 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.util.Log;import android.view.View;import android.widget.Button; import android.widget.RadioButton;import android.widget.Toast;পাবলিক ক্লাস মেইনঅ্যাক্টিভিটি AppCompatActivity প্রসারিত করে {RadioButton রেডিও বোতাম; @ওভাররাইড সুরক্ষিত শূন্যতা onCreate(বান্ডেল savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); চূড়ান্ত বোতাম বোতাম =findViewById(R.id.buton); চূড়ান্ত বোতাম পাঠান =findViewById(R.id.buton1); send.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent=new Intent("com.example.andy.CUSTOM_INTENT"); sendBroadcast(intent); } }); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { registerReceiver(mMessageReceiver,new IntentFilter("com.example.andy.CUSTOM_INTENT"));}} } ব্যক্তিগত ব্রডকাস্টরিসিভার mMessageReceiver =নতুন BroadcastReceiver() { @Override public void onReceive(প্রসঙ্গ প্রসঙ্গ, অভিপ্রায় অভিপ্রায়) { // ইন্টেন্ট স্ট্রিং বার্তায় অন্তর্ভুক্ত ডেটা এক্সট্র্যাক্ট করুন =intent.getAction(); Toast.makeText(MainActivity.this,message,Toast.LENGTH_LONG).show(); } }; @অভাররাইড সুরক্ষিত শূন্যতা অনপজ() { super.onPause(); unregisterReceiver(mMessageReceiver); }}

আপনি বোতামে ক্লিক করলে এটি কাস্টম ব্রডকাস্ট অ্যাকশন ব্যবহার করে রিসিভার নিবন্ধন করবে যেমন নীচে দেখানো হয়েছে -

registerReceiver(mMessageReceiver,নতুন IntentFilter("com.example.andy.CUSTOM_INTENT"));

এটি একটি ডায়নামিক ব্রডকাস্ট রিসিভার তাই আমাদের অনপজ() নিচে দেখানো হিসাবে আনরেজিস্টার করা উচিত-

আনরেজিস্টার রিসিভার(mMessageReceiver);

ব্রডকাস্ট পাঠানোর জন্য আরও একটি বোতাম আছে। এটি নীচে দেখানো হিসাবে রিসিভার নিবন্ধন করার জন্য অ্যাকশন এবং ডেটা পাঠাবে -

ইন্টেন্ট ইন্টেন্ট=নতুন ইন্টেন্ট("com.example.andy.CUSTOM_INTENT");SendBroadcast(intent);

এটি ডায়নামিক ব্রডকাস্ট রেজিস্টার তাই ব্রডকাস্ট রিসিভারের জন্য আমাদের একটি নতুন রিসিভার ফাইল তৈরি করতে হবে না তাই আমরা নীচে দেখানো একই কার্যকলাপে ব্রডকাস্ট রিসিভার ঘোষণা করেছি -

private BroadcastReceiver mMessageReceiver =new BroadcastReceiver() { @Override public void onReceive(প্রসঙ্গ প্রসঙ্গ, উদ্দেশ্য অভিপ্রায়) { // ইন্টেন্ট স্ট্রিং বার্তায় অন্তর্ভুক্ত ডেটা এক্সট্র্যাক্ট করুন =intent.getAction(); Toast.makeText(MainActivity.this,message,Toast.LENGTH_LONG).show(); }};

উপরের কোডে এটি কাজ হিসাবে উদ্দেশ্য থেকে ডেটা গ্রহণ করবে এবং টোস্টে মুদ্রণ করবে। আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং টুলবার থেকে রান আইকনে ক্লিক করুন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে -

অ্যান্ড্রয়েডে কীভাবে একটি ব্রডকাস্ট রিসিভারে একটি কাস্টম ইন্টেন্ট ফিল্টার নিবন্ধন করবেন?

প্রথমে আমরা "ইন্টেন্ট ফিল্টার রেজিস্টার বোতাম"-এ ক্লিক করে একটি রিসিভার নিবন্ধন করেছি এবং নীচের মতো টোস্ট দেখানোর জন্য ডেটা পাঠাতে ক্লিক করুন -

অ্যান্ড্রয়েডে কীভাবে একটি ব্রডকাস্ট রিসিভারে একটি কাস্টম ইন্টেন্ট ফিল্টার নিবন্ধন করবেন?


  1. অ্যান্ড্রয়েডে একটি কাস্টম ডায়ালগ বক্স কীভাবে তৈরি করবেন?

  2. কিভাবে অ্যান্ড্রয়েডে একটি ব্রডকাস্ট রিসিভার প্রোগ্রাম্যাটিকভাবে নিবন্ধন করবেন?

  3. অ্যান্ড্রয়েডে সার্চভিউ দিয়ে কীভাবে রিসাইক্লারভিউ ফিল্টার করবেন?

  4. অ্যান্ড্রয়েডে কাস্টম অঙ্গভঙ্গি কীভাবে যুক্ত করবেন