ওয়াচ ফেস ফরম্যাট সেটআপ

ওয়াচ ফেস ফরম্যাট ব্যবহার করে একটি ঘড়ির মুখ কনফিগার করার জন্য আপনাকে যে সরঞ্জামগুলির প্রয়োজন, প্রকল্পের কাঠামোর উপর কিছু পরামর্শ এবং সেই কাঠামো তৈরি করতে সরঞ্জামগুলি প্রয়োগ করার জন্য একটি ধাপে ধাপে নির্দেশিকা এই নির্দেশিকাটিতে রয়েছে৷

পূর্বশর্ত

ওয়াচ ফেস ফরম্যাট ব্যবহার করার জন্য আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট প্রস্তুত করতে, নিম্নলিখিত সেটআপ ধাপগুলি সম্পূর্ণ করুন:

  1. Android 14 (API লেভেল 34) বা তার বেশির জন্য SDK ইনস্টল করুন। যদি আপনার ঘড়ির মুখটি সংস্করণ 2 এর জন্য নির্দিষ্ট বৈশিষ্ট্য বা আচরণের উপর নির্ভর না করে, তাহলে আপনি পরিবর্তে Android 13 (API স্তর 33) এর জন্য SDK ইনস্টল করতে পারেন।

    SDK-এ aapt2 এবং android.jar সহ অন্যান্য প্রয়োজনীয় টুল রয়েছে।

  2. বিকল্পভাবে , Android স্টুডিও ইনস্টল করুন, যা এই সরঞ্জামগুলিও প্রদান করতে পারে৷

প্রকল্প কাঠামো

আপনি যখন ওয়াচ ফেস ফর্ম্যাট ব্যবহার করে এমন একটি কাস্টম ওয়াচ ফেস তৈরি করেন, তখন কাস্টম ওয়াচ ফেস ফাইলটি অন্তর্ভুক্ত করে এমন অ্যান্ড্রয়েড অ্যাপ বান্ডেল অবশ্যই আপনার Wear OS অ্যাপের যুক্তিযুক্ত Android অ্যাপ বান্ডেল থেকে সম্পূর্ণ আলাদা হতে হবে। Google Play সহ কিছু অ্যাপ স্টোর আপনাকে একটি Android অ্যাপ বান্ডেল আপলোড করতে বাধা দেয় যাতে Wear OS লজিক এবং একটি কাস্টম ঘড়ির মুখ উভয়ই রয়েছে।

ঘড়ির মুখের বান্ডিল তৈরি করুন

একটি ওয়াচ ফেস ফাইলের বৈশিষ্ট্যযুক্ত একটি অ্যান্ড্রয়েড অ্যাপ বান্ডেল তৈরি করতে, নিম্নলিখিত বিভাগে দেখানো পদক্ষেপগুলি সম্পূর্ণ করুন৷

ওয়াচ ফেস ফরম্যাটের ব্যবহার ঘোষণা করুন

আপনার নতুন অ্যাপের ম্যানিফেস্ট ফাইলে ( AndroidManifest.xml ), একটি অ্যাপ্লিকেশন প্রপার্টি যোগ করুন যা আপনার ওয়াচ ফেস ফরম্যাটের ব্যবহার নির্দেশ করে। আপনি Wear OS 5 বা উচ্চতর ডিভাইসের জন্য আপনার ঘড়ির মুখের অ্যাক্সেস সীমাবদ্ধ করতে না চাইলে, 2টি ভিন্ন ওয়াচ ফেস APK তৈরি করুন, একটি যেটি সংস্করণ 2 সমর্থন করে এবং একটি সংস্করণ 1 সমর্থন করে। আপনার অ্যাপের সংস্করণগুলি কীভাবে কনফিগার করবেন সে সম্পর্কে আরও জানুন।

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest ...>
    <!--
        Use SDK version 34 for version 2 of WFF, and SDK version 33 for version
        1 of WFF
    -->
    <uses-sdk
        android:minSdkVersion="34"
        android:targetSdkVersion="34" />

    <!--
        WFF is a resource-only format, so the hasCode attribute should be set to
        false to reflect this.
    -->
    <application
        android:label="@string/watch_face_name"
        android:hasCode="false"
        ...>
        <property
            android:name="com.google.wear.watchface.format.version"
            android:value="2" />
    </application>
