ওপেন ওয়েব অ্যাপ ম্যানিফেস্ট ফাইল সম্পর্কিত সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
অ্যাপ ম্যানিফেস্ট ফাইল কেন প্রয়োজন?
অ্যাপ ম্যানিফেস্ট ফাইলটি একটি অ্যাপ সম্পর্কিত গূরত্বপূর্ণ তথ্যসমূহ (যেমন: নাম, লেখক, আইকন এবং বর্ণনা) সাধারণ একটি ডকুমেন্টের মাধ্যমে প্রকাশ করে। এই তথ্যসমূহ সাধারণ ব্যবহারকারী এবং অ্যাপ স্টোর উভয়েই ব্যবহার করতে পারে। সবথেকে গূরত্বপূর্ণ বিষয় হল, এটিতে উক্ত অ্যাপের প্রয়োজনীয় সকল ওয়েব এপিআই (উদাহরণস্বরূপ জিওলোকেশন) এর তালিকা প্রদান করা হয়ে থাকে। এটি থাকার কারণে ব্যবহারকারীরা অ্যাপ ইনষ্টল করার পূর্বেই অ্যপটি সম্পর্কে জানার সুযোগ পেয়ে থাকে।
ওপেন ওয়েব অ্যাপ ম্যানিফেস্ট কি গুগোল ক্রোম এক্সটেনশন এবং ইনস্টলযোগ্য ওয়েব অ্যাপের জন্য ব্যবহত ম্যানিফেস্টের মতোই? নাকি W3C উইজেট ম্যানিফেস্ট? অথবা HTML5 ক্যাশ ম্যানিফেস্ট?
সবগুলোর জন্যই উত্তর হচ্ছে "না"। ওপেন ওয়েব অ্যাপ ম্যানিফেস্টটি দেখতে অনেকটা গুগোল ম্যানিফেস্টের মতো হলেও হুবহু একই নয়। কল্পনা করা হয় যে, ওপেন ওয়েব অ্যাপ ম্যানিফেস্টটি একটি আদর্শে হিসাবে স্বীকৃত হবে।
অরিজিন কি?
একটি অ্যাপের জন্য অরিজিন বলতে সম্মিলিত ভাবে ঐ ইউআরএল এর প্রোটোকল, ডোমেইন এবং পোর্টকে বোঝানো হয়। নিচের প্রত্যেকটি ইউআরএল এক একটি আলাদা অরিজিন:
https://example.com
https://example.com:8080
(পোর্ট আলাদা)https://example.com
(প্রোটোকল আলাদা)https://www.example.com
https://myapp.example.com
(এটি সাবডোমেইন)
নিচের ইউআরএল গুলো একই অরিজিন:
https://Example.com:80
https://example.com
নিচের ইউআরএল গুলোও একই অরিজিন:
https://example.com/drawingApp
https://example.com/notesApp
আরো জানতে একই-অরিজন রীতি দেখুন।
অ্যাপ ম্যানিফেস্ট ফাইলটিকে অ্যাপটির একই অরিজিনে রাখা হয় কেন?
আমরা ধরেই নেই যে, একমাত্র আপনিই অ্যাপ ম্যানিফেস্ট ফাইলটিকে আপনার অ্যাপটির একই অরিজিনে রাখতে পারেন। এর মানে, ব্যবহারকারীরা বিশ্বস্ততার সহিত আপনার অ্যাপ ইনস্টল করতে পারে, এটা জেনে যে, ইনস্টল শুধুমাত্র আপনার অ্যাপ ম্যানিফেস্টের উপরই নির্ভরশীল এবং অন্য কারো নয়। ব্যবহারকারীদের এই বিশ্বাস থাকতে হবে যে, তারা আপনার অ্যাপটিকেই ইনস্টল করছে ফায়ারফক্স মার্কেটপ্লেস থেকে, অন্য কোন অ্যাপ স্টোর থেকে অথবা আপনার নিজস্ব ওয়েবসাইট থেকে যদি আপনি নিজেই আপনার অ্যাপটি প্রকাশ করে থাকেন।
অ্যাপ ম্যানিফেস্ট ফাইলটি যদি ঐ অ্যাপের সাথে একই অরিজিনে না রাখতে হত, তবে তৃতীয় কোন পক্ষকে উক্ত অরিজিনের কনটেন্ট ব্যবহার করে অ্যাপ তৈরি করা থেকে কোনভাবেই আটকানো যেত না। এর চেয়ে খারাপ যে বিষয়টি তা হল, তৃতীয় পক্ষরা আপনার পরিচিতি এবং কনটেন্টকে কাজে লাগিয়ে তাদের বানানো নকল অ্যাপ ব্যবহার করে ব্যবহারকারীদের বিভিন্ন গোপন তথ্য চুরি করা ছাড়াও নানাবিধ অনৈতিক কাজ করতে পারত।
তার মানে আমি অন্য কোন অরিজিন থেকে ছবি বা জাভাস্ক্রিপ্ট সন্নিবেশ করতে পারব না?
ব্যাপারটি আসলে তেমন নয়। একই অরিজিনে রাখার নিয়মটি শুধুমাত্র অ্যাপটির কনটেন্টের (এইচটিএমএল পেইজসমূহ) জন্য প্রযোজ্য। শুধুমাত্র অ্যাপ আইকন ছাড়া, যেকোন ছবি এবং অন্যান্য সন্নিবেশিত ফাইলসমূহ অরিজিন ব্যতীত অন্যান্য অবস্হান (যেমন: যেকোন কনটেন্ট বিতরণকারী নেটওয়ার্ক) থেকেও যুক্ত করা যাবে। আর এই অ্যাপ আইকনটি অবশ্যই অরিজিনে রাখতে হবে।
আমি কি একই অরিজিনে একের অধিক অ্যাপ রাখতে পারব?
বর্তমানে একটি অরিজিনে শুধু একটি অ্যাপই রাখা যায়। ফায়ারফক্স ওএস এর ভবিষ্যৎ সংস্করণগুলোতে, একটি অরিজিনে একের অধিক অ্যাপ রাখা সম্ভব হবে। এই সুবিধাটি উন্নয়নের অগ্রগতি সম্পর্কে জানতে বাগ ৭৭৮২৭৭ তে নজর রাখুন।
এই সুবিধাটি আসার আগে পর্যন্ত, আমাদের মতামত হচ্ছে আপনার আলাদা আলাদা অ্যাপের জন্য আলাদা আলাদা সাবডোমেইন ব্যবহার করুন। উদাহরণস্বরূপ, একটি অ্যপের জন্য spreadsheet.mycoolapps.com
এবং অন্যটির জন্য texteditor.mycoolapps.com
ব্যবহার করুন। আরো জানতে, কোন অ্যাপের জন্য সাবডোমেইন এর ব্যবহার দেখুন।
ফায়ারফক্স মার্কেটপ্লেসে শুধুমাত্র অ্যাপ ম্যানিফেস্ট ফাইলটিকে আপলোড করা যায় না কেন?
নিজের ডোমেইনে ম্যানিফেস্ট ফাইলটিকে রেখে সেখান থেকে ফায়ারফক্স মার্কেটপ্লেসে ম্যানিফেস্ট ফাইলের ইউআরএল প্রদান করার কিছু সুবিধা রয়েছে:
-
মার্কেটপ্লেস (এবং অন্যান্য অ্যাপ স্টোরসমূহ) নিয়মিতভাবে পর্যায়ক্রমে জমাকৃত সকল অ্যাপ ম্যনিফেস্ট ফাইলের ঈউআরএল পরিদর্শন এবং আপডেটের জন্য চেক করে থাকে। এর ফলে প্রতিবার আপডেটের জন্য আপনার অ্যাপ ম্যনিফেস্ট ফাইলটিকে বারবার আপলোড করার কষ্ট পোহাতে হয় না।
- মার্কেটপ্লেস, ব্যবহারকারীর ডিভাইসে মূল অ্যাপ ম্যনিফেস্ট ফাইলের কনটেন্টসমূহ এর সাথে সাথে ইউআরএল ও পাঠিয়ে দেয়। এর ফলে ডিভাইসটি অ্যাপ ম্যনিফেস্ট ফাইলের অপ্রত্যাশিত পরিবর্তনগুলো চেক করতে পারে যা টেম্পারিংকে নির্দেশ করে। এ বিষয়টি ওয়েব এপিআই (যেমন জিওলোকেশন) যুক্ত অ্যাপসমূহের ক্ষেত্রে বিশেষ গূরত্বপূর্ণ।
অ্যাপ ম্যানিফেস্ট ফাইলটিকে বিতরণের সময় আমার ওয়েব সার্ভারকে সঠিক HTTP Content-Type
হেডার ব্যবহার করতে হয় কেন?
এই সীমাবদ্ধতাটি একটি ব্যবহারকারী-নির্মিত কন্টেন্ট ওয়েবসাইট (যেমন: একটি পেষ্টবিন সাইট) ব্যবহারকারীদেরকে উক্ত সম্পূর্ণ ওয়েবসাইটটিকে অনবধানতাবশত বা অযথাযথভাবে তাদের অ্যাপ বলে দাবি করা থেকে বাধা দেয়।
আমার অ্যাপ ম্যানিফেস্ট বিতরণের জন্য কি HTTPS ব্যবহার করা উচিৎ?
হ্যা, এটি খুবই ভাল পদক্ষেপ। আশা করা যায়, মধ্যাবস্হানকারী আক্রমনকারী থেকে রক্ষার জন্য ফায়ারফক্স মার্কেটপ্লেস চায় যেন ওয়েব এপিআই (যেমন জিওলোকেশন) যুক্ত অ্যাপসমূহ তাদের অ্যাপ ম্যানিফেস্ট ফাইলটিকে এইচটিটিপিএস এর মাধ্যমে বিতরণ করে। আপনি যদি অ্যাপ ম্যানিফেস্ট ফাইলটি বিতরণের সময় এইচটিটিপিএস ব্যবহার করে থাকেন তবে আপনার সাইটের অন্যান্য পেজের জন্যও এইচটিটিপিএস ব্যবহার করতে হবে।
অন্য কেউ যদি ফায়ারফক্স মার্কেটপ্লেসে আমার অ্যাপ জমা দেয় তখন কি করব?
দুর্ভাগ্যবশত কেউ যদি আপনার অ্যাপ ম্যানিফেস্ট ফাইলের ইউআরএল জেনে যায় এবং ফায়ারফক্স মার্কেটপ্লেসে আপনার পূর্বেই সেটি জমা দিয়ে দেয়, অনুগ্রহ পূর্বক মার্কেটপ্লেস সাপোর্ট টিম এর নিকট একটি অভিযোগ প্রেরন করুন।