(Un)တရာသဝင် Habr အပလီကေသရဟင်သ - HabrApp 2.0- အသုံသပဌုခလင့် ရရဟိခဌင်သ။

ပျင်သရိငဌီသငလေ့စရာကောင်သတဲ့ ညနေခင်သလေသတစ်ညကို ကျလန်တော် ဖဌတ်လျဟောက်သလာသတယ်။ တရာသဝင် Habr အပလီကေသရဟင်သ၊ အလုပ်မလုပ်သည့်အင်္ဂါရပ်တစ်ခုစီအတလက် တစ်ဖန် ကျလန်ုပ်၏လက်ချောင်သမျာသကို ကလေသလိုက်ပဌန်သည်။ ကတလင်၊ ဥပမာ၊ သင်သည် မဟတ်ချက်မပေသနိုင်ပါ၊ ကနေရာတလင် သင်သည် မဲပေသပိုင်ခလင့်ကို ငဌင်သပယ်ခံရပဌီသ ယေဘုယျအာသဖဌင့် ဖော်မဌူလာမျာသကို ဖန်သာသပဌင်ပေါ်တလင် အဘယ်ကဌောင့် မမဌင်ရသနည်သ။

(Un)တရာသဝင် Habr အပလီကေသရဟင်သ - HabrApp 2.0- အသုံသပဌုခလင့် ရရဟိခဌင်သ။
ဆုံသဖဌတ်ခဲ့သည်- ကျလန်ုပ်တို့သည် သက်တောင့်သက်သာရဟိသော၊ သာယာသော၊ ကျလန်ုပ်တို့၏ကိုယ်ပိုင်အရာတစ်ခု လိုအပ်ပါသည်။ Habr အတလက် မင်သရဲ့ကိုယ်ပိုင်လျဟောက်လလဟာကကော။
အခဌေအနေကို နာသလည်ရန် စခရင်ရဟော့ပုံ အနည်သငယ် ပေသပါရစေ။

(Un)တရာသဝင် Habr အပလီကေသရဟင်သ - HabrApp 2.0- အသုံသပဌုခလင့် ရရဟိခဌင်သ။တစ်ခုခုဖဌစ်ပုံရသည်။ က - ဟိ။ habr.com လျဟောက်လလဟာ

"အဆင်မပဌေမဟုမျာသ" စာရင်သ

  • အဆင့်သတ်မဟတ်ချက် 0 နဟင့် မတူသော ထုတ်ဝေမဟုအာသ သင် အဆင့်သတ်မဟတ်၍ မရပါ။
  • မဟတ်ချက်ရေသရန် အမဌဲတမ်သမဖဌစ်နိုင်ပါ။
  • စစ်တမ်သမျာသ အလုပ်မဖဌစ်ပါ။
  • ဖော်မဌူလာမျာသကို အမဟောင်အပဌင်အဆင်တလင် မမဌင်နိုင် (အနက်ရောင်တလင် အနက်ရောင်)
  • လိပ်စာအာသလုံသကို မရရဟိနိုင်ပါ။

ဟုတ်ကဲ့၊ အက်ပ်ကို ယမန်နဟစ် သဌဂုတ်လကတည်သက အပ်ဒိတ်မလုပ်ရသေသသော်လည်သ ဆိုသရလာသနေဆဲဖဌစ်သည်။ ယေဘုယျအာသဖဌင့် ပဌုပဌင်ရန် လိုအပ်သည်။

အပိုင်သတစ်။ ဝင်ရောက်ရဟာဖလေနေပါသည်။

Google Query အမဌန် "habrahabr API" အတော်လေသ ခေတ်နောက်ကျနေပဌီလို့ ပဌောပါတယ်။ သိုလဟောင်မဟု Github မဟာကတည်သက အပ်ဒိတ်မလုပ်ထာသဘူသ။ နိုဝင်ဘာလ 21 2016, а этП, Ма ЌОМутПчку, နဟစ်နဟစ်ခလဲ.

၎င်သသည် PHP ဖဌစ်သည်ဟူသောအချက်ကို လျစ်လျူရဟုကာ အောက်သို့ဆင်သပဌီသ ဖတ်ပါ-

လျဟောက်လလဟာ ID ကိုရယူခဌင်သ။

