اپنے ایپ کیلئے اینڈروئیڈ ویجیٹ بنائیں

مصنف: Lewis Jackson
تخلیق کی تاریخ: 13 مئی 2021
تازہ کاری کی تاریخ: 1 جولائی 2024
Anonim
اپنے ایپ کیلئے اینڈروئیڈ ویجیٹ بنائیں - ایپس
اپنے ایپ کیلئے اینڈروئیڈ ویجیٹ بنائیں - ایپس

مواد


OS کے ابتدائی ایام کے بعد سے ، Android کے بارے میں وگیٹس نے صارفین کو اپنی پسندیدہ اسکرین کے ساتھ ، اپنی ہوم اسکرین کی سکون سے منسلک ہونے کی اجازت دی ہے۔ تو آپ کس طرح ایک Android ویجیٹ تشکیل دے سکتے ہیں؟

ڈویلپر کے ل w ، ویجٹ آپ کے اطلاق کو صارف کے ہوم اسکرین پر ایک قابل قدر موجودگی فراہم کرتے ہیں۔ ایپ ڈرا پر نظر ڈالنے کے بجائے ، صارفین کو آپ کی ایپ کے بارے میں یاد دلائے جائیں گے ہر ایک دفعہ آپ کی ایپ کے انتہائی دلچسپ اور مفید مواد کا جائزہ لینے کے ساتھ ساتھ وہ اپنے ہوم اسکرین پر بھی نگاہ ڈالتے ہیں۔

وجیٹس آپ کے اطلاق کو صارف کے ہوم اسکرین پر ایک قابل قدر موجودگی دیتی ہیں

اس آرٹیکل میں ، میں آپ کو دکھاتا ہوں کہ اینڈروئیڈ ویجیٹ بنا کر صارفین کو آپ کے ایپ میں مشغول ہونے کی ترغیب دیتے ہوئے بہتر صارف کا تجربہ کیسے پیش کیا جا!! اس مضمون کے اختتام تک ، آپ نے ایک سکرول قابل مجموعہ ویجیٹ تیار کیا ہے جو صارف کے ہوم اسکرین پر ایک مکمل ڈیٹا سیٹ دکھاتا ہے۔

اس بات کو یقینی بنانے کے لئے کہ آپ صارفین کو کس قسم کا ویجیٹ فراہم کررہے ہیں چاہتے ہیں ان کے ہوم اسکرین پر رکھنے کے ل we ، ہم ایک تشکیلاتی سرگرمی بھی بنائیں گے ، جس سے صارفین کو ویجیٹ کے مواد ، نمائش اور خصوصیات کو اپنی مرضی کے مطابق کرنے کی سہولت ملے گی۔ آخر میں ، میں آپ کو دکھاؤں گا کہ آپ کس طرح لوگوں کو اپنے ویجیٹ کے استعمال کے لئے حوصلہ افزائی کرسکتے ہیں ، ایک ویجیٹ پیش نظارہ امیج بنا کر جو آپ کے ویجیٹ کی پیش کش کی بہترین نمائش کرتی ہے۔


یہ بھی پڑھیں: فولڈ ایبل ڈیوائسز کے لئے تیار کرنا: آپ کو کیا جاننے کی ضرورت ہے

اینڈروئیڈ کیلئے وجیٹس کیا ہیں؟

ایک ایپلی کیشن ویجیٹ ایک ہلکا پھلکا ، چھوٹے ایپلی کیشن ہے جو صارف کے ہوم اسکرین پر رہتا ہے۔

اینڈروئیڈ کے لئے وگیٹس متعدد مواد فراہم کرسکتے ہیں ، لیکن عام طور پر درج ذیل میں سے کسی ایک زمرے میں آتے ہیں۔

  • معلومات ویجیٹ. یہ ایک غیر طومار ویجیٹ ہے جو کچھ معلومات دکھاتا ہے ، جیسے آج کے موسم کی پیش گوئی یا تاریخ اور وقت۔
  • کلیکشن کی بارے چیزیں. یہ ایک سکرال قابل ویجیٹ ہے جو لسٹ ویو ، گرڈ ویو ، اسٹیک ویو ، یا اڈاپٹر ویو فلپائپر کے طور پر فارمیٹ کردہ ، متعلقہ ڈیٹا کا ایک سیٹ دکھاتا ہے۔ کلیکشن ویجٹ کو عام طور پر ڈیٹا سورس ، جیسے ڈیٹا بیس یا کسی سرے سے تعاون حاصل ہوتا ہے۔
  • ویجٹ کو کنٹرول کریں. یہ ویجٹ ایک ریموٹ کنٹرول کے طور پر کام کرتے ہیں جو صارفین کو آپ کی درخواست کے ساتھ تعامل کرنے کے اہل بناتے ہیں ، بغیر اسے پیش منظر پر لانا ہے۔ میڈیا کو چلانے والے ایپس ، جیسے پوڈ کاسٹ یا میوزک ، کے پاس اکثر کنٹرول ویجٹ ہوتے ہیں جن کی مدد سے صارف اپنے پلے اسکرین سے Play ، Pause ، اور Skip کے عمل کو براہ راست متحرک کرسکتے ہیں۔
  • ہائبرڈ ویجٹ. بعض اوقات آپ متعدد قسموں کے عناصر کو ملا کر بہتر صارف کا تجربہ پیش کرسکتے ہیں۔ مثال کے طور پر ، اگر آپ میوزک ایپلی کیشن کے لئے کنٹرول ویجیٹ تیار کررہے ہیں تو پھر آپ پلے ، موقوف اور اسکپ کنٹرول فراہم کرسکتے ہیں ، لیکن آپ کچھ معلومات ظاہر کرنے کا فیصلہ بھی کرسکتے ہیں ، جیسے گانے کا عنوان اور مصور۔ اگر آپ اختلاط اور ملاپ کرنے کا فیصلہ کرتے ہیں تو ، پھر نہیں جاتے ہیں! وجیٹس بہترین صارف کا تجربہ پیش کرتے ہیں جب وہ بروقت ، متعلقہ معلومات یا عام طور پر استعمال ہونے والی کچھ خصوصیات میں بہت کم مقدار میں آسانی سے رسائی فراہم کرتے ہیں۔ اپنے ہائبرڈ وگیٹس کو ہلکا پھلکا رکھنے میں مدد کے ل it ، تجویز کردہ ہے کہ آپ اپنے ویجیٹ کے بنیادی زمرے کی شناخت کریں ، اس زمرے کے مطابق اس کی ترقی کریں ، اور پھر ویجیٹ کے ثانوی زمرے میں سے کچھ عناصر شامل کریں۔

کیا میرے پروجیکٹ کو واقعی میں کسی ایپلیکیٹ ویجیٹ کی ضرورت ہے؟

آپ کو اپنے Android پروجیکٹ میں ایپلیکیشن ویجیٹ شامل کرنے پر غور کرنے کی بہت ساری وجوہات ہیں۔


اینڈروئیڈ کے لئے وگیٹس صارف کے تجربے کو بہتر بناسکتے ہیں

عام اصول کے طور پر ، کسی کام کو مکمل کرنے کے لئے کم نیویگیشنل اقدامات کی ضرورت ہوتی ہے ، صارف کا تجربہ اتنا ہی بہتر ہوتا ہے۔

ایک ایپلیکیشن ویجیٹ فراہم کرکے ، آپ اپنے ایپ کے سب سے عام استعمال ہونے والے بہاؤ سے ایک سے زیادہ نیویگیشنل مراحل کو دور کرسکتے ہیں۔ بہترین صورتحال میں ، آپ کے صارفین اپنے ہوم اسکرین پر صرف نظر ڈال کر اپنی مطلوبہ معلومات حاصل کرسکیں گے ، یا صرف اپنے کنٹرول ویجیٹ میں بٹن ٹیپ کرکے مطلوبہ کام انجام دیں گے۔

ایپلیکیشن شارٹ کٹ سے زیادہ طاقتور

ایپ ویجٹ اکثر متعلقہ ایپلی کیشن میں اعلی سطحی لانچ کرکے ، ایپلی کیشن شارٹ کٹ کی طرح ، آن کلیک واقعات کا جواب دیتے ہیں۔ تاہم ، ویجٹ کسی ایپلی کیشن کے اندر مخصوص سرگرمیوں تک براہ راست رسائی بھی فراہم کرسکتے ہیں ، مثال کے طور پر کسی ویجیٹ کی نئی موصولہ نوٹیفکیشن کو ٹیپ کرنے سے متعلقہ ایپ کو پہلے ہی کھلے ہوئے کے ساتھ لانچ کیا جاسکتا ہے۔

