বিশ্বস্ত ওয়েব ক্রিয়াকলাপগুলি সেট আপ করা কিছুটা জটিল হতে পারে, বিশেষ করে যদি আপনি যা করতে চান তা হল আপনার ওয়েবসাইট প্রদর্শন৷ এই নির্দেশিকাটি আপনাকে একটি মৌলিক প্রকল্প তৈরি করতে নিয়ে যাবে যা বিশ্বস্ত ওয়েব অ্যাক্টিভিটিগুলি ব্যবহার করে, সমস্ত গোটচাগুলিকে কভার করে৷
এই গাইডের শেষে, আপনি করবেন:
- একটি বিশ্বস্ত ওয়েব কার্যকলাপ ব্যবহার করে এবং যাচাইকরণ পাস করে এমন একটি অ্যাপ্লিকেশন তৈরি করতে Bubblewrap ব্যবহার করেছেন৷
- আপনার সাইনিং কীগুলি কখন ব্যবহার করা হয় তা বুঝুন।
- আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটি যে স্বাক্ষর দিয়ে তৈরি করা হচ্ছে তা নির্ধারণ করতে সক্ষম হন।
- জানুন কিভাবে একটি মৌলিক ডিজিটাল সম্পদ লিঙ্ক ফাইল তৈরি করতে হয়।
এই নির্দেশিকা অনুসরণ করতে আপনার প্রয়োজন হবে:
- উন্নয়ন কম্পিউটারে Node.js 10 বা তার বেশি ইনস্টল করা আছে।
- একটি অ্যান্ড্রয়েড ফোন বা এমুলেটর সংযুক্ত এবং বিকাশের জন্য সেট আপ (যদি আপনি একটি শারীরিক ফোন ব্যবহার করেন তবে USB ডিবাগিং সক্ষম করুন )।
- একটি ব্রাউজার যা আপনার ডেভেলপমেন্ট ফোনে বিশ্বস্ত ওয়েব কার্যকলাপ সমর্থন করে। Chrome 72 বা তার পরে কাজ করবে। অন্যান্য ব্রাউজারে সমর্থন তার পথে।
- একটি ওয়েবসাইট যা আপনি বিশ্বস্ত ওয়েব কার্যকলাপে দেখতে চান৷
একটি বিশ্বস্ত ওয়েব কার্যকলাপ আপনার Android অ্যাপকে কোনো ব্রাউজার UI ছাড়াই একটি পূর্ণ স্ক্রীন ব্রাউজার ট্যাব চালু করতে দেয়৷ এই ক্ষমতা আপনার মালিকানাধীন ওয়েবসাইটগুলিতে সীমাবদ্ধ, এবং আপনি ডিজিটাল সম্পদ লিঙ্ক সেট আপ করে এটি প্রমাণ করেন। আমরা পরে তাদের সম্পর্কে আরও কথা বলব।
আপনি যখন একটি বিশ্বস্ত ওয়েব অ্যাক্টিভিটি চালু করবেন, তখন ব্রাউজার চেক করবে যে ডিজিটাল অ্যাসেট লিঙ্কগুলি চেক আউট করেছে, একে ভেরিফিকেশন বলে। যাচাইকরণ ব্যর্থ হলে, ব্রাউজার আপনার ওয়েবসাইটটিকে একটি কাস্টম ট্যাব হিসাবে প্রদর্শন করতে ফিরে আসবে৷
Bubblewrap ইনস্টল এবং কনফিগার করুন
Bubblewrap হল Node.js-এর জন্য লাইব্রেরির একটি সেট এবং একটি কমান্ড লাইন টুল (CLI) যা ডেভেলপারদের বিশ্বস্ত ওয়েব অ্যাক্টিভিটি ব্যবহার করে অ্যান্ড্রয়েড অ্যাপ্লিকেশানগুলির মধ্যে প্রগতিশীল ওয়েব অ্যাপ তৈরি, তৈরি এবং চালাতে সাহায্য করে৷
CLI নিম্নলিখিত কমান্ড দিয়ে ইনস্টল করা যেতে পারে:
npm i -g @bubblewrap/cli
পরিবেশ স্থাপন করা
প্রথমবার বাবল র্যাপ চালানোর সময়, এটি প্রয়োজনীয় বাহ্যিক নির্ভরতা স্বয়ংক্রিয়ভাবে ডাউনলোড এবং ইনস্টল করার প্রস্তাব দেবে। আমরা টুলটিকে এটি করার অনুমতি দেওয়ার পরামর্শ দিই, কারণ এটি নিশ্চিত করে যে নির্ভরতাগুলি সঠিকভাবে কনফিগার করা হয়েছে। একটি বিদ্যমান জাভা ডেভেলপমেন্ট কিট (JDK) বা অ্যান্ড্রয়েড কমান্ড লাইন টুল ইনস্টলেশন ব্যবহার করতে বাবল র্যাপ ডকুমেন্টেশন পরীক্ষা করুন।
প্রকল্পের সূচনা এবং নির্মাণ
একটি পিডব্লিউএ মোড়ানো একটি অ্যান্ড্রয়েড প্রকল্প শুরু করা init কমান্ড চালানোর মাধ্যমে করা হয়:
bubblewrap init --manifest=https://my-twa.com/manifest.json
Bubblewrap ওয়েব ম্যানিফেস্ট পড়বে, বিকাশকারীদেরকে Android প্রকল্পে ব্যবহার করা মানগুলি নিশ্চিত করতে বলবে এবং সেই মানগুলি ব্যবহার করে প্রকল্প তৈরি করবে৷ প্রকল্পটি তৈরি হয়ে গেলে, রান করে একটি APK তৈরি করুন:
bubblewrap build
চালান
বিল্ড স্টেপটি app-release-signed.apk
নামে একটি ফাইল আউটপুট করবে। এই ফাইলটি পরীক্ষার জন্য একটি ডেভেলপমেন্ট ডিভাইসে ইনস্টল করা যেতে পারে বা মুক্তির জন্য প্লে স্টোরে আপলোড করা যেতে পারে।
Bubblewrap একটি স্থানীয় ডিভাইসে অ্যাপ্লিকেশন ইনস্টল এবং পরীক্ষা করার জন্য একটি কমান্ড প্রদান করে। কম্পিউটারের সাথে সংযুক্ত ডেভেলপমেন্ট ডিভাইস দিয়ে রান করুন:
bubblewrap install
বিকল্পভাবে, adb টুল ব্যবহার করা যেতে পারে।
adb install app-release-signed.apk
অ্যাপ্লিকেশনটি এখন ডিভাইস লঞ্চারে উপলব্ধ হওয়া উচিত। অ্যাপ্লিকেশনটি খোলার সময় আপনি লক্ষ্য করবেন যে আপনার ওয়েবসাইটটি একটি কাস্টম ট্যাব হিসাবে চালু করা হয়েছে, একটি বিশ্বস্ত ওয়েব কার্যকলাপ নয়, এর কারণ হল আমরা এখনও আমাদের ডিজিটাল সম্পদ লিঙ্ক যাচাইকরণ সেট আপ করিনি, তবে প্রথমে...
Bubblewrap এর জন্য গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI) বিকল্প
PWA বিল্ডার একটি GUI ইন্টারফেস প্রদান করে যা বিশ্বস্ত ওয়েব অ্যাক্টিভিটি প্রজেক্ট তৈরি করতে বাবল র্যাপ লাইব্রেরি ব্যবহার করে। এই ব্লগ পোস্টে আপনার PWA খোলে এমন একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করতে PWA বিল্ডার কীভাবে ব্যবহার করবেন সে সম্পর্কে আরও নির্দেশাবলী খুঁজুন।
সাইনিং কীগুলিতে একটি নোট
ডিজিটাল অ্যাসেট লিঙ্কগুলি একটি APK সাইন করা হয়েছে এমন কী বিবেচনা করে এবং যাচাইকরণ ব্যর্থ হওয়ার একটি সাধারণ কারণ হল ভুল স্বাক্ষর ব্যবহার করা। (মনে রাখবেন, যাচাইকরণ ব্যর্থ হওয়ার অর্থ হল আপনি পৃষ্ঠার শীর্ষে ব্রাউজার UI সহ একটি কাস্টম ট্যাব হিসাবে আপনার ওয়েবসাইট চালু করবেন।) যখন Bubblewrap অ্যাপ্লিকেশনটি তৈরি করে, init
ধাপে একটি কী সেটআপ সহ একটি APK তৈরি করা হবে। যাইহোক, যখন আপনি Google Play-এ আপনার অ্যাপ প্রকাশ করেন, তখন আপনি সাইনিং কীগুলি কীভাবে পরিচালনা করতে চান তার উপর নির্ভর করে আপনার জন্য আরেকটি কী তৈরি করা হতে পারে। সাইনিং কী সম্পর্কে আরও জানুন এবং কীভাবে সেগুলি Bubblewrap এবং Google Play এর সাথে সম্পর্কিত ।
আপনার সম্পদ লিঙ্ক ফাইল সেট আপ করা হচ্ছে
ডিজিটাল সম্পদ লিঙ্কগুলি মূলত আপনার ওয়েবসাইটের একটি ফাইল নিয়ে গঠিত যা আপনার অ্যাপের দিকে নির্দেশ করে এবং আপনার অ্যাপের কিছু মেটাডেটা যা আপনার ওয়েবসাইটে নির্দেশ করে।
আপনার assetlinks.json
ফাইলটি তৈরি করার পরে, এটিকে আপনার ওয়েবসাইটে .well-known/assetlinks.json
এ আপলোড করুন রুটের সাপেক্ষে) যাতে ব্রাউজার দ্বারা আপনার অ্যাপটি সঠিকভাবে যাচাই করা যায়। এটি কীভাবে আপনার সাইনিং কী এর সাথে সম্পর্কিত সে সম্পর্কে আরও তথ্যের জন্য ডিজিটাল সম্পদ লিঙ্কগুলিতে একটি গভীর ডুব দেখুন।
আপনার ব্রাউজার পরীক্ষা করা হচ্ছে
একটি বিশ্বস্ত ওয়েব কার্যকলাপ ব্যবহারকারীর ডিফল্ট পছন্দ ব্রাউজার মেনে চলার চেষ্টা করবে৷ যদি ব্যবহারকারীর ডিফল্ট ব্রাউজার বিশ্বস্ত ওয়েব ক্রিয়াকলাপ সমর্থন করে তবে এটি চালু হবে৷ এটি ব্যর্থ হলে, যদি কোনো ইনস্টল করা ব্রাউজার বিশ্বস্ত ওয়েব ক্রিয়াকলাপগুলিকে সমর্থন করে তবে এটি বেছে নেওয়া হবে৷ অবশেষে, ডিফল্ট আচরণ হল একটি কাস্টম ট্যাব মোডে ফিরে আসা।
এর মানে হল যে আপনি যদি বিশ্বস্ত ওয়েব অ্যাক্টিভিটিগুলির সাথে কিছু ডিবাগ করছেন, তাহলে আপনার নিশ্চিত হওয়া উচিত যে আপনি যে ব্রাউজারটি ব্যবহার করছেন তা আপনি মনে করেন। কোন ব্রাউজার ব্যবহার করা হচ্ছে তা পরীক্ষা করতে আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:
> adb logcat -v brief | grep -e TWAProviderPicker
D/TWAProviderPicker(17168): Found TWA provider, finishing search: com.google.android.apps.chrome
পরবর্তী পদক্ষেপ
আশা করি, আপনি যদি এই নির্দেশিকাটি অনুসরণ করেন, আপনার কাছে একটি কার্যকরী বিশ্বস্ত ওয়েব কার্যকলাপ থাকবে এবং যাচাইকরণ ব্যর্থ হলে কী ঘটছে তা ডিবাগ করার জন্য যথেষ্ট জ্ঞান থাকবে৷ যদি তা না হয়, তাহলে ওয়েব ডেভেলপারদের জন্য আরও Android ধারণা দেখুন বা এই ডক্সের বিরুদ্ধে একটি GitHub সমস্যা ফাইল করুন।
আপনার পরবর্তী পদক্ষেপগুলির জন্য, আমি আপনাকে আপনার অ্যাপের জন্য একটি আইকন তৈরি করে শুরু করার সুপারিশ করব৷ এটি সম্পন্ন হলে, আপনি প্লে স্টোরে আপনার অ্যাপ স্থাপন করার কথা বিবেচনা করতে পারেন।