</manifest>

ঘড়ির মুখের মেটাডেটা ঘোষণা করুন

আপনার অ্যাপের res/xml রিসোর্স ডিরেক্টরিতে, watch_face_info.xml নামে একটি নতুন ফাইল তৈরি করুন। এখানে আপনি আপনার ঘড়ির মুখের মেটাডেটা সংজ্ঞায়িত করেন:

<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
    <!-- Only "Preview" is required. -->
    <Preview value="@drawable/watch_face_preview" />
    <Category value="CATEGORY_EMPTY" />
    <AvailableInRetail value="true" />
    <MultipleInstancesAllowed value="true" />
    <Editable value="true" />
</WatchFaceInfo>

এই ফাইলের ক্ষেত্রগুলি নিম্নলিখিত বিবরণগুলি উপস্থাপন করে:

Preview
ঘড়ির মুখের একটি প্রিভিউ ইমেজ ধারণ করে এমন অঙ্কনযোগ্য উল্লেখ করে।
Category

ঘড়ির মুখের বিভাগ সংজ্ঞায়িত করে। একটি স্ট্রিং বা একটি স্ট্রিংয়ের একটি রেফারেন্স হতে হবে, যেমন @string/ref_name । প্রতিটি ডিভাইস প্রস্তুতকারক ঘড়ির মুখের বিভাগগুলির নিজস্ব সেট সংজ্ঞায়িত করতে পারে।

ডিফল্ট মান: empty_category_meta , যা ঘড়ির মুখ চয়নকারী দৃশ্যের নীচে অন্যান্য "খালি বিভাগ" ঘড়ির মুখগুলির সাথে এই ঘড়িটির মুখকে একত্রিত করে৷

AvailableInRetail

ঘড়ির মুখ ডিভাইসের খুচরা ডেমো মোডে উপলব্ধ কিনা। একটি বুলিয়ান মান, অথবা @bool/watch_face_available_in_retail এর মতো একটি বুলিয়ান মানের রেফারেন্স হতে হবে।

ডিফল্ট মান: false

MultipleInstancesAllowed

ঘড়ির মুখে একাধিক পছন্দ থাকতে পারে কিনা। একটি বুলিয়ান মান, অথবা @bool/watch_face_multiple_instances_allowed এর মতো একটি বুলিয়ান মানের রেফারেন্স হতে হবে।

ডিফল্ট মান: false

Editable

ঘড়ির মুখটি সম্পাদনাযোগ্য কিনা, যার অর্থ ঘড়ির মুখের একটি সেটিং বা কমপক্ষে একটি অ-নির্ধারিত জটিলতা রয়েছে। এটি পছন্দের তালিকায় ঘড়ির মুখের জন্য সম্পাদনা বোতামটি দেখানো বা লুকানোর জন্য ব্যবহৃত হয়।

ডিফল্ট মান: মিথ্যা

ঘড়ির মুখের নাম ঘোষণা করুন

আপনার অ্যাপের ম্যানিফেস্ট ফাইলে ( AndroidManifest.xml ), আপনার ঘড়ির মুখের নামের সাথে android:label অ্যাট্রিবিউট সেট করুন:

<application android:label="@string/watch_face_name" >

ঘড়ির মুখের আকারের জন্য সমর্থন ঘোষণা করুন (ঐচ্ছিক)

আপনি বিভিন্ন আকারের ঘড়ির মুখের জন্য ভিন্ন আচরণ সমর্থন করতে চাইলেই এই পদক্ষেপটি প্রয়োজনীয়। আপনি যদি ঘড়ির আকারের সাথে আপনার ঘড়ির মুখের আকারের জন্য খুশি হন তবে আপনি এই পদক্ষেপটি এড়িয়ে যেতে পারেন।

