পরিপূরক উত্তর: কী স্ট্রিংয়ের জন্য নামকরণ কনভেনশন
ডেটা পাস করার প্রকৃত প্রক্রিয়া ইতিমধ্যে উত্তর দেওয়া হয়েছে, তবে বেশিরভাগ উত্তরগুলি ইনটেন্টের মূল নামের জন্য হার্ড কোডিং স্ট্রিং ব্যবহার করে। এটি কেবলমাত্র আপনার অ্যাপ্লিকেশনের মধ্যেই ব্যবহৃত হয়ে থাকে। তবে ডকুমেন্টেশনটি ব্যবহার করার পরামর্শ দেয় recommendEXTRA_*
স্ট্যান্ডার্ডযুক্ত ডেটা ধরণের জন্য ধ্রুবকগুলি ।
উদাহরণ 1: Intent.EXTRA_*
কী ব্যবহার করা
প্রথম ক্রিয়াকলাপ
Intent intent = new Intent(getActivity(), SecondActivity.class);
intent.putExtra(Intent.EXTRA_TEXT, "my text");
startActivity(intent);
দ্বিতীয় ক্রিয়াকলাপ:
Intent intent = getIntent();
String myText = intent.getExtras().getString(Intent.EXTRA_TEXT);
উদাহরণ 2: আপনার নিজের সংজ্ঞা দেওয়া static final
কী
Intent.EXTRA_*
স্ট্রিংগুলির মধ্যে একটি যদি আপনার প্রয়োজনের সাথে খাপ খায় না, তবে আপনি প্রথম ক্রিয়াকলাপের শুরুতে নিজের সংজ্ঞা দিতে পারেন।
static final String EXTRA_STUFF = "com.myPackageName.EXTRA_STUFF";
আপনি যদি নিজের অ্যাপ্লিকেশনে কীটি ব্যবহার করেন তবে প্যাকেজের নামটি অন্তর্ভুক্ত করা কেবল একটি সম্মেলন। তবে আপনি যদি এমন কোনও পরিষেবা তৈরি করেন যা অন্য অ্যাপ্লিকেশনগুলি ইন্টেন্টের সাথে কল করতে পারে তবে নামকরণের বিরোধগুলি এড়াতে হবে a
প্রথম ক্রিয়াকলাপ:
Intent intent = new Intent(getActivity(), SecondActivity.class);
intent.putExtra(EXTRA_STUFF, "my text");
startActivity(intent);
দ্বিতীয় ক্রিয়াকলাপ:
Intent intent = getIntent();
String myText = intent.getExtras().getString(FirstActivity.EXTRA_STUFF);
উদাহরণ 3: স্ট্রিং রিসোর্স কী ব্যবহার করা
যদিও ডকুমেন্টেশনে উল্লেখ করা হয়নি, এই উত্তর ক্রিয়াকলাপগুলির মধ্যে নির্ভরতা এড়াতে একটি স্ট্রিং রিসোর্স ব্যবহার করার পরামর্শ দেয়।
strings.xml
<string name="EXTRA_STUFF">com.myPackageName.MY_NAME</string>
প্রথম ক্রিয়াকলাপ
Intent intent = new Intent(getActivity(), SecondActivity.class);
intent.putExtra(getString(R.string.EXTRA_STUFF), "my text");
startActivity(intent);
দ্বিতীয় ক্রিয়াকলাপ
Intent intent = getIntent();
String myText = intent.getExtras().getString(getString(R.string.EXTRA_STUFF));