প্ল্যাটফর্মের জন্য একটি ক্রস-প্ল্যাটফর্ম মোবাইল ক্লায়েন্ট, React Native-এ লেখা, যেখানে Android মডিউলের সাথে JavaScript স্তর পৌঁছাতে পারে না - পটভূমি বার্তা প্রদান, উজ্জ্বল উইন্ডো, ডিভাইস নিবন্ধন এবং নিরাপদ পরিচয় সংরক্ষণ।
| মাপ | মান | উৎস | পরিমাপকৃত |
|---|---|---|---|
| React নেটিভ কোডবেসের পাশে নেটিভ Android মডিউল | Kotlin modules for overlays, background delivery and enrolment | android source tree in the mobile client repository | |
| মোবাইল ক্লায়েন্টে Kotlin উৎস | 24 files | find . -name '*.kt' across project repositories | |
| পরিচালিত বিতরণ চ্যানেল | 2 (store release and over-the-air update) | mobile release process |
কি ভবন এটা আমাদের শিখিয়েছে
ক্রস-প্ল্যাটফর্ম ফ্রেমেস্কো বিক্রি করা হয় প্রতিশ্রুতি দিয়ে যে আপনি একবার লিখবেন। আপনি হয়ত এক অ্যাপ্লিকেশনের ৮০ শতাংশ লিখেছেন। বাকি পঞ্চমাংশের কাজ হচ্ছে, এবং এটি সবসময়ই এমন অংশ যা অ্যাপটিকে ওয়ার্কবক্সের চেয়েও বেশি স্থানীয় করে তোলে: অ্যাপটি বন্ধ করার সময় যে নোটিফিকেশন আসে, অ্যাপটিকে ফোকাস হারানোর সময় যে ওভারলেজ বাঁচিয়ে রাখে, নিরাপদ উপাদানকে স্পর্শ করে যে নিবন্ধন প্রবাহ।
আমাদের ওভারলে কাজটি একটি সুক্ষ্ম বাগ শ্রেণীর একটি ভাল উদাহরণ। পর্দায় দেখানো বার্তার বাইরে যে কোন বার্তার জন্য একটি ফ্ল্যাট হেড দেখানো হয় - খুবই সহজ, যতক্ষণ না আপনি লক্ষ্য করেন যে অপঠিত ব্যাজটি দুইবার আঁকা হয়েছে, একবার JavaScript এ এবং একবার নেটিভ কোডে, এবং যে হেড দুটি আলাদা স্টোরে বাস করে তাই একটি মুছে ফেলা অন্যটি ভর্তি করে। একটি ভিজুয়াল উপাদানটির জন্য দুটি সত্য উৎস মোবাইল অ্যাপ্লিকেশনের সবচেয়ে সাধারণ কাঠামোগত ত্রুটি এবং এটি প্রায় কখনও দেখা যায় না যতক্ষণ না ব্যবহারকারী কিছু অসম্ভব রিপোর্ট করে।
রেজিস্ট্রেশন আমাদেরকে ক্রমবিভাজন সম্পর্কে শিখিয়েছিল। ডিভাইস রেজিস্ট্রেশন সম্পন্ন হওয়ার আগে একবার রেজিস্ট্রেশন টোকেন ব্যবহার করা হতো, তাই পরবর্তীতে ফ্লোতে যে কোন ব্যর্থতা ব্যবহারকারীকে 'এই কোডটি ইতিমধ্যেই ব্যবহার করা হয়েছে' হিসেবে উপস্থাপন করা হয় - একটি বার্তা যা তাদেরকে পুনরায় চেষ্টা করার পরিবর্তে সমর্থন করার জন্য পাঠায়, এবং কারণ বর্ণনা করার পরিবর্তে একটি উপসর্গ বর্ণনা করে। একাধিক ধাপ বিশিষ্ট একটি ফ্লোরকে ক্রমবিভাজন করা যাতে এর ব্যর্থতার বার্তা সত্যিই থাকে তা নকশার কাজ, শুধু প্রকৌশল নয়।
রিলিজ প্রক্রিয়াটি ইচ্ছাকৃতভাবেই বিরক্তিকর: একটি মেশিনে যেখানে টুলচেইন আছে সেখানে বিল্ড করা হয়, অনলাইন আপডেটগুলো স্টোর রিলিজ থেকে আলাদাভাবে পরিচালিত হয়, আর দিনের শেষে কোনটিই ল্যাপটপ থেকে করা হয় না।
নির্মিত হয়েছে
- React Native
- TypeScript
- Kotlin
- Android SDK
- push notifications
- WebSocket
আমাদের বলুন আপনি কি করতে চাচ্ছেন
আমরা সঠিক লোক কিনা তা জানার জন্য সাধারণত একটি সংক্ষিপ্ত কথাবার্তাই যথেষ্ট। যদি আমরা সঠিক না হই, তাহলে আমরা তা বলব এবং আপনাকে আরো ভালো কোন জায়গায় নিয়ে যাব।
