Ang pagsusulat ng mobile software ay isa sa pinakamainit na kasanayan na makapagbibigay sa iyo ng trabaho. Dahil ang buong ecosystem ay hinihimok ng dalawang malalaking platform katulad ng iOS at Android, ito talaga ang pinakamagandang oras para maging isang developer.
Sa pag-aakalang mayroon ka nang ilang karanasan sa programming na nasa ilalim ng iyong sinturon, hindi magiging napakalaki para sa iyo ang pagbuo ng app. At ito ay talagang magiging isang karanasan sa pag-aaral, sinasabi ko ito mula sa personal na karanasan, ang pag-aaral na bumuo sa tuktok ng isang platform ay nagbubukas ng iyong isip sa isang ganap na bagong paraan ng pag-iisip. Dahil ngayon ay hindi mo lamang pinamamahalaan kung ano ang nangyayari sa foreground at background ng iyong app, pinamamahalaan mo rin ang iba't ibang invisible na estado nito at tinitiyak na ito ay isang "mabuting mamamayan" ng ecosystem na siyang device ng iyong user.
Ang artikulong ito ay bahagi ng isang patuloy na serye dito sa TechLila kung saan tututukan namin kung paano ka magiging isang mas mahusay na developer sa pamamagitan ng paggugol ng oras sa pagbuo ng mga karanasan sa halip na i-crack ang iyong ulo sa pag-iisip tungkol sa mga problemang nalutas nang eleganteng (pupunta ako sa na sa kaunti lamang). Gayunpaman, tandaan na ang seryeng ito ay hindi para sa mga nagsisimula, magkakaroon kami ng isang bagay na nakalaan para sa iyo sa lalong madaling panahon. Nakatuon ang seryeng ito sa pagtulong sa mga developer na mayroon nang patas na bahagi ng kadalubhasaan sa Android.
Ang artikulong ito ay ang una sa isang serye ng mga artikulo na aming ipa-publish upang matulungan ang mga developer ng Android na magdagdag ng mga pangunahing feature na "nakakahimok" sa kanilang mga app sa pamamagitan ng paggamit ng kasalukuyang imprastraktura sa halip na mag-alala tungkol sa pagbuo nito mula sa simula.
Mga Push Notification sa Android
Sa unang ito, tututuon tayo sa Mga Push Notification. Ang Mga Push Notification ay nabibilang sa engagement bracket ng software integration.
Okay kaya ipagpalagay na kakatapos mo lang gumawa ng susunod na epic app na lubos na nakamamatay at ikaw ay lubos na umaasa sa hinaharap nito. Sa mga unang araw, talagang mahusay ang takbo ng app. Ang katatagan ay pinakamataas at ang mga pag-download ay patuloy na tumataas at hindi mo mapanatili ang iyong mga mata sa mga sukatan. Ngunit sa lalong madaling panahon ay nagsimula kang makapansin ng isang kakaibang pattern sa paggamit ng iyong app. Habang pinamamahalaan nito ang pag-akit ng mga bagong user sa sarili nito ngunit nawawala ang mga umiiral na user. Bumababa na lang ang retention araw-araw. Nababahala ka sa pag-aalala tungkol sa kung ano ang gagawin ngayon, naisip mo na talagang magugustuhan ito ng mga tao. Pero wala lang talaga.
Kung ikaw ay nasa ganoong sitwasyon, ang post na ito ay maaaring makatulong sa iyo ng isang grupo. Ang problema ay hindi ang iyong app. Ito ang telepono ng gumagamit. Hayaan mo akong magpaliwanag. Ang iyong ideya ay isang mamamatay at kung tiwala ka tungkol sa posibilidad na mabuhay nito, ang dapat mong alalahanin ay ayusin ang problema sa pagpapanatili. Kaya oo, user mo ako at mayroon akong karaniwang Android phone. Sa isang disenteng 32 GB na storage at salamat sa Reliance Jio, isang medyo matatag na koneksyon sa internet. Ano ang gagawin ko? Pumunta ako at tuklasin kung ano ang nasa labas para ubusin ko. Sa prosesong ito, sinasakal ko lang ang aking device gamit ang 100s ng mga app at habang totoo na talagang nagustuhan ko ang iyong app at nakita kong ito ay kawili-wili, sa totoo lang sa puntong ito ay nakalimutan ko na ito. Umiiral pa rin ito sa aking telepono ngunit hindi ko ito masyadong napapansin sa lahat ng iba pang mga app na naroroon.
Ang problema dito ay hindi sapat ang pakikipag-ugnayan ng iyong app. Ipinapaalala lang nito sa mga user na nandoon ito sa kanilang device na naghihintay na gamitin nila ito at sa lahat ng mga nakakatuwang app tulad ng Facebook at WhatsApp na patuloy na binobomba ang iyong mga user ng mga notification, malaki ang posibilidad na mawala ang iyong app sa karamihan maliban kung ayusin nito ang problema sa pakikipag-ugnayan.
Paano Magdagdag ng Mga Push Notification sa Iyong Android Project
Ang Push Notification ay isang mahusay na magaan na mekanismo upang ayusin ang problema at ang artikulong ito ay magpapakita sa iyo kung paano ito ipatupad sa sarili mong mga proyekto.
Gagamitin namin Bluemix ng IBM para sa pagsasama ng Mga Push Notification sa aming mga app. Mayroong isang tonelada ng iba pang mga provider na magbibigay sa iyo ng SDK upang maisama sa proyekto at magpatuloy sa pagbuo nito. Ngunit may ilang pangunahing dahilan kung bakit pinili ko ang Bluemix kaysa sa iba.
- Nag-aalok ang First Bluemix ng isang tonelada ng higit pang mga tampok na maaari kong idagdag sa isang umiiral na proyekto na walang hassled (ang mga push notification ay isa lamang sa mga alok na iyon). Pinapadali ng kanilang console na pamahalaan ang lahat ng kanilang mga pagsasama.
- Pangalawa, kung ikaw ay isang baguhan at sumubok ng anumang iba pang SDK, malamang na maipit ka sa isang lugar (nagawa ko na). Sa Bluemix halos hindi ganoon ang kaso dahil napakahusay ng dokumentasyon ng teorya at mga gabay.
- Pangatlo at isa sa pinakamahalagang dahilan para piliin ang Bluemix ay kahit na ito ay isang bayad na serbisyo, ito ay may kasamang 30 araw na pagsubok upang maaari mong paglaruan ang lahat ng kanilang mga alok bago magpasyang mag-commit sa kanilang platform at mamuhunan dito. Ito ay palaging isang magandang kasanayan upang subukan ang ilang mga bagay bago mamuhunan dito.
- Pang-apat at ito ay mas katulad ng brownie point sa IBM, mayroong pakiramdam ng pagiging pamilyar at tiwala na nauugnay sa IBM ng mga developer sa IBM bilang isang kumpanya. Matagal na silang gumagawa ng ilang kamangha-manghang gawain sa larangan ng teknolohiya at alam na alam nila ang kanilang mga bagay, kaya maaari kang tumalon nang walang anumang pag-aalala
Upang magpatuloy pa sa araling ito, kailangan muna nating tiyakin na tayong lahat ay nasa parehong pahina kaya bago sumabak sa post na ito tiyaking nakapag-sign up ka para sa Bluemix (kung hindi mo pa nagagawa) at naka-log in sa console.
Nakatuon ang artikulong ito sa Android, kaya ipagpalagay kong pamilyar sa iyo ang pagsusulat ng mga app para sa Android. Sige, magsimula na tayo.
Hakbang 1: Ang Paunang Setup
Magbukas ng kasalukuyang proyekto sa Android Studio kung saan mo gustong isama ang Mga Push Notification. Maaari ka ring magpatuloy at gumawa ng bagong proyekto para lang masubukan ang mga bagay-bagay. Kung magbubukas ka ng isang kasalukuyang proyekto, siguraduhing lumipat ka sa bagong branch bago gumawa ng anumang mga karagdagan sa iyong proyekto. Kapag tapos ka na sa hakbang na ito, buuin ang proyekto at i-deploy ito sa iyong telepono/emulator. Ito ay magpapatunay lamang na ang lahat ay gumagana tulad ng inaasahan at kami ay handa na.
Hakbang 2: Kunin ang iyong Firebase Cloud Messaging API Key
Ginagamit ng Bluemix ang Google Cloud Messaging upang magpadala ng mga downstream na push notification sa iyong app. Sa pamamagitan ng pagkuha sa iyong Firebase Cloud Messaging (GCM) Project, kailangan lang ng malaking abala sa iyong mga kamay sa pagtatakda at pag-configure ng mga bagay para sa iyo. Tumungo sa console.firebase.google.com, at Mag-login gamit ang isang Google Account pagkatapos ay sundin ang mga hakbang sa ibaba
- Gumawa ng bagong Proyekto.
- Bigyan ito ng isang pangalan
- Kapag na-setup na ito, pumunta sa Mga Setting ng Proyekto.
- Mag-click sa Cloud Messaging.
- kopyahin ang Server API Key at ang ID ng nagpadala tulad ng ipinapakita sa screenshot sa ibaba.
- Pagkatapos makumpleto ang mga hakbang sa itaas, magpatuloy at idagdag ang Firebase sa iyong Android Project. Kasama sa hakbang na ito ang pagpasok ng pangalan ng package ng iyong proyekto at iba pang mga detalye at pagkatapos ay i-download ang “google-services.json" file.

