Mendix FAQ
Pushwoosh মডিউলের জন্য কোন Studio Pro সংস্করণ প্রয়োজন?
Anchor link toStudio Pro 11.12.3 বা নতুন সংস্করণ। মডিউল প্যাকেজটি সেই মডেল ফরম্যাটের সংস্করণ দিয়ে তৈরি করা হয়েছে, এবং Studio Pro নিজের থেকে নতুন কোনো সংস্করণে তৈরি প্যাকেজ খুলতে অস্বীকার করে।
এর থেকে কম সংস্করণে না যাওয়ার দ্বিতীয় একটি কারণ আছে। Mendix, Studio Pro, নেটিভ টেমপ্লেট এবং React Native একসাথে মুভ করে, তাই Studio Pro সংস্করণটি ঠিক করে যে আপনার অ্যাপ কোন React Native সংস্করণে চলবে, এবং মডিউলটি React Native 0.84-এর বিরুদ্ধে তৈরি করা হয়েছে। নেটিভ টেমপ্লেট রিপোজিটরিতে এর অথরিটেটিভ ম্যাপিং হল mendix_version.json।
মডিউল যোগ করার পর কিছুই হয় না কেন?
Anchor link toঅ্যাপটি সম্ভবত Make It Native অ্যাপে চলছে, যেখানে থার্ড-পার্টি নেটিভ কোড থাকতে পারে না, তাই প্রতিটি Pushwoosh অ্যাকশন নীরবে ব্যর্থ হয়। এর পরিবর্তে একটি কাস্টম ডেভেলপার অ্যাপ বা একটি আসল নেটিভ বিল্ড তৈরি করুন।
যদি অ্যাপটি ইতিমধ্যে একটি নেটিভ বিল্ড হয়, তবে পরীক্ষা করে দেখুন যে Pushwoosh events উইজেটটি প্রথমে লোড হওয়া পেজে আছে এবং এর Application Code প্রপার্টি পূরণ করা আছে। একটি বৈধ Application Code ছাড়া SDK শুরু হয় না।
Android-এ নোটিফিকেশন আসা বন্ধ হয়ে যায় কেন?
Anchor link toএকই Firebase ইভেন্টের জন্য দুটি নোটিফিকেশন পরিষেবা রেজিস্টার করা আছে এবং একে অপরকে শ্যাডো করে।
Pushwoosh একটি Mendix অ্যাপের বিল্ট-ইন পুশ নোটিফিকেশনের পাশে কাজ না করে সেটিকে প্রতিস্থাপন করে। Native Mobile Builder-এ, ক্যাপাবিলিটিগুলি নিম্নরূপ সেট করুন:
- Push notifications: বন্ধ।
- Firebase Android: চালু, যাতে
google-services.jsonএখনও পিক আপ করা হয়।
com.google.firebase.MESSAGING_EVENT-এর জন্য শুধুমাত্র একটি পরিষেবা রেজিস্টার করা যেতে পারে। যদি আপনার অ্যাপে অন্য কোনো প্লাগইন থাকে যা একটি রেজিস্টার করে, তাহলে দেখুন অন্যান্য FCM পরিষেবাগুলির সাথে Pushwoosh SDK ব্যবহার করা।
Pushwoosh events উইজেট ব্যবহার করার সময় কি আমার Initialize কল করতে হবে?
Anchor link toনা। উইজেটটি তার Application Code প্রপার্টি থেকে নিজেই SDK ইনিশিয়ালাইজ করে। Initialize অ্যাকশনটি সেই অ্যাপগুলির জন্য বিদ্যমান যা উইজেট স্থাপন করার পরিবর্তে একটি ন্যানোফ্লো থেকে SDK শুরু করে, উদাহরণস্বরূপ যখন ব্যবহারকারী সাইন ইন না করা পর্যন্ত Application Code জানা যায় না।
উভয়কে কল করা ক্ষতিকারক নয়, কিন্তু আপনার ন্যানোফ্লো চলার সময়ের মধ্যে উইজেটটি ইতিমধ্যে কাজটি করে ফেলেছে।
একটি Mendix এক্সপ্রেশন থেকে SetTags বা PostEvent-এ আমি কীভাবে JSON পাস করব?
Anchor link toJSON-টি সিঙ্গেল কোটে লিখুন, যাতে এর ভিতরের ডাবল কোটগুলি আনএস্কেপড থাকে:
'{"Language":"en","Level":7}'একটি Mendix এক্সপ্রেশনে একটি স্ট্রিং সিঙ্গেল কোট দ্বারা সীমাবদ্ধ থাকে, যা JSON-এর ডাবল কোটগুলিকে যেমন আছে তেমন ব্যবহার করার জন্য মুক্ত রাখে। সেগুলিকে দ্বিগুণ করা বা একটি ব্যাকস্ল্যাশ দিয়ে এস্কেপ করলে এমন একটি স্ট্রিং তৈরি হয় যা অ্যাকশনটি পার্স করতে পারে না, এবং অ্যাকশনটি একটি পার্স এরর দিয়ে এটিকে প্রত্যাখ্যান করে।
অ্যাপ খোলা থাকা অবস্থায় আমি কীভাবে সিস্টেম অ্যালার্ট বন্ধ করব?
Anchor link toডিফল্টরূপে, অ্যাপ খোলা থাকা অবস্থায় আসা একটি নোটিফিকেশন সিস্টেম দ্বারা একটি অ্যালার্ট হিসাবে দেখানো হয়, এবং উইজেটের On push received ন্যানোফ্লোও চলে। অ্যালার্টটি দমন করতে এবং শুধুমাত্র ন্যানোফ্লোতে নোটিফিকেশনটি হ্যান্ডেল করতে SetShowForegroundAlert অ্যাকশনটিকে false দিয়ে কল করুন, উদাহরণস্বরূপ আপনার নিজের একটি বার্তা দেখিয়ে বা একটি তালিকা রিফ্রেশ করে।
সেই অ্যাকশনটি শুধুমাত্র iOS-এ কল করুন। Android SDK এই সেটিংটি এক্সপোজ করে না, এবং JavaScript র্যাপারটি শর্তহীনভাবে নেটিভ মেথড কল করে, তাই Android-এ অ্যাকশনটি কিছুই না করার পরিবর্তে একটি এরর দেখায়।
আমি কি Mac-এর জন্য Studio Pro দিয়ে নেটিভ অ্যাপ তৈরি করতে পারি?
Anchor link toNative Mobile Builder দিয়ে নয়, যা শুধুমাত্র Studio Pro-এর Windows সংস্করণের সাথে আসে। Mac বিল্ডে বাকি সবকিছু কাজ করে, যার মধ্যে মডিউল লেখা, উইজেট স্থাপন করা এবং অ্যাপ এক্সপোর্ট করা অন্তর্ভুক্ত।
macOS-এ, @mendix/native-mobile-toolkit কমান্ড লাইন টুল দিয়ে নেটিভ টেমপ্লেট কনফিগার করুন, যা একটি কনফিগারেশন ফাইল থেকে ক্যাপাবিলিটি, রানটাইম URL, অ্যাপ আইডেন্টিফায়ার এবং নেটিভ ডিপেন্ডেন্সি সেট করে। তারপর Xcode এবং Gradle দিয়ে স্থানীয়ভাবে জেনারেট করা iOS এবং Android প্রজেক্টগুলি তৈরি করুন।
আমি কীভাবে একটি নির্দিষ্ট ডিভাইসে একটি টেস্ট নোটিফিকেশন পাঠাব?
Anchor link toGetHwid অ্যাকশনটি কল করে ডিভাইসের HWID পান, এবং Pushwoosh Control Panel বা সার্ভার API থেকে সেই HWID-কে অ্যাড্রেস করুন। ডিভাইসটিকে একটি টেস্ট ডিভাইস হিসাবে রেজিস্টার করা এটি করার অন্য একটি উপায়, যা আপনার ইন্টিগ্রেশন পরীক্ষা করুন-এ বর্ণিত আছে।