প্রোডাক্ট সম্পর্কিত খবর

ওয়াচফেস পুশের মাধ্যমে Wear OS-এ Androidify নিয়ে আসা

৩ মিনিট রিডিং
Garan Jenkin-এর প্রোফাইল দেখুন
Garan Jenkin ডেভেলপার রিলেশন ইঞ্জিনিয়ার

 

 

কয়েক মাস আগে আমরা Androidify অ্যাপ আবার লঞ্চ করেছি। এই অ্যাপের মাধ্যমে পছন্দমতো Android বট তৈরি করা যায়। Androidify আপনার সেলফি ফটোকে Gemini ও Imagen ব্যবহার করে মজাদার Android বটে ট্রান্সফর্ম করে।

তবে, Android যেহেতু একাধিক ফর্ম ফ্যাক্টর জুড়ে বিস্তৃত, যার মধ্যে আমাদের সবচেয়ে সাম্প্রতিক সংযোজন XR অন্তর্ভুক্ত, তাই আমরা ভেবেছি, কীভাবে Wear OS-এ Androidify-এর মজা নিয়ে আসা যায়?

Androidify ওয়াচফেস

Androidify বট অত্যন্ত বেশি পছন্দমতো করে নেওয়া যায়, তাই ওয়াচফেসে সেগুলিকে দেখানোই স্বাভাবিক। এটি শুধু সবচেয়ে বেশিবার দেখা যায় এমন সারফেসই নয়, সবচেয়ে ব্যক্তিগত সারফেসও বটে, যা আপনাকে নিজের পরিচয় তুলে ধরতে সাহায্য করে।

demonstration.gif

সেলফি ছবি থেকে জেনারেট করা পছন্দমতো Androidify ওয়াচফেস

Androidify এখন ফোন অ্যাপের মধ্যে ডায়নামিক ওয়াচফেস তৈরি করতে পারে এবং তারপরে এটি আপনার ওয়াচে পাঠাতে পারে, যেখানে এটি অটোমেটিক আপনার ওয়াচফেস হিসেবে সেট হয়ে যাবে। এইসব কিছু কয়েক সেকেন্ডের মধ্যেই ঘটে যায়!

হাই-লেভেল ডিজাইন

image.png

ওয়াচফেস তৈরি ও ইনস্টল করার এন্ড-টু-এন্ড ফ্লো

সম্পূর্ণ অভিজ্ঞতা পাওয়ার জন্য, এই হাই-লেভেল ডিজাইন ডায়াগ্রামে দেখানো হয়েছে এমন একাধিক প্রযুক্তিকে একসাথে ব্যবহার করতে হবে।

প্রথমত, ব্যবহারকারীর অবতার আগে থেকে থাকা ওয়াচ ফেস ফর্ম্যাট টেমপ্লেটের সাথে একত্রিত করা হয়, যা পরে APK-তে প্যাকেজ করা হয়। এটি যাচাই করা হয়েছে - কারণগুলি ব্যাখ্যা করা হবে! - এবং ওয়াচে পাঠানো হয়েছে।

ঘড়িতে পাওয়ার পরে, Wear OS 6-এর অংশ হিসেবে নতুন Watch Face Push API ব্যবহার করে ওয়াচফেস ইনস্টল ও অ্যাক্টিভেট করা হয়।

আসুন, বিস্তারিতভাবে জেনে নেওয়া যাক:

ওয়াচফেস টেমপ্লেট তৈরি করা

ওয়াচ ফেসটি একটি টেমপ্লেট থেকে তৈরি করা হয়, যেটি ওয়াচ ফেস ডিজাইনার-এ ডিজাইন করা হয়। এটি আমাদের নতুন Figma প্লাগ-ইন যা আপনাকে সরাসরি Figma-র মধ্যে Watch Face Format ওয়াচফেস তৈরি করতে দেয়।

image.png

Watch Face Designer-এ Androidify ওয়াচফেস টেমপ্লেট

প্লাগ-ইনটি ওয়াচ ফেস ফর্ম্যাট (WFF) রিসোর্স সহ বিভিন্ন উপায়ে ওয়াচ ফেস এক্সপোর্ট করার অনুমতি দেয়। এগুলি তারপরে ফাইনাল ওয়াচ ফেস ডায়নামিক পদ্ধতিতে তৈরি করার জন্য Androidify অ্যাপের মধ্যে অ্যাসেট হিসেবে সহজেই অন্তর্ভুক্ত করা যেতে পারে।

প্যাকেজিং ও যাচাইকরণ

টেমপ্লেট ও অবতার একত্রিত করা হয়ে গেলে, APK অ্যাসেম্বল করার জন্য পোর্টেবল অ্যাসেট কম্পাইলার কিট (প্যাক) ব্যবহার করা হয়।

Androidify-তে, Pack-কে ফোনে নেটিভ লাইব্রেরি হিসেবে ব্যবহার করা হয়। প্যাক লাইব্রেরির সাথে Androidify ইন্টারফেস কীভাবে কাজ করে সেই বিষয়ে আরও জানতে, GitHub রিপোজিটরি দেখুন।

ট্রান্সমিশনের আগে শেষ ধাপ হিসেবে, APK ওয়াচ ফেজ পুশ ভ্যালিডেটর দ্বারা চেক করা হয়।