TANDAAN: Mahalagang kumpletuhin mo nang tama ang hakbang na ito upang gumana nang maayos ang mga paparating na hakbang. Tiyaking naka-configure ang iyong app at ang "google-services.json" na file ay inilagay sa iyong proyekto.
Hakbang 1: Magrehistro ng App

Hakbang 2: I-download ang Config File

Hakbang 3: Magdagdag ng Firebase SDK

Tiyaking pinapatakbo mo ang iyong proyekto sa yugtong ito para lang makita kung gumagana nang maayos ang lahat. Kung ang lahat ay mabuti upang magpatuloy sa susunod na hakbang.
Hakbang 3: I-configure ang isang Serbisyo ng Bluemix
- Pumunta sa iyong Bluemix Console.
- Buksan ang iyong Bluemix catalog at pagkatapos ay i-click ang IBM Push Notifications para sa serbisyo ng Bluemix na ginawa mo.
- Mag-click sa Pamahalaan at pagkatapos ay pumunta sa I-configure.
- Piliin ang Mobile.
- Ngayon ilagay ang mga kredensyal na iyong kinopya sa nakaraang hakbang dito. I-update ang GCM/FCM Itulak ang tab na Mga Kredensyal gamit ang ID ng Nagpadala/Numero ng proyekto at API Key.
- Pindutin ang I-save.
Hakbang 4: Pagpapadala ng Push!
- Sige, malapit na tayong matapos. I-deploy ang iyong app sa iyong telepono/emulator at ngayon ay pumunta sa iyong console.
- Piliin ang Ipadala ang Notification.
- I-configure ang iyong mensahe sa seksyong ito.