আপনার অ্যাপের res/xml রিসোর্স ডিরেক্টরিতে, আপনি watch_face_shapes.xml এ সমর্থন করেন এমন ঘড়ির মুখের আকারের সেট ঘোষণা করুন :

<WatchFaces>
    <!-- The default shape is "CIRCLE". -->
    <WatchFace shape="CIRCLE" width="300" height="300"
               file="@raw/watchface"/>
    <WatchFace shape="CIRCLE" width="450" height="450"
               file="@raw/watchface_large_circle"/>
    <WatchFace shape="RECTANGLE" width="380" height="400"
               file="@raw/watchface_rectangle"/>
</WatchFaces>

ঘড়ির মুখের বিবরণ ঘোষণা করুন

আপনার অ্যাপের res/raw রিসোর্স ডিরেক্টরিতে, আপনি ঘড়ির মুখের আকারগুলির জন্য সমর্থন ঘোষণা করার সময় ব্যবহৃত file বৈশিষ্ট্যের মানগুলির সাথে সম্পর্কিত ফাইলগুলি তৈরি করুন৷

এখানেই আপনি প্রতিটি ঘড়ির মুখের আকারের জন্য আপনার ঘড়ির মুখের চেহারা এবং আচরণ সংজ্ঞায়িত করেন। আপনি যদি একটি আকার ফাইল সংজ্ঞায়িত না করেন, তাহলে আপনাকে শুধুমাত্র একটি ফাইল তৈরি করতে হবে, watchface.xml

এই পৃষ্ঠা থেকে উদাহরণ ব্যবহার করে, কাঁচা XML ফাইলগুলি হবে:

  • res/raw/watchface.xml
  • res/raw/watchface_large_circle.xml
  • res/raw/watchface_rectangle.xml

মূল উপাদানটি সর্বদা WatchFace :

<WatchFace width="450" height="450" clipShape="CIRCLE">
    <!-- Remainder of your Watch Face Format definition here. -->
    <!-- If this file defines a watch face for a circular device shape, place
         resources used in this file in the "/res/drawable-nodpi" directory. -->
    <!-- If this file defines a watch face for a rectangular or other
         non-circular shape, place resources ued in this file in the
         "/res/drawable-notround-nodpi" directory. -->
</WatchFace>

ঘড়ির মুখ প্রকাশক শনাক্ত করুন (ঐচ্ছিক)

ঐচ্ছিকভাবে, আপনার অ্যাপের ম্যানিফেস্ট ফাইলে, একটি নির্বিচারে স্ট্রিং ঘোষণা করুন যা আপনি ঘড়ির মুখের প্রকাশক, বা আপনি যে টুলের নাম এবং সংস্করণটি ব্যবহার করছেন তা সনাক্ত করতে ব্যবহার করতে পারেন:

<application ...>
    ...
    <property
        android:name="com.google.wear.watchface.format.publisher"
        android:value="{toolName}-{toolVersion}" />
</application>

আপনার ঘড়ির মুখের সঠিকতা এবং কর্মক্ষমতা পরীক্ষা করুন

ডেভেলপমেন্টের সময়, এবং Google Play-তে আপলোড করার আগে, আপনার ঘড়ির মুখটি ত্রুটিমুক্ত কিনা এবং এটি মেমরি ব্যবহারের সুপারিশগুলি মেনে চলছে কিনা তা পরীক্ষা করতে যাচাইকারী সরঞ্জামগুলি ব্যবহার করুন৷

আপনার ওয়াচ ফেস অ্যাপ বান্ডিল তৈরি করুন

আপনার ঘড়ির মুখ ধারণ করে এমন Android অ্যাপ বান্ডেল তৈরি করতে, গ্রেডল বিল্ড সিস্টেম ব্যবহার করুন। Gradle ব্যবহার করে কীভাবে একটি অ্যাপ তৈরি করবেন সে সম্পর্কে আরও জানুন।

এটি GitHub নমুনাগুলিতে প্রদর্শিত হয়।

{% শব্দার্থে %} {% endverbatim %} {% শব্দার্থে %} {% endverbatim %}