এই ভ্যালিডেটর চেক করে যে APK ইনস্টল করার উপযুক্ত কিনা। এর মধ্যে, এটি নিশ্চিত করার জন্য APK-এর কন্টেন্ট চেক করা অন্তর্ভুক্ত যে এটি একটি বৈধ ওয়াচফেস এবং কিছু পারফর্ম্যান্স চেক করা। এটি সঠিক হলে, ভ্যালিডেটর একটি টোকেন তৈরি করে।

ইনস্টলেশনের জন্য ওয়াচের এই টোকেন প্রয়োজন।

ওয়াচফেস পাঠানো হচ্ছে

Wear OS-এ Androidify অ্যাপ WearableListenerService ব্যবহার করে Wearable ডেটা লেয়ারে ইভেন্ট শোনার জন্য।

ফোন অ্যাপ ওয়াচফেস ট্রান্সফার করে প্রসেস সেট-আপ করার জন্য MessageClient এবং তারপরে APK স্ট্রিম করার জন্য ChannelClient ব্যবহার করে।

ওয়াচে ওয়াচফেস ইনস্টল করা

Wear OS ডিভাইসে ওয়াচ ফেসটি পাওয়া গেলে, Androidify অ্যাপ ওয়াচ ফেস ইনস্টল করার জন্য নতুন Watch Face Push API ব্যবহার করে:

val wfpManager = 

    WatchFacePushManagerFactory.createWatchFacePushManager(context)

val response = wfpManager.listWatchFaces()



try {

    if (response.remainingSlotCount > 0) {

        wfpManager.addWatchFace(apkFd, token)

    } else {

        val slotId = response.installedWatchFaceDetails.first().slotId

        wfpManager.updateWatchFace(slotId, apkFd, token)

    }

} catch (a: WatchFacePushManager.AddWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

} catch (u: WatchFacePushManager.UpdateWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

}

পরিস্থিতির উপর নির্ভর করে Androidify addWatchFace অথবা updateWatchFace পদ্ধতি ব্যবহার করে: ওয়াচ ফেস পুশ "স্লট" সংক্রান্ত ধারণা নির্ধারণ করে - কোনও নির্দিষ্ট অ্যাপ যেকোনও সময় কতগুলি ওয়াচ ফেস ইনস্টল করতে পারে। Wear OS 6-এর ক্ষেত্রে, এই ভ্যালু আসলে ১।

Androidify-এর পদ্ধতি হল, কোনও ফ্রি স্লট থাকলে ওয়াচফেস ইনস্টল করা এবং না থাকলে, নতুনটির জন্য আগে থেকে থাকা কোনও ওয়াচফেস সরিয়ে দেওয়া।

অ্যাক্টিভ ওয়াচফেস সেট করা

প্রোগ্রামাটিক পদ্ধতিতে ওয়াচফেস ইনস্টল করা একটি দারুণ পদক্ষেপ, তবে Androidify এটিও নিশ্চিত করতে চায় যে ওয়াচফেসটি অ্যাক্টিভ ওয়াচফেস। 

ওয়াচ ফেসে পুশ করার জন্য নতুন রানটাইম অনুমতি চালু করা হয়েছে যা অ্যাপকে এটি করতে দেওয়ার জন্য অবশ্যই দিতে হবে:

com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE

এই অনুমতি পাওয়ার পরে, ইনস্টল করা ওয়াচফেসকে অ্যাক্টিভ ওয়াচফেস হিসেবে সেট করতে, wfpManager.setWatchFaceAsActive() পদ্ধতি কল করা যেতে পারে।

তবে, Androidify-কে বেশ কিছু বিষয় বিবেচনা করে চলতে হয়:

  • setWatchFaceAsActive শুধুমাত্র একবার ব্যবহার করা যাবে।
  • ব্যবহারকারী প্রত্যাখ্যান করার পরে SET_PUSHED_WATCH_FACE_AS_ACTIVE আবার অনুরোধ করা যাবে না।
  • Androidify হয়ত আগেই অ্যাক্টিভ ওয়াচফেস কন্ট্রোল করছে।

আরও বিবরণের জন্য, Androidify কীভাবে সেট অ্যাক্টিভ লজিক প্রয়োগ করে তা দেখুন।

Wear OS-এর জন্য Watch Face Push ব্যবহার করা শুরু করা

Watch Face Push হল একটি বহুমুখী API, এটি যেমন Androidify-কে উন্নত করার জন্য উপযুক্ত, তেমনই সম্পূর্ণ ফিচারযুক্ত ওয়াচফেস মার্কেটপ্লেস তৈরি করার জন্যও উপযুক্ত।

আপনার হয়ত আগে থেকেই একটি ফোন অ্যাপ আছে এবং আপনি ব্যবহারকারীদের আরও বেশি করে এনগেজ ও খুশি করার সুযোগ খুঁজছেন?

অথবা আপনি হয়ত একজন বর্তমান ওয়াচ ফেস ডেভেলপার যিনি মার্কেটপ্লেস অ্যাপ প্রকাশ করার মাধ্যমে নিজের কমিউনিটি ও গ্যালারি তৈরি করতে চান?

এইসব রিসোর্স দেখুন:

এছাড়াও, কীভাবে আমরা Wear OS-এ Androidify নিয়ে এসেছি তা আরও গভীরভাবে দেখতে সহায়ক ভিডিও দেখুন!

আপনি Watch Face Push-এর সাহায্যে কী তৈরি করবেন তা দেখার জন্য আমরা অপেক্ষা করছি!

এর লেখা:
পড়া চালিয়ে যান