اپنے ویجیٹ کی ترتیب میں متعدد لنکس کو سرایت کرکے ، آپ اپنے ایپ کی سب سے اہم سرگرمیوں کو ایک نلکے تک رسائی فراہم کرسکتے ہیں ، اپنے عام طور پر استعمال ہونے والے بہاؤوں سے بھی زیادہ نیویگیشنل اقدامات کو ہٹا کر۔

اپنے ویجیٹ کی ترتیب میں متعدد لنکس کو سرایت کرکے ، آپ اپنی ایپ کی سب سے اہم سرگرمیوں کو ایک نلکے تک رسائی فراہم کرسکتے ہیں۔

نوٹ کریں کہ ویجٹ صرف آن کلیک کے واقعات کا جواب دیتے ہیں ، جو صارفین کو آپ کے ویجیٹ کے ساتھ جب آپ ہوم اسکرین میں ادھر ادھر ادھر ادھر ادھر ادھر ادھر ادھر ادھر ادھر ادھر ادھر تعارض کرتے ہیں تو روکتا ہے۔ صرف استثناء تب ہے جب صارف آپ کے ویجیٹ کو اس کے ہوم اسکرین کے ہٹانے کی کارروائی کی طرف گھسیٹ کر اسے حذف کرنے کی کوشش کر رہا ہے ، کیونکہ اس منظر نامے میں آپ کا ویجیٹ عمودی سوائپ اشارے کا جواب دے گا۔

یہ تعامل اینڈروئیڈ سسٹم کے ذریعہ چلتا ہے ، لہذا آپ کو اپنے ویجیٹ میں عمودی سوائپ سپورٹ کو دستی طور پر لاگو کرنے کے بارے میں فکر کرنے کی ضرورت نہیں ہے۔

طویل مدتی مشغولیت کو چلانے کے لئے ایک Android ویجیٹ بنائیں

لوگوں کو اپنی ایپ ڈاؤن لوڈ کرنے پر راضی کرنا ایک کامیاب اینڈرائیڈ ایپلی کیشن بنانے کا صرف پہلا قدم ہے۔ امکانات یہ ہیں کہ ، اگر آپ خود اپنا اینڈرائڈ اسمارٹ فون یا ٹیبلٹ پکڑ لیتے ہیں اور ایپ ڈرا کے ذریعے سوائپ کرتے ہیں تو آپ کو ایک سے زیادہ ایپس دریافت ہوجائیں گی جو آپ نے دنوں ، ہفتوں یا ممکنہ طور پر مہینوں میں استعمال نہیں کی ہیں!

یہ بھی پڑھیں:Android SDK کے لئے فیس بک کے ساتھ شروعات کرنا

ایک بار جب آپ کی ایپ صارف کے آلہ پر کامیابی کے ساتھ انسٹال ہوجائے تو ، آپ کو ان کو مصروف رکھنے اور اپنی ایپ سے لطف اندوز کرنے کے لئے سخت محنت کرنے کی ضرورت ہوگی۔ آپ کی ایپ کو ہوم اسکرین پر موجودگی طویل مدتی مصروفیت کو چلانے میں مدد دینے کا ایک طاقتور ذریعہ ہوسکتا ہے ، صرف اس وجہ سے کہ آپ کی ایپلیکیشن موجود ہے!

ایک اچھی طرح سے ڈیزائن کردہ ویجیٹ آپ کی ایپ کے لئے جاری اشتہار کے طور پر بھی کام کرسکتا ہے۔ جب بھی صارف ان کے ہوم اسکرین پر نگاہ ڈالتا ہے ، آپ کے ویجیٹ کو موقع ملتا ہے کہ وہ آپ کی ایپ کے سب سے دلچسپ اور مفید مواد کے ساتھ پیش کرکے ، انہیں فعال طور پر آپ کی ایپ کے ساتھ دوبارہ مشغول ہونے کی ترغیب دیں۔

کلیکشن ایپ ویجیٹ بنانا

اس ٹیوٹوریل میں ، ہم ایک کلیکشن ویجیٹ تیار کر رہے ہیں جو ایک سکری لسٹ ویو کے بطور ایک صف دکھائے گا۔

ایپ ویجیٹ کی زندگی گزارنے میں آپ کی مدد کرنے کے ل this ، یہ ویجیٹ مختلف ٹورسٹ کو بھی متحرک کرے گا کیونکہ یہ زندگی کے مختلف حصوں میں جاتا ہے۔ اس ٹیوٹوریل کے اختتام کی طرف ، ہم اپنے ویجیٹ کو اپنی مرضی کے مطابق پیش نظارہ امیج کے ساتھ بڑھا رہے ہیں جو اینڈرائیڈ کے ویجیٹ چنندہ اور کنفیگریشن ایکٹیویٹی میں دکھائے جائیں گے ، جس کی مدد سے صارفین اپنے ہوم اسکرین پر رکھنے سے پہلے ویجیٹ کو اپنی مرضی کے مطابق بنائیں گے۔

اپنی پسند کی ترتیبات کے ساتھ ایک نیا اینڈروئیڈ پروجیکٹ بنائیں ، اور شروع کریں!

اپنے ویجیٹ کی ترتیب کو تیار کرنا

شروع کرنے کے ل let ، ویجیٹ کے صارف انٹرفیس (UI) کی وضاحت کریں۔

درخواست کی بارے چیزیں ایک عمل میں دکھائے جاتے ہیں باہر آپ کی ایپلی کیشن ، لہذا آپ صرف وہ ترتیب اور نظارے ہی استعمال کرسکتے ہیں جو ریموٹ ویوز کے ذریعہ تعاون یافتہ ہیں۔

جب آپ اپنی ترتیب تیار کرتے ہو تو ، آپ درج ذیل تک محدود ہوتے ہیں:

  • اینالاگکلاک
  • بٹن
  • کرونومیٹر
  • فریم لی آؤٹ
  • گرڈ لی آؤٹ
  • امیج بٹن
  • امیج ویو
  • لائنر لی آؤٹ
  • ترقی بار
  • رشتہ دار
  • ٹیکسٹ ویو
  • ویو اسٹب
  • اڈاپٹر ویو فلپر
  • جالی دار نظارہ
  • فہرست دیکھیں
  • اسٹیک ویو
  • ویو فلپیر

نوٹ کریں کہ مذکورہ بالا کلاسز اور ویوز کے سبکلاس ہیں نہیں تعاون یافتہ

list_widget.xml نامی ایک نئی ترتیب وسائل فائل بنائیں۔ چونکہ ہم لسٹ ویو کا استعمال کرتے ہوئے اپنے اعداد و شمار کی نمائش کر رہے ہوں گے ، لہذا یہ لے آؤٹ بنیادی طور پر ایک کنٹینر کے طور پر کام کرتا ہے عنصر:

مجموعہ ویجیٹ آباد کر رہا ہے

اگلا ، ہمیں اپنے لسٹ ویو کے ل data ڈیٹا فراہم کنندہ بنانے کی ضرورت ہے۔ ڈیٹا پرووائڈر.جاوا کے نام سے ایک نیا جاوا کلاس بنائیں اور درج ذیل کو شامل کریں:

android.content.Context درآمد کریں؛ android.content.Intant درآمد کریں۔ درآمد کریں android.widget.RemoteViews؛ android.widget.RemoteViewsService درآمد کریں۔ درآمد java.util.ArarayList؛ درآمد java.util.List؛ درآمد جامد android.R.id.text1؛ جامد android.R.layout.simple_list_item_1 درآمد کریں؛ عوامی کلاس ڈیٹا پرووائڈر ریموٹ ویوسسروس کو نافذ کرتا ہے myListView = نئی ارے لسٹ <> ()؛ سیاق و سباق mContext = null؛ عوامی ڈیٹا پرووائڈر (سیاق و سباق ، نیت کا ارادہ) {mContext = سیاق و سباق؛ re @ آور رائیڈ پبلک باطل آن کریٹ () {initData ()؛ ata @ ڈیٹاسیٹ چینجڈ () ver initData ()؛ est @ آسٹریائیڈ پبلک باطل onDestroy () {} @ اوور رائیڈ پبلک INT getCount () {واپس myListView.size ()؛ } @ عوامی ریموٹ ویوز کو اووررائڈ getViewAt (INT پوزیشن) {ریموٹ ویوز ویو = نیا ریموٹ ویو (mContext.getPackageName () ، سادہ_ فہرست_ٹیم_1)؛ دیکھیں.setTextViewText (متن 1 ، myListView.get (پوزیشن))؛ واپسی کا نظارہ؛ } @ عوامی ریموٹ ویوز کو اوور رائڈ کریں لوڈائینگ ویو () n واپسی منسوخ کریں۔ } @ اوور رائیڈ پبلک انٹ ویو ٹائپکاؤنٹ () {1 واپس؛ } @ عوامی سطح پر طویل عرصے سے حاصل کیجI (آئندہ پوزیشن) {واپسی کی پوزیشن؛ able @ اوور رائیڈ پبلک بولین ہاسٹیبل آئیڈس () true سچائی پر واپس آئیں؛ } نجی باطل initData () {myListView.clear ()؛ (INT i = 1؛ i <= 15؛ i ++) {myListView.add ("لسٹ ویو آئٹم" + i)؛ }}}