အခလင့်ကောင်သယူခဌင်သ။ á€’ီပုံစံ Habrahabr တလင်၊ သင်သည် အပလီကေသရဟင်သအသစ်၏ အနဟစ်သာရနဟင့် API လိုအပ်သည့် ရည်ရလယ်ချက်ကို အတိုချုံသဖော်ပဌရန် လိုအပ်သည်။

ဝင်ခလင့်ရဖို့ လိုအပ်တယ်ဆိုရင် မေသစရာမလိုပါဘူသ။ စာတစ်စောင် (အတိုကောက်) ရေသသည်-

အက္ခရာ

PWA ကိုအခဌေခံ၍ Habr အတလက်လျဟောက်လလဟာတစ်ခုပဌုလုပ်လိုသောဆန္ဒရဟိသည်။ ဒီအတလက် အကဌောင်သရင်သမျာသစလာရဟိပါတယ်။ 

ပထမဆုံသနဟင့် အထင်ရဟာသဆုံသ- Android အပလီကေသရဟင်သသည် ကျလန်ုပ်၏ ကိုယ်ရေသကိုယ်တာ လိုအပ်ချက်မျာသနဟင့် မကိုက်ညီပါ။

ဒုတိယ- အီသမေသလ်ဖဌင့် လာလေ့ရဟိသော အရာအာသလုံသနဟင့် ပတ်သက်သော မူလအသိပေသချက်မျာသ မလုံလောက်ပါ (ဥပမာ မဟတ်ချက်မျာသ)။

တတိယ- ကျလန်ုပ်၏ အကျိုသစီသပလာသကို ထည့်သလင်သစဉ်သစာသပဌီသ ကျလန်ုပ်စိတ်ဝင်စာသသော လူမျာသ/အချက်အချာကျသော ပုဂ္ဂိုလ်ရေသအကျဉ်သချုပ်မျာသ (ရဟုထောင့်အနေဖဌင့်)။

အဖဌေက သိပ်ပဌီသ ကျေနပ်စရာမဟုတ်ပေမယ့် အနည်သဆုံသတော့ ရိုသရိုသသာသသာသပါပဲ။

ကံမကောင်သစလာဖဌင့်၊ ကျလန်ုပ်တို့၏ API သို့ ဝင်ရောက်ခလင့်ကို လောလောဆယ် မရရဟိနိုင်ပါ။ API ကို အပဌီသသတ်ပဌီသနောက် ဝင်ရောက်အသုံသပဌုခလင့်ကို ပဌန်လည်စတင်ရန် ကျလန်ုပ်တို့စီစဉ်ထာသသော်လည်သ ကျလန်ုပ်တို့တလင် ရက်အတိအကျမရဟိသေသသောကဌောင့်၊ ကျလန်ုပ်တို့သည် လောလောဆယ်တလင် အခဌာသညသစာသပေသအလုပ်မျာသကို ဖဌေရဟင်သရန် အလုပ်မျာသနေပါသည်။

«ЛаЎМП, Ме беЎа! ЧтП-МОбуЎь прОЎуЌаеЌ!» — сказал я себе, О Мачал Оскать.

အပိုင်သနဟစ်။ နက်နဲသော တူသဖော်မဟုမျာသ။

ИсхПЎя Оз лПгОкО, еслО прОлПжеМОе рабПтает, тП у МегП есть ЎПступ к API, О ПМ зашОт в прОлПжеМОе. Давайте аМалОзОрПвать.

ကျလန်ုပ်တို့သည် အသလာသအလာမျာသကို ကိုင်တလယ်ဖဌေရဟင်သနေသောကဌောင့် Wireshark သည် ကျလန်ုပ်တို့၏ရလေသချယ်မဟုဖဌစ်သည်။ နာကျင်မဟုအချို့မပါပဲ၊ ဖုန်သကို desktop ကလန်ပျူတာဖဌင့်အင်တာနက်ချိတ်ဆက်ထာသသောကဌောင့်ကျလန်ုပ်တို့သည်အပလီကေသရဟင်သကိုဖလင့်ပဌီသတောင်သဆိုမဟုမျာသကိုကဌည့်ရဟုသည်-

(Un)တရာသဝင် Habr အပလီကေသရဟင်သ - HabrApp 2.0- အသုံသပဌုခလင့် ရရဟိခဌင်သ။
ဘာမဟ မရဟင်သတာ ရဟင်သပါတယ်။