- Kapag tapos na ang lahat, pindutin magpadala at pumunta sa iyong device.

Ang Bluemix ay may ilang karagdagang mga opsyon para sa Android ayon sa kanilang dokumentasyon. Malawak mong mai-configure ang iyong notification. Narito ang mga opsyon (direkta mula sa kanilang mga doc):
- I-collapse ang Key: Naka-attach ang mga collapse key sa mga notification. Kung maraming notification ang dumating nang sunud-sunod na may parehong collapse key kapag offline ang device, babagsak ang mga ito. Kapag nag-online ang isang device, nakakatanggap ito ng mga notification mula sa server ng FCM/GCM, at ipinapakita lamang ang pinakabagong notification na may parehong collapse key. Kung hindi nakatakda ang collapse key, ang bago at lumang mga mensahe ay iimbak para sa paghahatid sa hinaharap.
- tunog: Nagsasaad ng sound clip na ipe-play sa pagtanggap ng isang notification. Sinusuportahan ang default o ang pangalan ng isang mapagkukunan ng tunog na naka-bundle sa app.
- icon: Tukuyin ang pangalan ng icon na ipapakita para sa notification. Tiyaking na-package mo ang icon sa
res/drawable
folder, kasama ang application ng kliyente.
- Pangunahin: Tinutukoy ang mga opsyon para sa pagtatalaga ng priyoridad sa paghahatid sa mga mensahe.
- Ang prioridad
high
ormax
ay magreresulta sa paunang abiso.
- Ang prioridad
low
ordefault
ay hindi magbubukas ng mga koneksyon sa network sa isang sleeping device.
- Ang prioridad
min
magiging silent notification.
- Ang prioridad
- Visibility: Maaari mong piliing itakda ang opsyon sa visibility ng notification sa alinman
public
orprivate
.- Ang
private
pinaghihigpitan ng opsyon ang pampublikong pagtingin at maaari mong piliing paganahin ito kung secure ang iyong device gamit ang isang pin o pattern, at ang setting ng notification ay nakatakda sa Itago ang nilalaman ng sensitibong nilalaman. Kapag itinakda ang visibility bilangprivate
Saredact
patlang ay dapat banggitin. Tanging ang nilalaman na tinukoy saredact
lalabas ang field sa isang secure na naka-lock na screen sa device.
- Ang
public
ang opsyon ay magre-render ng mga notification na malayang basahin.
- Ang
- Oras para mabuhay: Ang halagang ito ay itinakda sa mga segundo. Kung hindi tinukoy ang parameter na ito, iniimbak ng server ng FCM/GCM ang mensahe sa loob ng apat na linggo at susubukan nitong ihatid. Mag-e-expire ang validity pagkatapos ng apat na linggo. Ang posibleng hanay ng halaga ay mula 0 hanggang 2,419,200 segundo.
- Pagkaantala kapag walang ginagawa: Maaari mong itakda ito sa alinman sa mga sumusunod na halaga:
True
ay nagtuturo sa server ng FCM/GCM na huwag ihatid ang abiso kung ang device ay idle.
False
tinitiyak ang paghahatid ng notification kahit na ang device ay idle.
- Pag-sync: Sa pamamagitan ng pagtatakda ng opsyong ito sa
true
, naka-sync ang mga notification sa lahat ng iyong nakarehistrong device. Kung ang user na may username ay may maraming device na may parehong application na naka-install, ang pagbabasa ng notification sa isang device ay nagsisiguro ng pagtatanggal ng mga notification sa iba pang device. Kailangan mong tiyakin na ikaw ay nakarehistro sa serbisyo ng Mga Push Notification sa userId para gumana ang opsyong ito.
- Karagdagang kargamento: Tinutukoy ang mga custom na halaga ng payload para sa iyong mga notification.
- Napapalawak na notification: Nagbibigay ito sa mga customer ng opsyon na palawakin ang isang notification na may higit pang impormasyon, habang makikita ang isang pangunahing notification kapag na-collapse ang notification. Ang mga sumusunod na opsyon ay sinusuportahan:
- Mga Notification ng Malaking Larawan: Maaari mong piliing magsama ng larawan kapag pinalawak ang notification. Tiyaking nagbibigay ka ng teksto ng Pamagat at URL para sa larawan.
- Big Text Notifications: Maaari mong piliing magsama ng karagdagang text na may pamagat. Tiyakin na ang Big Text message at Title text na impormasyon ay naibigay.
- Mga Notification ng Inbox Style: Maaari mong ipadala ang notification na naka-istilo bilang notification sa inbox. Magbigay ng teksto ng Pamagat at ibigay ang mensahe sa Mga Linya.
Konklusyon
Ayan yun! tulad na lamang na nagse-set up ka ng mga push notification sa iyong app sa apat na madaling hakbang nang hindi dumadaan sa abala sa pagkuha ng server at nag-aabala tungkol sa mga hindi kinakailangang kumplikado. Ito ay kung gaano kadali ang pagbuo sa IBM Bluemix. Ang push notification ay isa lamang sa kanilang mga handog. Nag-aalok sila ng mga database at Watson API sa marami. At dahil pinagsama-sama ng Bluemix console ang lahat, hindi mo na kailangang patuloy na mag-shuffling sa pagitan ng mga serbisyo. Nasa iisang bubong ang lahat. Umaasa ako na ang artikulong ito ay nakatulong sa iyo na matuto ng bago at kung interesado kang matuto ng higit pang mga bagay tulad nito, lubos kitang hinihikayat na subukan ang Bluemix.
Marina
Nagbahagi ka ng ilang mahalagang impormasyon dito. Natutuwa akong basahin ang iyong blog.
Suraj Padmasali
Magandang hakbang-hakbang na gabay, madaling maunawaan! Malaki ang naitulong nito sa akin!
Emma
Magandang artikulo. Mahalin ang iyong mga tip na ibinigay mo nang hakbang-hakbang.