অতীতে, অ্যাপ ইনস্টলেশন শুধুমাত্র প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ্লিকেশনের প্রেক্ষাপটে সম্ভব ছিল। আজ, আধুনিক ওয়েব অ্যাপগুলি ইনস্টলযোগ্য অভিজ্ঞতা প্রদান করে যা প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপগুলির মতো একই স্তরের একীকরণ এবং নির্ভরযোগ্যতা প্রদান করে।
আপনি বিভিন্ন উপায়ে এটি অর্জন করতে পারেন:
- ব্রাউজার থেকে PWA ইনস্টল করা হচ্ছে।
- অ্যাপ স্টোর থেকে PWA ইনস্টল করা হচ্ছে।
বিভিন্ন ডিস্ট্রিবিউশন চ্যানেল থাকা বিপুল সংখ্যক ব্যবহারকারীর কাছে পৌঁছানোর একটি শক্তিশালী উপায়, কিন্তু আপনার PWA এর ইনস্টলেশন প্রচারের জন্য সঠিক কৌশল বেছে নেওয়া চ্যালেঞ্জিং হতে পারে।
এই নির্দেশিকাটি ইনস্টলেশনের হার বাড়াতে এবং প্ল্যাটফর্ম প্রতিযোগিতা এবং নরখাদক এড়াতে বিভিন্ন ইনস্টলেশন বিকল্পগুলিকে একত্রিত করার জন্য সর্বোত্তম অনুশীলনগুলি অন্বেষণ করে। কভার করা ইনস্টলেশন অফারগুলির মধ্যে রয়েছে ব্রাউজার এবং অ্যাপ স্টোর উভয় থেকে ইনস্টল করা PWA, সেইসাথে প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ।
কেন আপনার ওয়েব অ্যাপ্লিকেশন ইনস্টল করা যাবে?
ইনস্টল করা প্রগতিশীল ওয়েব অ্যাপগুলি ব্রাউজার ট্যাবের পরিবর্তে একটি স্বতন্ত্র উইন্ডোতে চলে। এগুলি ব্যবহারকারীর হোম স্ক্রীন, ডক, টাস্কবার বা শেল্ফ থেকে লঞ্চযোগ্য৷ একটি ডিভাইসে তাদের অনুসন্ধান করা এবং অ্যাপ সুইচারের সাহায্যে তাদের মধ্যে ঝাঁপ দেওয়া সম্ভব, যাতে তারা ইনস্টল করা ডিভাইসের অংশ বলে মনে করে।
কিন্তু একটি ইনস্টলযোগ্য ওয়েব অ্যাপ এবং একটি প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ উভয়ই ব্যবহারকারীদের জন্য বিভ্রান্তিকর হতে পারে। কিছু ব্যবহারকারীর জন্য প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ্লিকেশনগুলি সেরা পছন্দ হতে পারে, তবে অন্যদের জন্য তারা কিছু ত্রুটি উপস্থাপন করতে পারে:
- সঞ্চয়স্থানের সীমাবদ্ধতা: একটি নতুন অ্যাপ ইনস্টল করার অর্থ অন্যদের মুছে ফেলা বা মূল্যবান বিষয়বস্তু সরিয়ে স্থান পরিষ্কার করা। এটি বিশেষত নিম্নমানের ডিভাইসে ব্যবহারকারীদের জন্য অসুবিধাজনক।
- উপলব্ধ ব্যান্ডউইথ: একটি অ্যাপ ডাউনলোড করা একটি ব্যয়বহুল এবং ধীর প্রক্রিয়া হতে পারে, এমনকি ধীর সংযোগ এবং ব্যয়বহুল ডেটা প্ল্যান ব্যবহারকারীদের জন্য।
- ঘর্ষণ: একটি ওয়েবসাইট ত্যাগ করা এবং একটি অ্যাপ ডাউনলোড করার জন্য একটি স্টোরে যাওয়া অতিরিক্ত ঘর্ষণ তৈরি করে এবং একটি ব্যবহারকারীর ক্রিয়াকে বিলম্বিত করে যা সরাসরি ওয়েবে সম্পাদিত হতে পারে।
- আপডেট চক্র: প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপে পরিবর্তন করার জন্য একটি অ্যাপ পর্যালোচনা প্রক্রিয়ার মধ্য দিয়ে যাওয়ার প্রয়োজন হতে পারে, যা পরিবর্তন এবং পরীক্ষা-নিরীক্ষার গতি কমিয়ে দিতে পারে (উদাহরণস্বরূপ, A/B পরীক্ষা)।
কিছু ক্ষেত্রে, যে ব্যবহারকারীরা আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ডাউনলোড করবেন না তাদের শতাংশ বড় হতে পারে, উদাহরণস্বরূপ: যারা মনে করেন যে তারা প্রায়শই অ্যাপটি ব্যবহার করবেন না, বা কয়েক মেগাবাইট স্টোরেজ খরচ করাকে সমর্থন করতে পারে না বা তথ্য আপনি এই সেগমেন্টের আকার বিভিন্ন উপায়ে নির্ধারণ করতে পারেন, উদাহরণস্বরূপ "শুধুমাত্র মোবাইল ওয়েব" ব্যবহারকারীদের শতাংশ ট্র্যাক করতে একটি বিশ্লেষণ সেটআপ ব্যবহার করে৷
যদি এই বিভাগের আকার যথেষ্ট হয়, তবে এটি একটি ভাল ইঙ্গিত যে আপনাকে আপনার অভিজ্ঞতাগুলি ইনস্টল করার বিকল্প উপায় প্রদান করতে হবে।
ব্রাউজারের মাধ্যমে আপনার PWA এর ইনস্টলেশন প্রচার করা
আপনার যদি উচ্চ মানের PWA থাকে, তাহলে আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপের মাধ্যমে এটির ইনস্টলেশন প্রচার করা ভাল হতে পারে। উদাহরণস্বরূপ, যদি প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপে আপনার PWA দ্বারা অফার করা কার্যকারিতা অনুপস্থিত থাকে, অথবা যদি এটি কিছু সময়ের মধ্যে আপডেট না করা হয়। প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপটি বড় পর্দার জন্য অপ্টিমাইজ করা না থাকলে, যেমন ChromeOS-এ আপনার PWA-এর ইনস্টলেশন প্রচার করাও সহায়ক হতে পারে।
কিছু অ্যাপের জন্য, ড্রাইভিং প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইনস্টলেশন ব্যবসায়িক মডেলের একটি মূল অংশ, সেক্ষেত্রে, আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপের ইনস্টলেশনের প্রচার করা ব্যবসায়িক বোধগম্য করে তোলে। কিন্তু, কিছু ব্যবহারকারী ওয়েবে থাকতে আরও স্বাচ্ছন্দ্য বোধ করতে পারে। যদি সেই অংশটি চিহ্নিত করা যায়, PWA প্রম্পট শুধুমাত্র তাদের দেখানো যেতে পারে (যাকে আমরা "PWA হিসাবে ফলব্যাক" বলি)।
প্রাথমিক ইনস্টলযোগ্য অভিজ্ঞতা হিসাবে PWA
একবার একটি PWA ইনস্টলযোগ্যতার মানদণ্ড পূরণ করলে, বেশিরভাগ ব্রাউজার একটি ইঙ্গিত দেখায় যে PWA ইনস্টলযোগ্য। উদাহরণস্বরূপ, ডেস্কটপ ক্রোম ঠিকানা বারে একটি ইনস্টলযোগ্য আইকন দেখায় এবং মোবাইলে এটি একটি মিনি-ইনফোবার দেখায়:
যদিও এটি কিছু অভিজ্ঞতার জন্য যথেষ্ট হতে পারে, যদি আপনার লক্ষ্য আপনার PWA-এর ইনস্টলেশনগুলি চালানো হয়, আমরা আপনাকে BeforeInstallPromptEvent
শুনতে এবং আপনার PWA-এর ইনস্টলেশন প্রচারের জন্য নিদর্শনগুলি অনুসরণ করার পরামর্শ দিচ্ছি।
আপনার PWA কে আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইন্সটল রেটকে ক্যানিবালাইজ করা থেকে আটকান
কিছু ক্ষেত্রে, আপনি আপনার PWA-এর মাধ্যমে আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপের ইনস্টলেশন প্রচার করতে বেছে নিতে পারেন, কিন্তু এই ক্ষেত্রে, আমরা এখনও ব্যবহারকারীদের আপনার PWA ইনস্টল করার অনুমতি দেওয়ার জন্য একটি ব্যবস্থা প্রদান করার পরামর্শ দিই। এই ফলব্যাক বিকল্পটি এমন ব্যবহারকারীদের জন্য সম্ভব করে যারা আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইনস্টল করতে পারে না বা ইন্সটল করতে চায় না একই রকম, ইনস্টল করা অভিজ্ঞতা পেতে।
এই কৌশলটি বাস্তবায়নের প্রথম ধাপ হল একটি হিউরিস্টিক সংজ্ঞায়িত করা যখন আপনি ব্যবহারকারীকে আপনার PWA-এর জন্য একটি ইনস্টল প্রচার দেখাবেন।
উদাহরণস্বরূপ: একজন PWA ব্যবহারকারী এমন একজন ব্যবহারকারী যিনি প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইনস্টল প্রম্পট দেখেছেন এবং প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইনস্টল করেননি। তারা অন্তত পাঁচবার সাইটে ফিরে এসেছে, অথবা তারা অ্যাপ ব্যানারে ক্লিক করেছে, কিন্তু পরিবর্তে ওয়েবসাইট ব্যবহার করা চালিয়ে গেছে।
তারপর, হিউরিস্টিক নিম্নলিখিত উপায়ে প্রয়োগ করা যেতে পারে:
- প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ ইনস্টল ব্যানার দেখান।
- যদি কোনো ব্যবহারকারী ব্যানার খারিজ করে দেন, তাহলে সেই তথ্য সহ একটি কুকি সেট করুন (যেমন
document.cookie = "app-install-banner=dismissed"
)। - সাইটে ব্যবহারকারীর ভিজিটের সংখ্যা ট্র্যাক করতে অন্য একটি কুকি ব্যবহার করুন (যেমন
document.cookie = "user-visits=1"
)। - একটি ফাংশন লিখুন, যেমন
isPWAUser()
, যা একটি ব্যবহারকারীকে "PWA ব্যবহারকারী" হিসাবে বিবেচনা করা হয় কিনা তা নির্ধারণ করতেgetInstalledRelatedApps()
API সহ কুকিতে পূর্বে সংরক্ষিত তথ্য ব্যবহার করে। - যখন ব্যবহারকারী একটি অর্থপূর্ণ ক্রিয়া সম্পাদন করে, কল করুন
isPWAUser()
। যদি ফাংশনটি সত্য হয় এবং PWA ইনস্টল প্রম্পটটি আগে সংরক্ষিত থাকে, আপনি PWA ইনস্টল বোতামটি দেখাতে পারেন।
একটি অ্যাপ স্টোরের মাধ্যমে আপনার PWA এর ইনস্টলেশন প্রচার করা
অ্যাপ স্টোরের জন্য অ্যাপগুলি PWA কৌশল সহ বিভিন্ন প্রযুক্তি দিয়ে তৈরি করা যেতে পারে। স্থানীয় পরিবেশে পিডব্লিউএ মিশ্রিত করার ক্ষেত্রে আপনি প্রযুক্তিগুলির একটি সারসংক্ষেপ খুঁজে পেতে পারেন যা এই উদ্দেশ্যে ব্যবহার করা যেতে পারে।
এই বিভাগে আমরা স্টোরের অ্যাপগুলিকে দুটি গ্রুপে শ্রেণীবদ্ধ করব:
- প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ: এই অ্যাপগুলি বেশিরভাগই প্ল্যাটফর্ম-নির্দিষ্ট কোড দিয়ে তৈরি। তাদের আকারগুলি প্ল্যাটফর্মের উপর নির্ভর করে, তবে সেগুলি সাধারণত Android-এ 10MB এবং iOS-এ 30MB-এর উপরে হয়৷ আপনি আপনার প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ প্রচার করতে চাইতে পারেন যদি আপনার কাছে PWA না থাকে, অথবা যদি প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপটি আরও সম্পূর্ণ বৈশিষ্ট্য সেট উপস্থাপন করে।
- লাইটওয়েট অ্যাপস: এই অ্যাপগুলি প্ল্যাটফর্ম-নির্দিষ্ট কোড দিয়েও তৈরি করা যেতে পারে, তবে এগুলি সাধারণত ওয়েব প্রযুক্তির সাহায্যে তৈরি করা হয়, একটি প্ল্যাটফর্ম-নির্দিষ্ট মোড়কে প্যাকেজ করা হয়। সম্পূর্ণ PWA গুলি স্টোরগুলিতেও আপলোড করা যেতে পারে। (এটি এই নিবন্ধে পরে আলোচনা করা হয়েছে।) কিছু কোম্পানি এইগুলিকে "লাইট" অভিজ্ঞতা হিসাবে প্রদান করতে বেছে নেয় এবং অন্যরা তাদের ফ্ল্যাগশিপ (মূল) অ্যাপগুলির জন্যও এই পদ্ধতিটি ব্যবহার করেছে।
লাইটওয়েট অ্যাপের প্রচার
একটি Google Play স্টাডি অনুসারে, একটি APK এর আকারে প্রতি 6 MB বৃদ্ধির জন্য, ইনস্টল রূপান্তর হার 1% কমে যায়৷ এর মানে হল যে 10 MB এর একটি অ্যাপের ডাউনলোড সম্পূর্ণ হওয়ার হার 100 MB এর একটি অ্যাপের তুলনায় প্রায় 30% বেশি হতে পারে!
এটিকে মোকাবেলা করার জন্য, কিছু কোম্পানি তাদের PWA ব্যবহার করে ট্রাস্টেড ওয়েব অ্যাক্টিভিটিস (TWA) ব্যবহার করে প্লে স্টোরে তাদের অ্যাপের একটি হালকা সংস্করণ প্রদান করছে। TWAs আপনার PWA একটি ওয়েবভিউতে কম্পোনেন্টের মতো মোড়ানো, এবং ফলস্বরূপ অ্যাপের আকার সাধারণত মাত্র কয়েক মেগাবাইট হয়।
Oyo, ভারতের বৃহত্তম আতিথেয়তা সংস্থাগুলির মধ্যে একটি, তাদের অ্যাপের একটি লাইট সংস্করণ তৈরি করেছে এবং এটি একটি TWA ব্যবহার করে প্লে স্টোরে উপলব্ধ করেছে৷ এই নিবন্ধটি লেখার সময়, Oyo অ্যাপটি ছিল মাত্র 850 KB, তাদের Android অ্যাপের আকার মাত্র 7%। এবং একবার ইনস্টল হয়ে গেলে, এটি তাদের অ্যান্ড্রয়েড অ্যাপ থেকে আলাদা করা যায় না:
Oyo ফ্ল্যাগশিপ এবং "লাইট" অ্যাপ সংস্করণ উভয়ই স্টোরে রেখেছিল, তাদের ব্যবহারকারীদের একটি পছন্দ প্রদান করে।
একটি হালকা ওয়েব অভিজ্ঞতা প্রদান
স্বজ্ঞাতভাবে, লো-এন্ড ডিভাইসের ব্যবহারকারীরা হাই-এন্ড ফোনের ব্যবহারকারীদের তুলনায় অ্যাপের লাইটওয়েট সংস্করণ ডাউনলোড করতে বেশি ঝুঁকতে পারে। অতএব, যদি একজন ব্যবহারকারীর ডিভাইস শনাক্ত করা সম্ভব হয়, তাহলে আপনি ভারী প্ল্যাটফর্ম-নির্দিষ্ট অ্যাপ সংস্করণের তুলনায় লাইটওয়েট অ্যাপ ইনস্টল ব্যানারটিকে অগ্রাধিকার দিতে পারেন।
ওয়েবে, ডিভাইসের সংকেতগুলি পাওয়া সম্ভব এবং সেগুলিকে ডিভাইসের বিভাগগুলিতে (যেমন "উচ্চ", "মধ্য", বা "নিম্ন") ম্যাপ করা সম্ভব। আপনি JavaScript API বা ক্লায়েন্ট ইঙ্গিত ব্যবহার করে বিভিন্ন উপায়ে এই তথ্য পেতে পারেন।
জাভাস্ক্রিপ্ট ব্যবহার করে
JavaScript বৈশিষ্ট্য যেমন navigator.hardwareConcurrency , navigator.deviceMemory , এবং navigator.connection ব্যবহার করে আপনি যথাক্রমে ডিভাইসের CPU, মেমরি এবং নেটওয়ার্ক স্থিতি সম্পর্কে তথ্য পেতে পারেন। যেমন:
const deviceCategory = req.get('Device-Memory') < 1 ? 'lite' : 'full';`
ক্লায়েন্ট ইঙ্গিত ব্যবহার করে
ক্লায়েন্ট ইঙ্গিতগুলির মাধ্যমে এইচটিটিপি অনুরোধ শিরোনামে ডিভাইস সংকেতগুলিও অনুমান করা যেতে পারে। ক্লায়েন্ট ইঙ্গিত সহ আপনি কীভাবে ডিভাইস মেমরির জন্য পূর্ববর্তী কোডটি বাস্তবায়ন করতে পারেন তা এখানে:
প্রথমে, ব্রাউজারটিকে বলুন যে আপনি যেকোনো প্রথম পক্ষের অনুরোধের জন্য HTTP প্রতিক্রিয়ার শিরোনামে ডিভাইস মেমরির ইঙ্গিত পেতে আগ্রহী:
HTTP/1.1 200 OK
Content-Type: text/html
Accept-CH: Device-Memory
তারপর, আপনি HTTP অনুরোধের অনুরোধ শিরোনামে Device-Memory
তথ্য পেতে শুরু করবেন:
GET /main.js HTTP/1.1
Device-Memory: 0.5
আপনি ব্যবহারকারীর ডিভাইসের বিভাগের সাথে একটি কুকি সংরক্ষণ করতে আপনার ব্যাকএন্ডে এই তথ্যটি ব্যবহার করতে পারেন:
app.get('/route', (req, res) => {
// Determine device category
const deviceCategory = req.get('Device-Memory') < 1 ? 'lite' : 'full';
// Set cookie
res.setCookie('Device-Category', deviceCategory);
…
});
অবশেষে, ডিভাইসের বিভাগগুলিতে এই তথ্যটি ম্যাপ করতে আপনার নিজস্ব যুক্তি তৈরি করুন এবং প্রতিটি ক্ষেত্রে সংশ্লিষ্ট অ্যাপ ইনস্টল প্রম্পট দেখান:
if (isDeviceMidOrLowEnd()) {
// show "Lite app" install banner or PWA A2HS prompt
} else {
// show "Core app" install banner
}
উপসংহার
ব্যবহারকারীর হোম স্ক্রীনে একটি আইকন থাকার ক্ষমতা অ্যাপ্লিকেশনগুলির সবচেয়ে আকর্ষক বৈশিষ্ট্যগুলির মধ্যে একটি৷ ঐতিহাসিকভাবে এটি শুধুমাত্র অ্যাপ স্টোর থেকে ইনস্টল করা অ্যাপগুলির জন্যই সম্ভব ছিল, কোম্পানিগুলি মনে করতে পারে যে একটি অ্যাপ স্টোর ইনস্টল ব্যানার দেখানো ব্যবহারকারীদের তাদের অভিজ্ঞতা ইনস্টল করতে রাজি করানো যথেষ্ট হবে। বর্তমানে ব্যবহারকারীদের একটি অ্যাপ ইনস্টল করতে দেওয়ার জন্য আরও বিকল্প রয়েছে, যার মধ্যে স্টোরগুলিতে হালকা অ্যাপের অভিজ্ঞতা প্রদান করা এবং ব্যবহারকারীদের ওয়েবসাইট থেকে সরাসরি এটি করতে অনুরোধ করে হোম স্ক্রিনে PWA যুক্ত করতে দেওয়া।