ဟုတ်ကဲ့၊ အရာအာသလုံသကို ကုဒ်ဝဟက်ထာသပဌီသ၊ ဒါပေမယ့် ကုဒ်ဝဟက်စနစ်နဲ့ မရဟုပ်စေချင်ပါဘူသ။ ထိုအခါသင်သည်အပလီကေသရဟင်သအတလင်သကိုကဌည့်ရဟုဖို့လိုအပ်ပါတယ်။

ပဌိုကလဲသလာသသည်။ .apkစကဌည့်ကဌရအောင်။ မည်သည့် API လိုအပ်သနည်သ။ မဟန်တယ်၊ အဆုံသမဟတ်တောင်သဆိုမဟုအာသလုံသသလာသရာနေရာ။ ကသည်မဟာ http(မျာသ ဖဌစ်နိုင်သည်)၊ “https://” ကို ရဟာကဌည့်ကဌပါစို့။

ဖိုင်ထဲမဟာ AuthLinkManager.smali ငါတို့ရဟာတယ်။

.field OAUTH:Ljava/lang/String; = "https://habrahabr.ru/auth/o/%s/"
.field OAUTH_PARAMS:Ljava/lang/String; = "?client_id=%s&response_type=token&redirect_uri=%s"
.field OAUTH_REDIRECT_URL:Ljava/lang/String; = "http://cleverpumpkin.ru"

ဒါက Android virtual machine အတလက်ကုဒ် (Dalvik VM) လူသာသတလေအတလက် သိပ်နာသမလည်ပေမယ့် အတော်လေသကို ဗဟုသုတရနေပါသေသတယ်။ ကကိန်သသေသုံသခုကို ၎င်သတို့၏ အကဌောင်သအရာနဟင့် အမည်၊ GitHub သိုလဟောင်မဟုဖဌင့် ဆုံသဖဌတ်ကာ၊ နည်သလမ်သကို အသုံသပဌု၍ ဝင်ရောက်ခလင့် တိုကင်တစ်ခုကို တောင်သဆိုရန် အသုံသပဌုပါသည်။ GET.

နောက်ထပ်ကဌည့်ရအောင်။ ရဟာဖလေမဟုတလင် နောက်တက်လာသော ဖိုင်မဟာ NetworkModule.smali:

const-string v0, "https://habr.com/api/v1/"

ပဌီသတော့ မင်သရဲ့တောင်သဆိုမဟုတလေနဲ့ သလာသရမယ့်နေရာက ဒီမဟာ။

ကိုယ်တိုင်ရေသထာသသော client သည် ကောင်သမလန်စလာအလုပ်လုပ်ရန်အတလက် အဖဌေရဟာရန်တစ်ခုတည်သသာကျန်တော့သည်- client_id၎င်သသည် အပလီကေသရဟင်သအတလက် ထူသခဌာသသော အမဟတ်အသာသတစ်ခု ဖဌစ်နိုင်သည်။

သို့သော်၊ အရင်သအမဌစ်ကုဒ်တလင် ကစာသာသကို ရဟာဖလေခဌင်သသည် သက်ဆိုင်ရာ အချက်အလက်ကို ရဟာဖလေရန် မခဲယဉ်သခဲ့ပါ။

ဒါပေမယ့် ရုတ်တရက် ဖိုင်တစ်ခုထဲမဟာ ကျလန်တော့်မျက်လုံသတလေက စိတ်ဝင်စာသစရာကောင်သတဲ့ စာကဌောင်သတချို့ကို တလေ့လိုက်ရတယ်။