AppWidgetProvider: اپنے ویجیٹ کی تشکیل کرنا

Android ویجیٹ بنانے کے ل you ، آپ کو متعدد فائلیں بنانے کی ضرورت ہے۔

ہماری پہلی ویجیٹ سے متعلق فائل ایک ایپ وجیٹ پرووائڈر ہے ، جو ایک براڈ کاسٹ ریسر ہے جہاں آپ مختلف ویجیٹ لائف سائیکل کے طریقوں کی وضاحت کریں گے ، جیسے آپ کے ویجیٹ کو پہلی بار بننے کے وقت کہا جاتا ہے اور وہ طریقہ جس کو بلایا جاتا ہے جب اس ویجٹ کے آخر میں حذف ہوجاتا ہے۔

کلیکشن ویجیٹ کے نام سے ایک نیا جاوا کلاس (فائل> نیا> جاوا کلاس) بنائیں۔

شروع کرنے کے لئے ، تمام ویجیٹ فراہم کرنے والی فائلوں کو AppWidgetProvider کلاس سے بڑھانا ہوگا۔ اس کے بعد ہمیں ایک ریموٹ ویوز آبجیکٹ میں list_widget.xML ترتیب وسائل فائل کو لوڈ کرنے کی ضرورت ہے ، اور AppWidgetManager کو تازہ کاری شدہ ریموٹ ویوز آبجیکٹ کے بارے میں مطلع کرنا ہوگا:

پبلک کلاس کلیکشن ویجیٹ نے AppWidgetProvider {جامد باطل اپلی کیشن ویجیٹ (سیاق و سباق ، AppWidgetManager appWidgetManager ، int appWidgetId) کو بڑھایا ote // ریموٹ ویوز آبجیکٹ // ریموٹ ویوز نظریات (سیاق و سباق). سیٹ ریموٹ ایڈاپٹر (سیاق و سباق ، خیالات)؛ // درخواست کریں کہ ایپ ویڈٹ مینیجر ایپلیکیشن ویجیٹ کو اپ ڈیٹ کرے۔ // appWidgetManager.updateAppWidget (appWidgetId، views)؛ }

اڈاپٹر بنائیں

چونکہ ہم اپنے ڈیٹا کو ایک لسٹ ویو میں ظاہر کررہے ہیں ، لہذا ہمیں اپنے ایپ وجیٹپروئیڈر میں ایک سیٹ ریموٹ ایڈاپٹر () طریقہ متعین کرنے کی ضرورت ہے۔ سیٹ ریموٹ ایڈاپٹر () AbsListView.setRemoteViewsAdapter () کو کال کرنے کے مترادف ہے لیکن اس کو ڈیزائن کیا گیا ہے تاکہ وہ ایپلی کیشن ویجٹ میں استعمال ہو۔

اس طریقہ کار میں ، ہمیں اڈاپٹر ویو (R.id.widget_list) کی شناخت اور اس سروس کا ارادہ متعین کرنے کی ضرورت ہے جو آخر کار ہمارے ریموٹ ویوز ایڈاپٹر کو ڈیٹا فراہم کرے گی۔ ہم جلد ہی اس ویجیٹسروس کی کلاس تشکیل دیں گے۔

نجی جامد باطل سیٹ ریموٹ ایڈاپٹر (سیاق و سباق ، @ نونول فائنل ریموٹ ویوز کی آراء) {خیالات.سیٹ ریموٹ ایڈاپٹر (آر.ایڈ.ویڈٹ_ فہرست ، نیا ارادہ (سیاق و سباق ، ویجیٹ سروسس کلاسیس))؛ }

ویجیٹ لائف سائیکل کے طریقوں کی وضاحت

ہمارے ایپ وجیٹ پرووائڈر میں ، ہمیں مندرجہ ذیل ویجیٹ لائف سائیکل سائیکل طریقوں کی بھی وضاحت کرنے کی ضرورت ہے۔

onpdate کے ساتھ نئے مواد کی بازیافت

onUpdate () ویجیٹ لائف سائیکل کا طریقہ آپ کے ویجیٹ کے نظریات کو نئی معلومات کے ساتھ اپ ڈیٹ کرنے کا ذمہ دار ہے۔

اس طریقہ کو ہر بار کہا جاتا ہے:

  • صارف ایک ایسی کاروائی کرتا ہے جو onpdate () طریقہ کو دستی طور پر متحرک کرتا ہے۔
  • درخواست کا واضح کردہ اپ ڈیٹ وقفہ گزر گیا ہے۔
  • صارف اس ویجیٹ کی ایک نئی مثال اپنے ہوم اسکرین پر رکھتا ہے۔
  • ایک ACTION_APPWIDGET_RESTORED براڈکاسٹ کا ارادہ AppWidgetProvider کو بھیجا گیا ہے۔ اس نشریاتی ارادے کو متحرک کیا گیا ہے اگر ویجیٹ کو بیک اپ سے کبھی بحال کیا گیا ہو۔

یہ وہ جگہ ہے جہاں آپ کسی بھی پروگرام کے ہینڈلرس کو اندراج کرتے ہیں جو آپ کے ویجیٹ کو استعمال کرنا چاہئے۔

Android ویجیٹ کو اپ ڈیٹ کرتے وقت ، یہ یاد رکھنا ضروری ہے کہ صارف ایک ہی ویجیٹ کے متعدد مواقع تشکیل دے سکتے ہیں۔ مثال کے طور پر ، ہوسکتا ہے کہ آپ کا ویجیٹ مرضی کے مطابق ہو اور صارف نے متعدد "ورژن" بنانے کا فیصلہ کیا ہے جو مختلف معلومات ظاہر کرتے ہیں ، یا منفرد فعالیت تک رسائی فراہم کرتے ہیں۔

جب آپ اپ ڈیٹ () پر کال کرتے ہیں تو آپ کو یہ بتانے کی ضرورت ہوتی ہے کہ آیا آپ اس ویجیٹ کی ہر مثال کو اپ ڈیٹ کررہے ہیں ، یا صرف ایک خاص مثال۔ اگر آپ ہر مثال کو اپ ڈیٹ کرنا چاہتے ہیں تو آپ ایپ وجیٹ آئیڈس کا استعمال کرسکتے ہیں ، جو IDs کا ایک صف ہے جو ہر آلے کی شناخت کرتا ہے۔

مندرجہ ذیل ٹکڑوں میں ، میں ہر مثال کو اپ ڈیٹ کر رہا ہوں:

@ آؤٹ رائٹ پبلک باطل آن (پیڈیٹ (سیاق و سباق ، AppWidgetManager appWidgetIns) {for (int appWidgetId: appWidgetIds) {// اس ویجیٹ کی تمام مثالوں کو اپ ڈیٹ کریں // اپ ڈیٹ ویجیٹ (سیاق و سباق، appWidgetId)؛ . super.onUpdate (سیاق و سباق ، appWidgetManager ، appWidgetIds)؛ }

نوٹ کریں کہ کوڈ کو سیدھے سادھے رکھنے میں مدد کے لئے ، یہ (اپ ڈیٹ) طریقہ کار اس وقت ویجیٹ میں کوئی تبدیلی نہیں کر رہا ہے۔

آن ایبلڈ: ابتدائی سیٹ اپ انجام دے رہا ہے

آن لائبل () لائف سائیکل کا طریقہ ACTION_APPWIDGET_ENABLED کے جواب میں کہا جاتا ہے ، جو اس وقت بھیجا جاتا ہے جب آپ کے ویجیٹ کی ایک مثال ہوم اسکرین میں شامل کی جاتی ہے۔ پہلا وقت اگر صارف آپ کے ویجیٹ کی دو مثال قائم کرتا ہے ، تو پھر ان ایبلڈ () کو پہلی بار طلب کیا جائے گا ، لیکن نہیں دوسرے کے لئے.

آن لائبل () لائف سائیکل کا طریقہ یہ ہے کہ آپ کو آپ کے ویجیٹ کے تمام واقعات کے ل required ضروری کوئی سیٹ اپ کرنا چاہئے ، جیسے آپ کے ویجیٹ کی معلومات کو کھانا کھلانا کرنے والا ڈیٹا بیس بنانا۔

میں ایک ٹوسٹ ڈسپلے کرنے جارہا ہوں ، لہذا آپ ٹھیک سے دیکھ سکتے ہیں کہ اس لائف سائیکل کا طریقہ کب کہا جاتا ہے:

@ آورائڈ پبلک باطل آن ایبلڈ (سیاق و سباق) {ٹوسٹ.میک ٹیکسٹ (سیاق و سباق ، "آن ایبلڈ کہا جاتا ہے" ، ٹوسٹ. ایل این جی ٹی ایچ ایلونگ) ۔شو ()؛ }

نوٹ کریں کہ اگر صارف آپ کے ویجیٹ کے تمام واقعات کو حذف کردیتا ہے اور پھر ایک نئی مثال پیدا کرتا ہے ، تو پھر اس کو پہلی مثال کے طور پر درجہ بندی کیا جاتا ہے ، اور آن لائبل () لائف سائیکل کا طریقہ ایک بار پھر بلایا جائے گا۔

onDਯੋਗ کے ساتھ ، صفائی ستھرائی

آن ڈز ایبلڈ () طریقہ کو ACTION_APPWIDGET_DISABLED کے جواب میں کہا جاتا ہے ، جو اس وقت متحرک ہوتا ہے جب صارف اسے حذف کرتا ہے آخری آپ کے ویجیٹ کی مثال.

اس ویجیٹ لائف سائکل کا طریقہ وہ ہے جہاں آپ کو ان ایبلڈ () طریقہ میں تخلیق کردہ کسی بھی وسائل کی صفائی کرنی چاہئے ، مثال کے طور پر آپ نے آن ایبل () میں بنائے گئے ڈیٹا بیس کو حذف کرنا۔

اپنے کوڈ کو سیدھے رکھنے میں مدد کے ل I ، میں جب بھی اس طریقے کو متحرک کرتا ہوں تو ہر وقت میں ٹوسٹ ڈسپلے کروں گا۔

@ آؤٹ رائٹ پبلک باطل آن ڈز ایبل (سیاق و سباق) {ٹوسٹ.میک ٹیکسٹ (سیاق و سباق ، "onDisabled کہا جاتا ہے" ، ٹوسٹ. ایل این جی ٹی ایچ ایلونگ) ۔شو ()؛ }

مکمل شدہ WWgetgetProvider

آپ کی کلیکشن ویجیٹ فائل میں اب کچھ اس طرح نظر آنا چاہئے:

android.appwidget.appWidgetManager درآمد کریں؛ android.appwidget.appWidgetProvider درآمد کریں۔ android.content.Context درآمد کریں؛ androidx.annotation.NonNull درآمد کریں؛ android.content.Intant درآمد کریں۔ درآمد کریں android.widget.RemoteViews؛ درآمد android.widget.Toast؛ // ایپ وجیٹپروئیڈر کلاس سے بڑھیں // عوامی کلاس کلیکشن ویجیٹ میں AppWidgetProvider {جامد باطل اپ ڈیٹ ویجیٹ (سیاق و سباق ، AppWidgetManager appWidgetManager ، int appWidgetId) {// لے آؤٹ ریسورس فائل کو ریموٹ ویوز آبجیکٹ (ریموٹ ویوز ویوز = نئے سیاق و سباق میں لوڈ کریں)۔ getPackageName ()، R.layout.list_widget)؛ سیٹ ریموٹ ایڈاپٹر (سیاق و سباق ، خیالات)؛ // ریموٹ ویوز آبجیکٹ // ایپ ویڈٹ مینیج۔ اپ ڈیٹ ایپ ویجٹ (ایپ ویڈٹ آئی ڈی ، آراء) کے بارے میں ایپ ویڈٹ مینیجر کو مطلع کریں۔ int @ اوورٹائڈ پبلک باطل آن اپ ڈیٹ (سیاق و سباق ، AppWidgetManager appWidgetManager ، int appWidgetIds) {for (INTWidgetId: appWidgetIds) {اپ ڈیٹ ویجیٹ (سیاق و سباق ، appWidgetManager ، appWidgetId)؛ . super.onUpdate (سیاق و سباق ، appWidgetManager ، appWidgetIds)؛ E @ آورائڈ پبلک باطل آن ایبلڈ (سیاق و سباق) {ٹوسٹ.میک ٹیکسٹ (سیاق و سباق ، "آن ایبلڈ کہا جاتا ہے" ، ٹوسٹ. ایل این جی ٹی ایچ ایلونگ). شو ()؛ is @ غیر فعال عوامی طور پر onedable (سیاق و سباق) {Toast.makeText (سیاق و سباق ، "آن ڈز ایبلڈ" کہا جاتا ہے ، ٹوسٹ. ایل این جی ٹی ایچ ایلونگ). شو ()؛ } نجی جامد باطل سیٹ ریموٹ اڈاپٹر (سیاق و سباق ، @ نونول فائنل ریموٹ ویوز نظریات). نظریات.سیٹ ریموٹ ایڈاپٹر (R.id.widget_list ، نیا ارادہ (سیاق و سباق ، ویجیٹ سروسس کلاسیس))؛ }

AppWidgetProviderInfo فائل

آپ کے ایپلیکیٹ ویجیٹ کے لئے بھی ایک AppWidgetProviderInfo فائل کی ضرورت ہوتی ہے ، جو آپ کے ویجیٹ کے کم سے کم طول و عرض اور اس کو کتنی بار اپ ڈیٹ کرنا چاہئے اس میں متعدد اہم خصوصیات کی وضاحت کرتی ہے۔

AppWidgetProviderInfo فائل آپ کے پروجیکٹ کے res / xML فولڈر میں محفوظ ہے۔

اگر آپ کے پروجیکٹ میں پہلے سے یہ فولڈر موجود نہیں ہے تو آپ کو اسے بنانے کی ضرورت ہوگی۔

  • اپنے پروجیکٹ کے ریس فولڈر پر کنٹرول پر کلک کریں۔
  • نئی> اینڈروئیڈ ریسورس ڈائرکٹری منتخب کریں۔
  • بعد کی ونڈو میں ، ریسورس ٹائپ ڈراپ ڈاؤن کو کھولیں ، اور ایکس ایم ایل منتخب کریں۔
  • ڈائریکٹری کا نام خود بخود XML پر اپ ڈیٹ ہونا چاہئے ، لیکن اگر ایسا نہیں ہوتا ہے تو آپ کو اسے دستی طور پر تبدیل کرنے کی ضرورت ہوگی۔
  • ٹھیک ہے پر کلک کریں۔

اگلا ، ایک کلیکشن_وجیٹ_انفو فائل بنائیں ، جسے ہم اپنے AppWidgetProviderInfo کے بطور استعمال کریں گے۔

  • اپنے پروجیکٹ کے ایکس ایم ایل فولڈر کو کنٹرول پر کلک کریں۔
  • نیا> XML وسائل فائل منتخب کریں۔
  • اس فائل کو کلیکشن_واجیٹ_انفو کا نام دیں۔
  • ٹھیک ہے پر کلک کریں۔

ہمارے AppWidgetProviderInfo فائل میں ، ہمیں مندرجہ ذیل خصوصیات کی وضاحت کرنے کی ضرورت ہے۔

1. لوڈ ، اتارنا Android: پیش نظارہ

یہ ڈرائ ایبل ہے جو آلے کے ویجیٹ چنندہ میں آپ کے ایپلیکیشن ویجیٹ کی نمائندگی کرتا ہے۔

اگر آپ پیش نظارہ امیج فراہم نہیں کرتے ہیں تو پھر اس کے بجائے اینڈرائڈ آپ کے اطلاق کا آئیکن استعمال کرے گا۔ صارفین کو ویجیٹ چننے والے سے آپکے ویجیٹ کو منتخب کرنے کے لئے حوصلہ افزائی کرنے کے ل you ، آپ کو ایک ڈرائ ایبل فراہم کرنا چاہئے جو آپ کے ویجیٹ کے صارف کے ہوم اسکرین پر مناسب طریقے سے تشکیل شدہ ہونے کے بعد یہ کیسے دکھائے گا۔

پیش نظارہ امیج بنانے کا سب سے آسان طریقہ ، ویجیٹ پیش نظارہ ایپلیکیشن کا استعمال کرنا ہے جو اینڈرائڈ ایمولیٹر میں شامل ہے۔ اس ایپ کی مدد سے آپ اپنے ویجیٹ کو تشکیل دے سکتے ہیں اور پھر ایک ایسی تصویر تیار کرسکتے ہیں ، جسے آپ اپنے Android پروجیکٹ میں استعمال کرسکتے ہیں۔

ہم ایک بار اپنے ویجیٹ کی تعمیر مکمل کرلینے کے بعد ، اس تصویر کو بنائیں گے ، لہذا اب میں خود بخود تیار کردہ میپ میپ / آئک_ لانچر وسائل کو عارضی پیش نظارہ امیج کے بطور استعمال کروں گا۔

2. android ڈاؤن لوڈ: ویجیٹکیٹیگری

ایپلیکیشن ویجٹ کو کسی ایپ ویجیٹ ہوسٹ کے اندر رکھنا ضروری ہے ، جو عام طور پر اسٹاک اینڈروئیڈ ہوم اسکرین ہوتا ہے ، لیکن یہ تیسری پارٹی لانچر جیسے ایوی لانچر یا نووا لانچر بھی ہوسکتا ہے۔

API کی سطح 17 اور 20 کے درمیان ، ہوم اسکرین پر ایپلیکیشن ویجٹ رکھنا ممکن تھا یا لاک اسکرین ، لیکن لاک اسکرین سپورٹ کو API کی سطح 21 میں چھوڑ دیا گیا تھا۔

آپ اس بات کی وضاحت کرسکتے ہیں کہ آیا آپ کے ایپ ویجیٹ کو ہوم اسکرین ، لاک اسکرین (جس کو android ڈاؤن لوڈ "keyguard" سے تعبیر کرتا ہے) یا دونوں ، android: विजेٹکیٹیگری وصف کا استعمال کرتے ہوئے رکھا جاسکتا ہے۔ چونکہ لوڈ ، اتارنا Android کے حالیہ ورژن میں لاک اسکرین پر ویجٹ رکھنا ممکن نہیں ہے ، لہذا ہم صرف ہوم اسکرین کو ہی نشانہ بنائیں گے۔

صارف کی رازداری کو محفوظ رکھنے کے ل your ، آپ کے ویجیٹ کو کسی بھی حساس یا نجی معلومات کو ظاہر نہیں کرنا چاہئے جب اسے لاک اسکرین پر رکھا جاتا ہے۔

اگر آپ صارفین کو اپنے ویجیٹ کو لاک اسکرین پر رکھنے کا آپشن دیتے ہیں تو پھر ، جو بھی صارف کے آلے پر نظر ڈالتا ہے وہ آپ کے ویجیٹ اور اس کے سارے مواد کو ممکنہ طور پر دیکھ سکتا ہے۔ صارف کی رازداری کو محفوظ رکھنے میں مدد کے ل your ، آپ کے ویجیٹ کو کسی بھی حساس یا نجی معلومات کو ظاہر نہیں کرنا چاہئے جب اسے لاک اسکرین پر رکھا جاتا ہے۔ اگر آپ کے ویجیٹ میں ذاتی ڈیٹا موجود ہے تو پھر آپ الگ ہوم اسکرین اور لاک اسکرین لے آؤٹ فراہم کرنے پر غور کر سکتے ہیں۔

3. android: ابتدائی لے آؤٹ

یہ لے آؤٹ ریسورس فائل ہے جسے آپ کے ویجیٹ کو ہوم اسکرین پر رکھے جانے پر استعمال کرنا چاہئے ، جو ہمارے پروجیکٹ کے لئے list_widget.xML ہے۔

4. android: resizeMode = "افقی | عمودی"

android: resizeMode انتساب آپ کو یہ بتانے دیتا ہے کہ آیا آپ کے ویجیٹ کو افقی ، عمودی طور پر ، یا دونوں محور کے ساتھ تبدیل کیا جاسکتا ہے۔

مختلف اسکرینوں میں آپ کے ویجیٹ کی نمائش اور کام کو درست طریقے سے یقینی بنانے کے ل it ، تجویز کردہ ہے کہ آپ اپنے ویجیٹ کو افقی شکل میں تبدیل کرنے کی اجازت دیں۔ اور عمودی طور پر ، جب تک کہ آپ کے پاس کوئی خاص وجہ نہ ہو۔

5. android: minHight and android: minWidth

اگر آپ کا ویجیٹ قابل تبدیل ہے تو پھر آپ کو یہ یقینی بنانا ہوگا کہ صارف آپ کے ویجیٹ کو اس مقام پر نہیں سکڑائے گا جہاں وہ ناکارہ ہو جائے۔ آپ منی ہائٹ اور منڈ چوڑائی کی خصوصیات کو استعمال کرنے کے ل your استعمال کرسکتے ہیں جب آپ کی ایپ سکڑ جاتی ہے تو اس کی چھوٹی سے چھوٹی شناخت صارف کے ذریعہ تبدیل ہوجاتی ہے۔

یہ قدریں آپ کے ویجیٹ کے ابتدائی سائز کی بھی نمائندگی کرتی ہیں ، لہذا اگر آپ کا ویجیٹ نیا سائز لینے والا نہیں ہے تو منٹ ہائٹ اور منڈ چوڑائی آپکے ویجیٹ کے مستقل سائز کی وضاحت کرے گی۔

6. android ڈاؤن لوڈ: اپ ڈیٹ پیریوڈ میلس

AppWidgetProviderInfo وہ جگہ بھی ہے جہاں آپ یہ بتاتے ہوں گے کہ آپ کے ویجیٹ کو کتنی بار نئی معلومات کی درخواست کرنا چاہئے۔

سب سے چھوٹا تائید شدہ اپ ڈیٹ وقفہ ہر 1800000 ملی سیکنڈ (30 منٹ) میں ایک بار ہوتا ہے۔ اگر آپ مختصر اپ ڈیٹ کا وقفہ اعلان کرتے ہیں تو بھی ، آپ کا ویجیٹ ہر آدھے گھنٹے میں صرف ایک بار اپ ڈیٹ ہوگا۔

اگرچہ آپ جدید ترین معلومات کو جلد سے جلد ڈسپلے کرنا چاہیں ، نظام کریں گے نئی معلومات کو بازیافت کرنے کے لئے نیند کے آلے کو بیدار کریں۔ آلہ کی بیٹری کے ذریعہ متعدد تازہ کارییں جل سکتی ہیں ، خاص طور پر ایسے ادوار کے دوران جہاں آلے کو رات کے اوقات جیسے اہم وقت کے لئے بیکار رکھا جاتا ہے۔ صارف کے بہترین تجربہ کی فراہمی کا مطلب ہے کہ بیٹری کی کھپت کو محدود کرنا ، اور مناسب وقت کے اندر نئی معلومات فراہم کرنا۔

آپ کو آپ کا ویجیٹ جس طرح کا مواد دکھائے گا اسے بھی مدنظر رکھنا چاہئے۔

آپ کو اس طرح کے مواد کو بھی مدنظر رکھنا چاہئے جس میں آپ کے Android کے بارے میں بارے چیزیں ظاہر ہوں گی۔ مثال کے طور پر ، موسمی ویجیٹ کو صرف ایک دن میں ایک بار تازہ ترین پیش گوئی کرنے کی ضرورت ہوسکتی ہے ، جبکہ ایک ایسی ایپ جو بریکنگ نیوز کو دکھاتی ہے اسے زیادہ کثرت سے اپ ڈیٹ کرنے کی ضرورت ہوگی۔

اس کامل توازن کو تلاش کرنے کے ل you ، آپ کو اپنے ویجیٹ کو متعدد تازہ تعدد کی جانچ کرنی ہوگی اور بیٹری کی زندگی پر پڑنے والے اثرات اور اپنے ویجیٹ کے مشمولات کی بروقت معلومات کی پیمائش کرنا ہوگی۔ اگر آپ کے پاس ٹیسٹرز کا رضاکار گروپ ہے تو ، پھر آپ A / B ٹیسٹنگ بھی ترتیب دے سکتے ہیں ، یہ دیکھنے کے لئے کہ کچھ اپ ڈیٹ فریکوئینسی دوسروں کے مقابلے میں زیادہ مثبت طور پر موصول ہوتی ہیں یا نہیں۔

الاسو پڑھیں: AndroidManLive.xML ہر وہ چیز جو آپ کو جاننے کی ضرورت ہے

آخر ، ایک بار جب آپ نے کامل اپ ڈیٹ وقفہ کی نشاندہی کرلی تو ، آپ اپنی ایپ کو تیار کرنے اور جانچنے کے وقت ایک مختصر وقفہ استعمال کرنا چاہتے ہو۔ مثال کے طور پر ، آپ اس وقت کم سے کم اپ ڈیٹ فریکوئنسی (android: updatePeriodMillis = "1800000 use) استعمال کرسکتے ہیں جب آپ جانچ کر رہے ہو کہ آپ کے ایپ کا onpdate () طریقہ صحیح طریقے سے ٹرگر ہورہا ہے ، اور پھر اپنی ایپ کو عام لوگوں تک جاری کرنے سے پہلے اس قدر کو تبدیل کریں۔

مکمل شدہ WWgetgetProviderInfo

تیار شدہ مجموعہ_واجیٹ_انفو. ایکس ایم ایل فائل کو کچھ اس طرح نظر آنا چاہئے:

صارف کی ہوم اسکرین کو بے ترتیبی نہ بنو!

اس بات کو یقینی بنانے کے لئے کہ ہوم اسکرین کبھی بھی بے ترتیبی دکھائی نہیں دیتی ہے ، ہم اپنے ویجیٹ میں کچھ بھرتی اور مارجن شامل کرنے جارہے ہیں۔ اگر آپ کے پروجیکٹ میں پہلے سے ہی dimens.xML فائل نہیں ہے تو آپ کو ایک بنانے کی ضرورت ہوگی۔

  • اپنے پروجیکٹ کے اقدار کے فولڈر پر کنٹرول پر کلک کریں۔
  • نیا> اقدار کے وسائل کی فائل کو منتخب کریں۔
  • اس فائل کو نام dimens دیں۔
  • ٹھیک ہے پر کلک کریں۔

اپنی dimens.xML فائل کھولیں اور درج ذیل مارجن اور بھرتی اقدار کی وضاحت کریں۔

10 ڈی پی 8 ڈی پی

ویجیٹ کو ڈیٹا بھیجنا

اس کے بعد ، ہمیں ایک ویجیٹ سروس بنانے کی ضرورت ہے ، جو ہمارے جمع کرنے کا ڈیٹا ویجیٹ کو بھیجنے کے لئے ذمہ دار ہوگی۔

ویجیٹ سروس کے نام سے ایک نیا جاوا کلاس (نیا> جاوا کلاس) بنائیں ، اور درج ذیل کو شامل کریں:

android.content.Intant درآمد کریں۔ android.widget.RemoteViewsService درآمد کریں۔ پبلک کلاس ویجیٹ سروس نے ریموٹ ویوسسروسین میں توسیع کردی ہے {@ عوامی ریموٹ ویوس فیکٹری کو آن گیٹ ویو فیکٹری (ارادے کا ارادہ) {نیا ڈیٹا پرووائڈر (یہ ، ارادے) واپس کریں؛ }

مینی فیسٹ میں اپنے ویجیٹ کا اندراج کرنا

ہمیں اب اپنے پروجیکٹ کے منشور میں کچھ تبدیلیاں لانے کی ضرورت ہے۔

شروع کرنے کے لئے ، منشور کھولیں اور اپنے ویجیٹ کو براڈ کاسٹ رسیور کے بطور رجسٹر کریں۔ ہمیں android.appwidget.action.APPWIDGET_UPDATE کارروائی کیلئے ایک ارادے کا فلٹر بھی شامل کرنے کی ضرورت ہے۔

اگلا ، آپ کو ایپ ویجیٹ فراہم کنندہ کو بیان کرنے کی ضرورت ہے:

آخر میں ، ہمیں اس سروس کا اعلان کرنے کی ضرورت ہے جو ہمارے ویجیٹ کو ڈیٹا بھیجے گی ، جو اس مثال میں ویجیٹ سروس کی کلاس ہے۔ اس سروس کیلئے android.permission.BIND_REMOTEVIEWS اجازت کی ضرورت ہے۔

اپنے ویجیٹ کو امتحان میں ڈالیں

اگر آپ اس سبق کے ساتھ چل رہے ہیں تو ، اب آپ کے پاس مجموعہ کا ایک مکمل ویجیٹ ہوگا جو صارف کے ہوم اسکرین پر ڈیٹا کا ایک سیٹ دکھاتا ہے۔

اگر یہ واقعی زندگی کا اینڈروئیڈ پروجیکٹ تھا تو پھر آپ عام طور پر لائف سائکل کے طریقوں خصوصا on onpdate () طریقہ پر توسیع کرتے ، لیکن ہمیں صرف ایک ایسا ویجیٹ بنانے کی ضرورت ہے جسے آپ اپنے Android ڈیوائس پر انسٹال اور جانچ سکتے ہو۔

  • اس پروجیکٹ کو ایک ہم آہنگ اینڈروئیڈ اسمارٹ فون ، ٹیبلٹ یا اے وی ڈی (اینڈروئیڈ ورچوئل ڈیوائس) پر انسٹال کریں۔
  • ہوم اسکرین کے کسی بھی خالی حصے کو دیر سے دبائیں ، اور اشارہ کرنے پر وجیٹس کو منتخب کریں۔ اس نے ویجیٹ منتخب کنندہ کا آغاز کیا۔
  • ویجیٹ چننے والے کے ذریعہ سوائپ کریں جب تک کہ آپ نے ابھی ابھی ایپلیکیشن ویجیٹ کو تلاش نہیں کیا ہے۔
  • اس اسکرین کو اپنے ہوم اسکرین میں شامل کرنے کے ل Long طویل عرصے سے دبائیں۔
  • چونکہ یہ اس مخصوص ویجیٹ کی پہلی مثال ہے ، لہذا آن (فعال) طریقہ کار چلنا چاہئے ، اور آپ کو ایک "آن ایبلڈ" کہا جاتا ہے۔
  • اپنے ویجیٹ کا سائز تبدیل کریں۔ اگر آپ کم از کم تائید شدہ سائز طے کرتے ہیں ، تو پھر چیک کریں کہ آپ اس ویلیوٹ سے گذشتہ ویجیٹ کو سکڑ نہیں سکتے ہیں۔
  • توقع کے مطابق ، لسٹ ویو اسکرول کی جانچ کریں۔
  • اگلا ، آپ کو اپنے ویجیٹ کو حذف کرکے ، آن ڈز ایبلڈ () طریقہ کار چیک کرنا چاہئے۔ آپکے پاس وجٹس کو زیادہ دیر دبائیں ، اور پھر ہوم اسکرین سے ہٹائیں کو منتخب کریں۔ چونکہ یہ اس مخصوص ویجیٹ کی آخری مثال ہے ، لہذا آن ڈز ایبل () کا طریقہ کار چلنا چاہئے ، اور آپ کو ایک "آن ڈز ایبلڈ" کہا جاتا ہے۔

کام کرنے والی اینڈرائیڈ ایپلی کیشن ویجیٹ کی فراہمی کے لئے آپ کو بس اتنی ضرورت ہے ، لیکن اس میں کچھ اضافے ہیں جو اکثر صارف کے تجربے کو بہتر بنا سکتے ہیں۔ مندرجہ ذیل حصوں میں ، ہم صارفین کی پیش نظارہ تصویر بنا کر ویجیٹ چن چننے والے سے اس ویجیٹ کا انتخاب کرنے کے لئے حوصلہ افزائی کریں گے۔ میں آپ کو اپنے پروجیکٹ میں کنفیگریشن ایکٹیویٹی شامل کرکے مکمل طور پر مرضی کے مطابق ویجیٹ بنانے کا طریقہ بھی دکھاتا ہوں۔

Android ویجیٹ پیش نظارہ امیج بنانا

اگر آپ اپنا اینڈروئیڈ ڈیوائس پکڑ لیتے ہیں اور ویجیٹ چنندہ کے ذریعہ سوائپ کرتے ہیں تو آپ دیکھیں گے کہ ہر ویجیٹ کی نمائندگی ایک شبیہہ کے ذریعہ کی جاتی ہے ، جو عام طور پر یہ ظاہر کرتا ہے کہ صارف کے ہوم اسکرین پر تشکیل ہونے کے بعد یہ ویجیٹ کس طرح نظر آئے گا۔

صارفین کو اپنے ویجیٹ کو منتخب کرنے کے لئے حوصلہ افزائی کرنے کے ل you ، آپ کو پیش نظارہ امیج فراہم کرنا چاہئے جو آپ کے ویجیٹ کو پیش کرنے والی تمام مفید معلومات اور خصوصیات پر روشنی ڈالتی ہے۔

آپ اینڈروئیڈ ایمولیٹر میں شامل ویجیٹ پیش نظارہ ایپلی کیشن کا استعمال کرکے جلدی اور آسانی سے پیش نظارہ امیج تشکیل دے سکتے ہیں۔

نوٹ کریں کہ ویجیٹ پیش نظارہ جدید ترین Android سسٹم کی تصاویر میں شامل نہیں ہے ، لہذا آپ کو نوگٹ (API سطح 25) یا اس سے قبل استعمال کرتے ہوئے ایک AVD بنانے کی ضرورت ہوگی۔

  • اپنی درخواست کسی اے وی ڈی پر انسٹال کریں جس میں چلنے والے API 25 یا اس سے کم چل رہے ہوں۔
  • اے وی ڈی کا ایپ دراز کھولیں اور ویجیٹ پیش نظارہ ایپ لانچ کریں۔
  • ویجیٹ پیش نظارہ ہر اس ایپلیکیشن کی فہرست دکھائے گا جو فی الحال اس اے وی ڈی پر انسٹال ہے۔ فہرست سے اپنی درخواست منتخب کریں۔

  • اب آپ کا ویجیٹ خالی پس منظر میں ظاہر ہوگا۔ جب تک آپ کے ویجیٹ کو پیش کردہ سب سے بہتر نمائش نہ ہو اس وقت تک اپنے سائز کو نیا سائز دینے اور اسے ٹویٹ کرنے میں صرف کریں۔
  • ایک بار جب آپ اپنے ویجیٹ کی ظاہری شکل اور مواد سے خوش ہوجائیں تو ، اسنیپ شاٹ کو منتخب کریں۔

  • اپنا سنیپ شاٹ بازیافت کرنے کیلئے ، Android اسٹوڈیو میں واپس جائیں اور ٹول بار سے دیکھیں> ٹول ونڈوز> ڈیوائس فائل ایکسپلورر کو منتخب کریں۔ اس سے اینڈروئیڈ اسٹوڈیو کے ڈیوائس فائل ایکسپلورر کا آغاز ہوتا ہے۔
  • ڈیوائس فائل ایکسپلورر میں ، ایسڈی کارڈ / ڈاؤن لوڈ پر جائیں۔ آپ کو اپنی پیش نظارہ کی تصویر کو مندرجہ ذیل شکل میں محفوظ ہونا چاہئے: _ori_.png

  • اس تصویر کو اینڈروئیڈ اسٹوڈیو سے باہر گھسیٹیں اور کہیں آسانی سے قابل رسائی جگہ پر چھوڑیں ، جیسے آپ کے ڈیسک ٹاپ۔
  • اس تصویری فائل کو وضاحتی نام دیں۔
  • فائل کو اپنے پروجیکٹ کے ڈراوئبل فولڈر میں کھینچ کر چھوڑیں۔
  • اپنا ایپ وجیٹپروئیڈرآئنفو کھولیں ، جو اس منصوبے کے لئے کلیکشن_ویجٹ_انفو.ایم ایم ایل ہے۔
  • اینڈروئیڈ: प्रीویو آئیمج = "@ mipmap / ic_launcher" لائن ڈھونڈیں اور اپنی پیش نظارہ امیج کے حوالے سے اسے اپ ڈیٹ کریں۔

آپ کا ویجیٹ اب اس نئے تصویری وسائل کو اپنے پیش نظارہ امیج کے بطور استعمال کرے گا۔

  • اپ ڈیٹ شدہ پروجیکٹ کو اپنے فزیکل اینڈروئیڈ ڈیوائس یا اے وی ڈی پر انسٹال کریں۔
  • ہوم اسکرین کے کسی بھی خالی حصے کو دیر سے دبائیں۔
  • ٹیپ کی بارے چیزیں ، جو ویجیٹ منتخب کنندہ کو لانچ کرتی ہے۔
  • اپنے ویجیٹ پر سکرول؛ اب اسے اپ ڈیٹ شدہ پیش نظارہ تصویر کا استعمال کرنا چاہئے۔

حسب ضرورت وجیٹس: تشکیل کی سرگرمی شامل کرنا

جب صارف آپ کے ویجیٹ کی ہر مثال کو اپنے اسکرین پر رکھتا ہے تو کنفیگریشن سرگرمی خود بخود شروع ہوتی ہے۔

اس کی متعدد وجوہات ہیں جن کی وجہ سے آپ اپنے منصوبے میں کنفیگریشن سرگرمی شامل کرنا چاہتے ہیں۔

انفرادی صارف کے ل most سب سے اہم معلومات یا خصوصیات تک رسائی حاصل کرنے پر ویجٹ بہترین صارف کا تجربہ فراہم کرتے ہیں۔

سب سے پہلے ، کچھ ویجٹ کو ابتدائی سیٹ اپ کی ضرورت ہوتی ہے ، مثال کے طور پر ایک ویجیٹ جو ٹریفک الرٹس دکھاتا ہے اس میں صارف کا گھر کا پتہ ، وہ کہاں کام کرتے ہیں ، اور اوقات جب وہ عام طور پر سفر کرتے ہیں تو جاننے کی ضرورت پڑسکتی ہے۔ کسی بھی طرح سے اس معلومات میں داخل ہونے کے بغیر ، آپ کا ویجیٹ مکمل طور پر بیکار ہوسکتا ہے!

اس کے علاوہ ، جب چیزیں انفرادی صارف کے لئے اہم ترین معلومات یا خصوصیات تک رسائی فراہم کرتی ہیں تو وجیٹس بہترین صارف کا تجربہ فراہم کرتے ہیں۔ اپنے پروجیکٹ میں کنفیگریشن ایکٹیویٹی کا اضافہ کرکے ، آپ صارفین کو انتخاب اور منتخب کرنے کی آزادی دے سکتے ہیں بالکل آپ کے ویجیٹ میں کیا شامل ہے۔

یہاں تک کہ نسبتا straight سیدھی تخصیصات ، جیسے کسی ویجیٹ کا پس منظر یا فونٹ تبدیل کرنا ، صارف کے تجربے پر مثبت اثرات مرتب کرسکتی ہیں - آخرکار ، کوئی بھی ایسے ویجیٹ کی تعریف نہیں کرے گا جو بقیہ طور پر ان کی اسکرین اسکرین کے ساتھ جھڑپ ہو۔

کوئی بھی ایسے ویجیٹ کی تعریف نہیں کرے گا جو بقیہ طور پر ان کے باقی ہوم اسکرین سے متصادم ہو۔

متبادل کے طور پر ، بعض اوقات آپ کے پاس مواد کی ایک لمبی فہرست ہوسکتی ہے جسے آپ اپنے ویجیٹ میں شامل کرنا چاہتے ہیں ، اور آپ اپنے اختیارات کو تنگ کرنے کے لئے جدوجہد کر رہے ہیں۔ ترتیب کی سرگرمی آپ کے تمام آئیڈیاز کو اچھے استعمال میں لانے کا ایک طریقہ ہوسکتی ہے ، بغیر تخلیق کرنا ایک بے ترتیبی ، مبہم ویجیٹ۔ ذرا یہ بات ذہن میں رکھیں کہ آپکے پاس وجٹس کے سیٹ اپ کو کام کاج کی طرح محسوس نہیں ہونا چاہئے ، لہذا اگر آپ ترتیب دینے کی سرگرمی فراہم کرتے ہیں تو پھر تجویز کی جاتی ہے کہ آپ اپنے آپ کو تشکیل کے تین اختیارات تک محدود رکھیں۔

آئیے اپنے پروجیکٹ میں تشکیلاتی سرگرمی شامل کریں!

او .ل ، ہماری کنفیگریشن ایکٹیویٹی کو ایک ترتیب کی ضرورت ہے ، لہذا ایک نیا ترتیب وسائل فائل تشکیل دیں جس کا نام config_activity.xml ہے۔

میں اس لے آؤٹ میں مندرجہ ذیل بٹن شامل کرنے جارہا ہوں:

  • ایک ترتیب بٹن. ایک حقیقی زندگی کے منصوبے میں ، یہ بٹن کسی طرح ویجیٹ میں ترمیم کرے گا ، مثال کے طور پر مواد شامل کرنا یا ہٹانا ، یا ویجیٹ کی کتنی بار اپ ڈیٹ ہوتی ہے اسے تبدیل کرنا۔ ہمارے کوڈ کو سیدھے رکھنے میں مدد کے ل this ، اس بٹن کو کلک کرنے سے صرف کنفیگریشن آپشن ٹوسٹ دکھائے گا۔
  • ایک سیٹ اپ بٹن. ایک بار جب صارف خوش ہوجاتا ہے کہ کس طرح انکے ویجیٹ کو کنفیگر کیا گیا ہے ، تو اس بٹن کو دبانے سے نئے کنفیگریٹ ویجیٹ کو ان کے ہوم اسکرین پر رکھ دیا جائے گا۔

یہ میری مکمل کنفیگریشن_کسیٹیٹیبلٹی xML فائل ہے۔

تشکیل کی سرگرمی بنائیں

اب ، ہمیں اپنی تشکیل کی سرگرمی تخلیق کرنے کی ضرورت ہے۔

شروع کرنے کے لئے ، ایک نیا جاوا کلاس تشکیل دیں جس کا نام تشکیلِ کارنامہ ہے۔ اس سرگرمی میں ، ہم ترتیب سرگرمی کو شروع کرنے والے نیت سے ایپ ویجیٹ ID بازیافت کرنے جارہے ہیں۔ اگر اس ارادے میں آپکے پاس وجٹس کی شناخت نہیں ہے ، تو پھر ہمیں ختم () طریقہ پر کال کرنا ہوگی۔

نیت ارادہ = getIntent ()؛ بنڈل ایکسٹراز = intent.getExtras ()؛ اگر (ایکسٹراز! = null) {appWidgetId = extras.getInt (AppWidgetManager.EXTRA_APPWIDGET_ID، AppWidgetManager.INVALID_APPWIDGET_ID)؛ اگر (appWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID) {ختم ()؛ }

اگلا ، ہمیں واپسی کا ارادہ پیدا کرنے کی ضرورت ہے ، اصل ایپ ویجٹ آئڈ کو پاس کرنا ہوگا اور ترتیب کی سرگرمی سے نتائج مرتب کرنا ہوں گے۔

نیت نتیجہValue = نیا نیت ()؛ نتیجہ ویلیو پٹ ایکسٹرا (AppWidgetManager.EXTRA_APPWIDGET_ID ، appWidgetId)؛ سیٹ ریسلٹ (RESULT_OK ، رزلٹ ویلیو)؛ ختم ()؛ }}}

اگر آپ کنفیگریشن ایکٹیویٹی فراہم کرتے ہیں ، تو کنفیگریشن ایکٹیویٹی لانچ ہونے پر ACTION_APPWIDGET_UPDATE براڈکاسٹ خود بخود نہیں بھیجا جائے گا ، جس کا مطلب ہے onUpdate () طریقہ نہیں کریں گے جب صارف آپ کے آپکے پاس وجٹس کی مثال تیار کرتا ہے تب فون کیا جائے گا۔

یہ یقینی بنانے کے لئے کہ آپ کا ویجیٹ تازہ ترین معلومات اور مواد کے ساتھ تیار کیا گیا ہے ، آپ کی ترتیب کی سرگرمی لازمی پہلی onUpdate () کی درخواست کو ٹرگر کریں۔

تشکیل شدہ سرگرمی یہاں ہے:

android.app.Activity درآمد کریں۔ android.appwidget.appWidgetManager درآمد کریں؛ android.os.Bundle درآمد کریں۔ درآمد android.widget.Button؛ android.content.Intant درآمد کریں۔ درآمد android.view.View؛ android.view.View.OnClickListener درآمد کریں؛ درآمد android.widget.Toast؛ عوامی طبقے کی تشکیل کی سرگرمی نے سرگرمی کو بڑھایا ہے {@ اووررائڈ سے محفوظ شدہ باطل آن کریٹ (بنڈل سیفڈ انسٹنس اسٹیٹ) {سوپر.انکرائٹ (سیفڈ انسٹینس اسٹیٹ)؛ سیٹ کانٹینٹ ویو (R.layout.config_activity)؛ سیٹ ریسلٹ (RESULT_CANCELED)؛ بٹن سیٹ اپ ویجٹ = (بٹن) FindViewById (R.id.setupWidget)؛ setupWidget.setOnClLLtentener (new OnClickListener () {@ آورائڈ پبلک باطل آن کلیک (دیکھیں وی) {ہینڈل سیٹ اپ ویجٹ ()؛}})؛ بٹن کنفٹ بٹن = (بٹن) FindViewById (R.id.configButton)؛ configButton.setOnClLLtentener (new OnClickListener () {@ آورائڈ پبلک باطل آن کلیک (دیکھیں وی) {ہینڈل کونگ فگ ویجٹ ()؛}})؛ } نجی باطل ہینڈل سیٹ اپ ویجٹ () {showAppWidget ()؛ } نجی باطل ہینڈل کونفیگ ویجیٹ () {ٹوسٹ.میک ٹیکسٹ (کنفیگریشنٹیویٹیٹیٹیٹی۔ ، یہ "کنفیگریشن آپشنز" ، ٹوسٹ. ایل این جی ٹی ایچ ایلونگ) .شو ()؛ app int appWidgetId؛ نجی باطل شو ایپ ویڈٹ () {appWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID؛ نیت ارادہ = getIntent ()؛ بنڈل ایکسٹراز = intent.getExtras ()؛ اگر (ایکسٹراز! = null) {appWidgetId = extras.getInt (AppWidgetManager.EXTRA_APPWIDGET_ID، AppWidgetManager.INVALID_APPWIDGET_ID)؛ اگر (appWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID) {ختم ()؛ TO // کرنا: ترتیب دیں // نیت کا نتیجہValue = نیا نیت ()؛ نتیجہ ویلیو پٹ ایکسٹرا (AppWidgetManager.EXTRA_APPWIDGET_ID ، appWidgetId)؛ سیٹ ریسلٹ (RESULT_OK ، رزلٹ ویلیو)؛ ختم ()؛ }}}

ایک بار جب آپ نے ایک کنفیگریشن ایکٹیویٹی تشکیل دے دی ہے تو ، آپ کو اس سرگرمی کو منشور میں اعلان کرنے کی ضرورت ہے اور یہ واضح کرنے کی ضرورت ہے کہ وہ APPWIDGET_CONFIGURE کارروائی کو قبول کرتی ہے:

آخر میں ، چونکہ ایک کنفیگریشن سرگرمی کا حوالہ پیکیج کے دائرہ کار سے باہر ہوتا ہے ، لہذا ہمیں اس سرگرمی کا اعلان اپنے AppWidgetProviderInfo میں کرنے کی ضرورت ہے ، جس میں اس مثال کے طور پر کلیکشن_ویجٹ_انفو. ایکس ایم ایل فائل ہے۔

android: configure = "com.jessicathornsby.collectionwidget.ConfigActivity">

اپنے پروجیکٹ کی جانچ ہو رہی ہے

اب وقت آگیا ہے کہ آپ اپنے تیار شدہ منصوبے کو آزمائیں۔

  • اپنے تازہ کاری شدہ پراجیکٹ کو جسمانی اینڈروئیڈ ڈیوائس یا اے وی ڈی پر انسٹال کریں۔
  • اپنے ویجیٹ کے تمام سابقہ ​​واقعات کو حذف کریں ، تاکہ یہ یقینی بنایا جا سکے کہ آپ بالکل جدید ورژن کے ساتھ کام کر رہے ہیں۔
  • ہوم اسکرین کے کسی بھی خالی جگہ کو زیادہ دیر دبائیں اور جب اشارہ کیا جائے تو وگیٹس کو منتخب کریں۔
  • اپنے ویجیٹ منتخب کنندہ میں تلاش کریں اور اسے منتخب کرنے کے ل long طویل دبائیں۔
  • آپکے ہوم اسکرین پر ویجیٹ ڈراپ کریں۔ کنفیگریشن ایکٹیویٹی خود بخود لانچ ہوجائے۔
  • پرفارم کچھ کنفیگریشن بٹن پر ایک کلک دیں ، اور کنفیگریشن آپشن ٹوسٹ دکھائی دیں ، اس بات کی تصدیق کرتے ہوئے کہ یہ تعامل کامیابی کے ساتھ رجسٹرڈ ہوچکا ہے۔
  • ذرا تصور کریں کہ آپ نے ویجیٹ کی ترتیبات کو ٹویٹ کیا ہے اور اب آپ اسے اپنے ہوم اسکرین پر رکھنے کے لئے تیار ہیں۔ دی ویجٹ بٹن کو ایک نل دیں ، اور اس ویجیٹ کو کامیابی کے ساتھ تشکیل دیا جانا چاہئے۔

آپ مجموعہ ویجیٹ پروجیکٹ کو گٹ ہب سے ڈاؤن لوڈ کرسکتے ہیں۔

ختم کرو

اس مضمون میں ، ہم نے ایک سکرول قابل مجموعہ ویجیٹ تیار کیا ہے جو صارف کے ہوم اسکرین پر موجود ڈیٹا کو ظاہر کرتا ہے۔

اگر آپ اس پروجیکٹ کے ساتھ کام جاری رکھنا چاہتے ہیں تو ، آپ اپنے پاس کوڈ کو onUpdate () طریقہ میں شامل کرنے کی کوشش کرسکتے ہیں ، ایک ایسا ویجیٹ بنانے کے ل that جو آپ کے AppWidgetProviderInfo فائل (کلیکشن_ویجٹ_انفو) میں بیان کردہ وقفے پر نئی معلومات کے ساتھ تازہ کاری کرتا ہے۔

اگر آپ اینڈروئیڈ ویجیٹ بناتے ہیں تو نیچے دیئے گئے تبصروں میں اپنی تخلیقات شیئر کرنا یقینی بنائیں!

ون پلس نے وعدہ کیا ہے کہ ون پلس 3 اور ون پلس 3 ٹی سمیت اور اس میں شامل تمام فونز کو اینڈروئیڈ پائی موصول ہوگی۔ ایسا لگتا ہے کہ کمپنی ان دو آلات کے ساتھ ترقی کر رہی ہے ، کیونکہ اس نے چین میں پہلا اینڈر...

ون پلس 3 اور 3 ٹی کے ل Android ون پلیس کو Android پائی سے وابستہ دیکھ کر خوشی ہے ، کیونکہ Android OEM عام طور پر تین سالہ پرانے آلات کو اپ ڈیٹ نہیں کرتے ہیں۔ کمپنی نے ان آلات پر پہلے ہی اینڈروئیڈ پائی...

سائٹ پر مقبول