বিল্ডিং ব্লক এবং সামঞ্জস্য
মিনি অ্যাপগুলি ছোট (সাধারণত 2-4 এমবি ) অ্যাপ যেগুলি চালানোর জন্য একটি সুপার অ্যাপ প্রয়োজন। তাদের মধ্যে যা মিল আছে, সুপার অ্যাপের থেকে স্বাধীন, তা হল তারা HTML, CSS এবং JavaScript ওয়েব প্রযুক্তি (এর "উপভাষা") দিয়ে তৈরি। একটি মিনি অ্যাপের রানটাইম হল সুপার অ্যাপের একটি ওয়েবভিউ , অন্তর্নিহিত অপারেটিং সিস্টেম নয়, যা মিনি অ্যাপগুলিকে ক্রস প্ল্যাটফর্ম করে। একই মিনি অ্যাপ একই সুপার অ্যাপে চলতে পারে, সুপার অ্যাপটি অ্যান্ড্রয়েড, আইওএস বা অন্য ওএসে চলুক না কেন। যাইহোক, সব মিনি অ্যাপ সব সুপার অ্যাপে চলতে পারে না, এই বিষয়ে পরে আরও কিছু।
আবিষ্কার
মিনি অ্যাপগুলি প্রায়শই ব্র্যান্ডেড 2D বারকোডের মাধ্যমে অ্যাড-হক আবিষ্কৃত হয়, যা একটি গুরুত্বপূর্ণ অফলাইন-টু-অনলাইন চ্যালেঞ্জের সমাধান করে, উদাহরণস্বরূপ, একটি ফিজিক্যাল রেস্তোরাঁর মেনু থেকে একটি পেমেন্ট মিনি অ্যাপে যাওয়া, বা একটি শারীরিক ই-স্কুটার থেকে একটি ভাড়া মিনি পর্যন্ত অ্যাপ নীচের ছবিটি WeChat-এর ডেমো মিনি অ্যাপের জন্য এই ধরনের একটি ব্র্যান্ডেড 2D বারকোডের উদাহরণ দেখায়। WeChat সুপার অ্যাপ দিয়ে কোডটি স্ক্যান করা হলে, মিনি অ্যাপটি সরাসরি চালু হয়। অন্যান্য সুপার অ্যাপগুলি সাধারণত বারকোড চিনতে পারবে না।
![WeChat-ব্র্যান্ডেড 2d বারকোড।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/wechat-branded-2d-barcode-e6ef7f80e48d8.jpg?authuser=0&hl=bn)
সুপার অ্যাপে নিয়মিত ইন-অ্যাপ অনুসন্ধানের মাধ্যমেও মিনি অ্যাপগুলি আবিষ্কার করা যেতে পারে, চ্যাট বার্তাগুলিতে ভাগ করা যেতে পারে বা নিউজ ফিডে একটি নিউজ আইটেমের অংশ হতে পারে। কিছু সুপার অ্যাপে যাচাইকৃত অ্যাকাউন্টের ধারণা রয়েছে যেগুলোতে তাদের প্রোফাইলে মিনি অ্যাপ থাকতে পারে। মিনি অ্যাপগুলিকে হাইলাইট করা যেতে পারে যখন সেগুলি ভৌগোলিকভাবে কাছাকাছি থাকে, যেমন কোনও ব্যবসার মিনি অ্যাপ যার সামনে ব্যবহারকারী দাঁড়িয়ে থাকে বা কার্যত কাছাকাছি থাকে, যেমন ব্যবহারকারী সুপার অ্যাপে দেখানো মানচিত্রের দিকনির্দেশ পান। প্রায়শই ব্যবহৃত মিনি অ্যাপগুলি একটি অ্যাপ ড্রয়ারে পাওয়া যায় যা অনেক সুপার অ্যাপে সোয়াইপ ডাউন জেসচারের মাধ্যমে বা সুপার অ্যাপ মেনুতে একটি বিশেষ বিভাগের মাধ্যমে অ্যাক্সেস করা যায়।
ব্যবহারকারীর অভিজ্ঞতা
মিনি অ্যাপের জন্য সব সুপার অ্যাপের কমবেশি একই ইউজার ইন্টারফেস থাকে। মিনি অ্যাপের নাম সহ একটি থিমযোগ্য শীর্ষ বার, এবং, স্ক্রিনের উপরের কোণায়, একটি অ্যাকশন মেনু দ্বারা ডানদিকে একটি বন্ধ বোতাম যা অ্যাপটি ভাগ করা, এটিকে একটি পছন্দের তালিকায় যুক্ত করার মতো সাধারণ বৈশিষ্ট্যগুলিতে অ্যাক্সেস সরবরাহ করে বা হোম স্ক্রীন, আপত্তিজনক অ্যাপের প্রতিবেদন করা, প্রতিক্রিয়া প্রদান করা এবং সেটিংস। নীচের স্ক্রিনশটটি অ্যাকশন মেনু খোলার সাথে Alipay সুপার অ্যাপের প্রসঙ্গে চলমান একটি শপিং মিনি অ্যাপ দেখায়।
![Alipay সুপার অ্যাপটি হাইলাইট করা টপ বার, অ্যাকশন মেনু বোতাম এবং ক্লোজ বোতাম সহ একটি শপিং মিনি অ্যাপ চালাচ্ছে। অ্যাকশন মেনু খোলা হয়।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/the-alipay-super-app-runn-39dde18ae385b.jpg?authuser=0&hl=bn)
UI দৃষ্টান্ত
সাধারণত মিনি অ্যাপের প্রধান নেভিগেশনের জন্য নিচের ট্যাব বার থাকে। বেশিরভাগ সুপার অ্যাপ প্রদানকারীরা এমন কম্পোনেন্ট অফার করে যা ডেভেলপারদের দ্রুত সাধারণ UI দৃষ্টান্ত যেমন ক্যারোসেল, অ্যাকর্ডিয়ন, প্রগ্রেস বার, স্পিনার, সুইচ, ম্যাপ ইত্যাদি বাস্তবায়ন করতে সাহায্য করে। এটি বিভিন্ন মিনি অ্যাপের মধ্যে ব্যবহারকারীর অভিজ্ঞতাকে সামঞ্জস্যপূর্ণ করতেও সাহায্য করে, যা WeChat-এর মিনি প্রোগ্রাম ডিজাইন নির্দেশিকা দ্বারা উৎসাহিত হয়। এটি অ্যাপল তার অ্যাপল হিউম্যান ইন্টারফেস নির্দেশিকা এবং Google এর অ্যান্ড্রয়েডের জন্য ডিজাইনের সুপারিশগুলির সাথে অনুপ্রেরণা দেয়।
![Douyin ডেমো মিনি অ্যাপটি অটো-অ্যাডভান্স, ডট ইন্ডিকেটর ইত্যাদির জন্য টগল সহ Douyin স্লাইডার (ক্যারোজেল) উপাদান প্রদর্শন করে।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/the-douyin-demo-mini-app-fbf61969fee88.png?authuser=0&hl=bn)
ভজনা
আলাদা রিসোর্স হিসাবে টুকরো টুকরো পরিবেশন করার পরিবর্তে, মিনি অ্যাপগুলিকে এনক্রিপ্ট করা প্যাকেজড অ্যাপস হিসেবে পরিবেশন করা হয়, অর্থাৎ আর্কাইভ হিসেবে যে সমস্ত রিসোর্সগুলিকে শুধুমাত্র একটি ফাইলে ধারণ করে। নিয়মিত ওয়েব অ্যাপের বিপরীতে, এগুলি মিনি অ্যাপ নির্মাতার নির্দিষ্ট উত্স থেকেও পরিবেশিত হয় না, তবে সরাসরি সুপার অ্যাপ প্রদানকারীর কাছ থেকে। তারা এখনও মিনি অ্যাপ নির্মাতার সার্ভার থেকে API অ্যাক্সেস করতে পারে, তবে মূল সংস্থানগুলি (সাধারণত অ্যাপ শেল হিসাবে উল্লেখ করা হয়), সুপার অ্যাপ প্রদানকারীর কাছ থেকে পরিবেশন করা আবশ্যক। মিনি অ্যাপ্লিকেশানগুলিকে তাদের উত্স ঘোষণা করতে হবে যেগুলি থেকে তারা অতিরিক্ত ডেটার অনুরোধ করে৷
ক্যাশিং, আপডেট এবং ডিপ-লিঙ্কিং
মিনি অ্যাপগুলি সুপার অ্যাপের ক্যাশে রাখা হয়, তাই পরের বার ব্যবহারকারী যখন একটি ক্যাশে মিনি অ্যাপ চালু করেন, এটি প্রায় সঙ্গে সঙ্গে লোড হয়। যদি একটি আপডেট থাকে, একটি নতুন অ্যাপ প্যাকেজ লোড হয়। সংস্করণ নম্বরটি লঞ্চ করা URI-এর অংশ হতে পারে ( ডিসকভারি দেখুন), তাই স্থানীয়ভাবে ক্যাশে করা সংস্করণটি এখনও বর্তমান আছে কিনা তা সুপার অ্যাপ তাড়াতাড়ি জানে। লঞ্চ URI এছাড়াও ঐচ্ছিকভাবে মিনি অ্যাপের পছন্দসই পৃষ্ঠা ধারণ করে, তাই মিনি অ্যাপের নির্দিষ্ট পৃষ্ঠাগুলিতে গভীর লিঙ্ক করা সম্ভব। একটি সাইটম্যাপের মাধ্যমে, মিনি অ্যাপগুলি ঘোষণা করতে পারে যে তাদের কোন পৃষ্ঠাগুলি সুপার অ্যাপ প্রদানকারীর মিনি অ্যাপ ক্রলার দ্বারা ইন্ডেক্সযোগ্য হবে।
![macOS ফাইন্ডার ক্যাশে করা WeChat মিনি অ্যাপ `.wxapkg` ফাইল ধারণকারী ফোল্ডার দেখাচ্ছে।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/macos-finder-showing-fol-d1f228bbf9ff2.png?authuser=0&hl=bn)
নিরাপত্তা এবং অনুমতি
মিনি অ্যাপ্লিকেশানগুলি সুপার অ্যাপ প্রদানকারী দ্বারা পর্যালোচনা করা হয়, যার অর্থ ব্যবহারকারীরা সেগুলিকে ওয়েব অ্যাপের চেয়ে বেশি নিরাপদ বলে মনে করেন৷ তাদের একটি ম্যানিফেস্ট বা মিনি অ্যাপ কনফিগারেশন ফাইলে তাদের সম্ভাব্য প্রয়োজনীয় অনুমতিগুলি আগেই ঘোষণা করতে হবে, যা কিছু প্রদানকারীর জন্য প্রতিটি অনুমতি কেন প্রয়োজন তার ব্যাখ্যাও প্রয়োজন৷ মিনি অ্যাপগুলি অবশ্যই এখনও মিথ্যা বলতে পারে, তবে কেন তারা, উদাহরণস্বরূপ, ব্যবহারকারীর কাছে দৃশ্যমান কারণ ছাড়াই মোশন সেন্সর অ্যাক্সেস করার চেষ্টা করছে তা যুক্তিযুক্ত করতে তাদের কঠিন সময় হবে। ব্যবহারকারীর ফিঙ্গারপ্রিন্ট করার প্রণোদনা ওয়েবের তুলনায় উল্লেখযোগ্যভাবে অনেক কম, যেহেতু ব্যবহারকারী সাধারণত ইতিমধ্যেই সুপার অ্যাপে লগ ইন করেছেন ( পরিচয়, অর্থপ্রদান, এবং সামাজিক গ্রাফ দেখুন)।
যখনই একটি মিনি অ্যাপ এমন একটি অপারেশন করে যার জন্য একটি বিশেষ অনুমতির প্রয়োজন হয়, তখন ব্যবহারকারীকে একটি প্রম্পট দেখানো হয় যেটি, প্ল্যাটফর্ম দ্বারা প্রয়োগ করা হলে, ডেভেলপারের দ্বারা বর্ণিত ব্যবহারের ন্যায্যতাও অন্তর্ভুক্ত থাকে। নীচের স্ক্রিনশটটি Douyin ডেমো মিনি অ্যাপটি দেখায় কারণ এটি ব্যবহারকারীর কাছে তাদের অবস্থান শেয়ার করার অনুমতি চায়৷ কিছু সুপার অ্যাপে, এমন একটি আবশ্যিক API রয়েছে যা মিনি অ্যাপগুলি অবিলম্বে ব্যবহার না করে অনুমতির অনুরোধ করতে বা শুধুমাত্র অনুমতির স্থিতি পরীক্ষা করতে পারে। এমনকি এটি কেন্দ্রীয় সুপার অ্যাপ অনুমতি সেটিংস খুলতে একটি API অন্তর্ভুক্ত করতে পারে, যা Chrome এর সাইট সেটিংসের সাথে মিলে যায়। মিনি অ্যাপগুলিকে সমস্ত সার্ভারের উত্স আগেই ঘোষণা করতে হবে যেগুলি থেকে তারা সম্ভাব্য ডেটার অনুরোধ করবে৷
![Douyin ডেমো মিনি অ্যাপটি দুটি বিকল্প সহ একটি ভৌগলিক অবস্থান প্রম্পট দেখাচ্ছে: 'অনুমতিপ্রাপ্ত নয়' এবং 'অনুমতিপ্রাপ্ত'।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/the-douyin-demo-mini-app-bab6b3dbfe49e.png?authuser=0&hl=bn)
শক্তিশালী বৈশিষ্ট্য অ্যাক্সেস
হোস্টিং সুপার অ্যাপ একটি জাভাস্ক্রিপ্ট ব্রিজের মাধ্যমে শক্তিশালী API-তে অ্যাক্সেস অফার করে যা সুপার অ্যাপের দেওয়া ওয়েবভিউতে প্রবেশ করানো হয় ( বিল্ডিং ব্লক এবং সামঞ্জস্য দেখুন)। এই জাভাস্ক্রিপ্ট ব্রিজটি অপারেটিং সিস্টেমের এপিআইগুলিতে হুক সরবরাহ করে। উদাহরণস্বরূপ, একটি মিনি অ্যাপ জাভাস্ক্রিপ্ট ফাংশন যেমন getConnectedWifi()
—বর্তমানে সক্রিয় Wi-Fi নেটওয়ার্কের নাম প্রাপ্ত করার জন্য একটি মিনি অ্যাপের ক্ষমতা—হুডের নীচে Android এর getConnectionInfo()
API বা iOS' CNCopyCurrentNetworkInfo()
API-এর মাধ্যমে সুবিধা দেওয়া হয় . সাধারণ সুপার অ্যাপে উন্মুক্ত শক্তিশালী ডিভাইস API-এর অন্যান্য উদাহরণ হল ব্লুটুথ, NFC, iBeacon, GPS, সিস্টেম ক্লিপবোর্ড, ওরিয়েন্টেশন সেন্সর, ব্যাটারি তথ্য, ক্যালেন্ডার অ্যাক্সেস, ফোনবুক অ্যাক্সেস, স্ক্রিন উজ্জ্বলতা নিয়ন্ত্রণ, ফাইল সিস্টেম অ্যাক্সেস, শারীরিক প্রতিক্রিয়ার জন্য ভাইব্রেশন হার্ডওয়্যার, ক্যামেরা এবং মাইক্রোফোন অ্যাক্সেস, স্ক্রিন রেকর্ডিং এবং স্ক্রিনশট তৈরি, নেটওয়ার্ক স্থিতি, UDP সকেট, বারকোড স্ক্যানিং, ডিভাইস মেমরি তথ্য এবং আরও অনেক কিছু।
![WeChat ডেমো মিনি অ্যাপটি এমন একটি স্লাইডার দেখাচ্ছে যা ডিভাইসের স্ক্রীনের উজ্জ্বলতা নিয়ন্ত্রণ করে সর্বাধিকে চলে গেছে।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/the-wechat-demo-mini-app-964b40a49071.png?authuser=0&hl=bn)
ক্লাউড পরিষেবাগুলিতে অ্যাক্সেস
অনেক সুপার অ্যাপ সুপার অ্যাপ প্রদানকারীর ক্লাউড পরিষেবাগুলিতে "সার্ভারবিহীন" অ্যাক্সেসও প্রদান করে যেগুলি, কাঁচা ক্লাউড কম্পিউটিং এবং ক্লাউড স্টোরেজ ছাড়াও, প্রায়শই উচ্চ-স্তরের কাজগুলি যেমন পাঠ্য অনুবাদ, বস্তু সনাক্তকরণ বা চিত্রগুলিতে বিষয়বস্তু শ্রেণীবিভাগ, বক্তৃতা সনাক্তকরণ, বা অন্যান্য মেশিন লার্নিং কাজ। মিনি অ্যাপ্লিকেশানগুলি বিজ্ঞাপনের মাধ্যমে নগদীকরণ করা যেতে পারে, যা সাধারণত সুপার অ্যাপ প্রদানকারীর দ্বারা উপলব্ধ করা হয়। সুপার অ্যাপ প্ল্যাটফর্মগুলি সাধারণত ক্লাউড অ্যানালিটিক্স ডেটাও প্রদান করে, তাই মিনি অ্যাপ বিকাশকারীরা আরও ভালভাবে বুঝতে পারে যে ব্যবহারকারীরা তাদের অ্যাপগুলির সাথে কীভাবে ইন্টারঅ্যাক্ট করে।
পরিচয়, অর্থপ্রদান, সামাজিক গ্রাফ
মিনি অ্যাপের একটি অত্যন্ত গুরুত্বপূর্ণ বৈশিষ্ট্য হল পরিচয় এবং সামাজিক গ্রাফ সংক্রান্ত তথ্য যা সুপার অ্যাপ থেকে শেয়ার করা হয়। Douyin বা WeChat-এর মতো সুপার অ্যাপগুলি ব্যাপক অর্থে সামাজিক নেটওয়ার্কিং সাইট হিসাবে শুরু হয়েছিল, যেখানে ব্যবহারকারীদের একটি (কখনও কখনও এমনকি সরকার দ্বারা যাচাইকৃত) পরিচয়, একটি বন্ধু বা অনুসরণকারী নেটওয়ার্ক এবং প্রায়শই অর্থপ্রদানের ডেটাও সংরক্ষিত থাকে। উদাহরণ স্বরূপ, একটি শপিং মিনি অ্যাপ সুপার অ্যাপের পেমেন্ট API-এর মাধ্যমে সরাসরি যেকোনো পেমেন্ট প্রক্রিয়া করতে পারে (বা কখনও কখনও অবশ্যই করতে হবে) এবং ব্যবহারকারীর সম্মতিতে, ব্যবহারকারীর ডেটা যেমন তাদের শিপিং ঠিকানা, ফোন নম্বর এবং পুরো নাম পেতে পারে। কখনও ব্যবহারকারীকে বেদনাদায়কভাবে ফর্ম পূরণ করতে বাধ্য করতে হবে। নীচে, আপনি WeChat-এ চলমান Walmart মিনি অ্যাপ দেখতে পাচ্ছেন, যেটি প্রথমবারের মতো খোলা হয়েছে, একটি পরিচিত মুখের সাথে আমাকে শুভেচ্ছা জানাচ্ছে৷
![ওয়ালমার্ট মিনি অ্যাপটি 'মি' ট্যাবে লেখকের মুখ এবং নাম দেখাচ্ছে।](https://web.developers.google.cn/static/articles/mini-apps/mini-app-about/image/the-walmart-mini-app-show-87a18e926c07a.png?authuser=0&hl=bn)
মিনি অ্যাপ্লিকেশানগুলি লোকেদের একটি গেমের উচ্চ স্কোরগুলির মতো তাদের কৃতিত্বগুলি ভাগ করে নেওয়ার মাধ্যমে এবং স্থিতি আপডেটের মাধ্যমে তাদের পরিচিতিগুলিকে চ্যালেঞ্জ করার মাধ্যমে অত্যন্ত জনপ্রিয় হতে পারে৷ মিনি অ্যাপটি তখন কেবলমাত্র একটি ট্যাপ দূরে, যাতে ব্যবহারকারীরা কোনও ঘর্ষণ ছাড়াই প্রতিযোগিতায় অংশ নিতে পারে এবং মিনি অ্যাপটি এর মাধ্যমে তার নাগালের বৃদ্ধি পায়।
স্বীকৃতি
এই নিবন্ধটি Joe Medley , Kayce Basques , Milica Mihajlija , Alan Kent , এবং Keith Gu দ্বারা পর্যালোচনা করা হয়েছে।