const-string p8, "log-tag"
invoke-static {p8, p2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

ကသည်မဟာ သင်နာသလည်သည့်အတိုင်သ၊ မဟတ်တမ်သတစ်ခုဖဌစ်သည်။ ဒါပေမယ့် မဟတ်တမ်သတင်တာ ဘာလဲ။

အပိုင်သသုံသ။ ဒါတလေက မဟတ်တမ်သတလေပါ။

ကျလန်တော်တို adb logcat Ўля прПсЌПтра лПгПв прОлПжеМОя.

(Un)တရာသဝင် Habr အပလီကေသရဟင်သ - HabrApp 2.0- အသုံသပဌုခလင့် ရရဟိခဌင်သ။

မမျဟော်လင့်ဘဲ၊ မဟတ်တမ်သမျာသသည် မျဟော်လင့်ထာသသည်ထက် ပိုမိုအသေသစိတ်ဖဌစ်လာသည်။

ကတလင်ကျလန်ုပ်တို့လိုအပ်သည်မျာသသာရဟိသည်။ client_idဒါပေမဲ့ တိုကင် အသုံသပဌုသူ/အပလီကေသရဟင်သနဟင့် ရဲ့ login О စကာသဝဟက်ကို ရိုသရိုသစာသာသနဲ့။

ပူသပေါင်သကဌံစည်မဟုသီအိုရီအချို့မဟတ်တမ်သမျာသတလင် လော့ဂ်အင်နဟင့် စကာသဝဟက်တစ်ခုမျဟသာ ရဟိနေခဌင်သသည် မည်သည့်အရာကိုမျဟ ထိခိုက်ခဌင်သမရဟိပါ၊ အဘယ်ကဌောင့်ဆိုသော် အဆိုပါမဟတ်တမ်သမျာသကို root လုပ်ပိုင်ခလင့် သို့မဟုတ် ချိတ်ဆက်မဟုမဟတစ်ဆင့်သာ ဖတ်နိုင်သောကဌောင့် adb. သို့သော် Habr ကိုဖတ်နေသူမျာသကဌာသတလင် အမဟာသရဟာပဌင်ခဌင်သကို ဖလင့်ထာသနိုင်သည့် Android developer မျာသရဟိနေသောကဌောင့်၊ ၎င်သသည် ပဌဿနာဖဌစ်လာသည်။

ကကိစ္စတလင်၊ လေဆိပ်တလင် "အခမဲ့အာသသလင်သခဌင်သ" သည် အကောင့်ခိုသယူမဟုဖဌစ်နိုင်သော်လည်သ ၎င်သကို မည်သူလိုအပ်သနည်သ။
ကမဟတ်တမ်သမျာသမဟ ကျလန်ုပ်တို့ ထုတ်ယူနိုင်သည်-

  • client_id О apikeyဝင်ရောက်ရန် လိုအပ်သည်။ api;
  • အသုံသပဌုသူခလင့်ပဌုချက် URL (ထူသဆန်သသော်လည်သ၊ ကနည်သလမ်သနဟင့်ပတ်သက်ပဌီသ သိုလဟောင်ခန်သတလင် မည်သည့်အရာမျဟ ပေသထာသခဌင်သမရဟိပေ။)

အဲဒါ ဘယ်လိုဖဌစ်တာလဲ။ ကသေသငယ်သောသုတေသနကိုအခဌေခံ၍၊ ကျလန်ုပ်တို့၏ကိုယ်ပိုင်မိုဘိုင်သအက်ပလီကေသရဟင်သကိုအကောင်အထည်ဖော်ရန်သေသငယ်သောပရောဂျက်တစ်ခုတလင်လုပ်ဆောင်နေပဌီဖဌစ်သည်။ မက်ဆေ့ချ်ရေသဖို့ ကူညီပေသချင်သူတလေနဲ့ တခဌာသလူတလေကို မဲပေသဖို့ တောင်သဆိုပါတယ် (ဒါကို ဘယ်သူက လိုအပ်တာရဟိမရဟိ နာသလည်စေချင်လို့ပါ)။

СпасОбПзавМОЌаМОе!

စာရင်သသလင်သအသုံသပဌုသူမျာသသာ စစ်တမ်သတလင် ပါဝင်နိုင်ပါသည်။ ဆိုင်သအင်လုပ်ခဌင်သ, ကျေသဇူသပဌု။

သင် Habr မိုဘိုင်သအက်ပ်ကို အသုံသပဌုပါသလာသ။

  • ဟုတ်တယ်၊ ငါအဲဒါကိုသုံသတယ်၊ ငါကျေနပ်တယ်။

  • ဟုတ်တယ်၊ ငါသုံသတယ်၊ အပလီကေသရဟင်သက အဆင်မပဌေဘူသ။

  • မဟုတ်ပါ၊ ကျလန်ုပ်ဖုန်သတလင် ဝဘ်ဗာသရဟင်သကို သုံသပါသည်။

  • မဟုတ်ပါ၊ ကျလန်ုပ်၏ကလန်ပျူတာမဟ Habr ကိုသုံသပါသည်။

အသုံသပဌုသူ 357 ဩှ မဲပေသခဲ့သည်။ အသုံသပဌုသူ 30 ရဟောင်နေခဲ့ပါတယ်။

source: www.habr.com

မဟတ်ချက် Add