áá»ááºážááááŒá®ážááœá±á·á áá¬áá±á¬ááºážáá²á· ááá±áááºážáá±ážáá áºáááᯠáá»áœááºáá±á¬áº ááŒááºáá»áŸá±á¬ááºááœá¬ážáááºá ááá¬ážááẠHabr á¡ááá®áá±ážááŸááºážá á¡áá¯ááºááá¯ááºááá·áºá¡ááºá¹áá«áááºáá áºáá¯á á®á¡ááœáẠáá áºááẠáá»áœááºá¯ááºááááºáá»á±á¬ááºážáá»á¬ážááᯠááœá±ážááá¯ááºááŒááºáááºá á€ááœááºá á¥ááá¬á áááºááẠááŸááºáá»ááºááá±ážááá¯ááºáá«á á€áá±áá¬ááœáẠáááºááẠáá²áá±ážááá¯ááºááœáá·áºááᯠááŒááºážáááºáá¶áááŒá®áž áá±áá¯áá»á¡á¬ážááŒáá·áº áá±á¬áºááŒá°áá¬áá»á¬ážááᯠáááºáá¬ážááŒááºáá±á«áºááœáẠá¡áááºááŒá±á¬áá·áº áááŒááºáááááºážá
áá¯á¶ážááŒááºáá²á·áááº- áá»áœááºá¯ááºááá¯á·ááẠáááºáá±á¬áá·áºáááºáá¬ááŸááá±á¬á áá¬áá¬áá±á¬á áá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯ááºá¡áá¬áá
áºáᯠááá¯á¡ááºáá«áááºá Habr á¡ááœáẠáááºážáá²á·ááá¯ááºááá¯ááºáá»áŸá±á¬ááºááœáŸá¬ááá±á¬á
á¡ááŒá±á¡áá±ááᯠáá¬ážáááºááẠá
ááááºááŸá±á¬á·áá¯á¶ á¡áááºážááẠáá±ážáá«áá
á±á
áá áºáá¯áá¯ááŒá áºáá¯á¶ááááºá á - ááá habr.com áá»áŸá±á¬ááºááœáŸá¬
"á¡áááºáááŒá±ááŸá¯áá»á¬áž" á á¬áááºáž
- á¡ááá·áºáááºááŸááºáá»áẠ0 ááŸáá·áº ááá°áá±á¬ áá¯ááºáá±ááŸá¯á¡á¬áž ááẠá¡ááá·áºáááºááŸááºá áááá«á
- ááŸááºáá»ááºáá±ážááẠá¡ááŒá²áááºážáááŒá áºááá¯ááºáá«á
- á á áºáááºážáá»á¬áž á¡áá¯ááºáááŒá áºáá«á
- áá±á¬áºááŒá°áá¬áá»á¬ážááᯠá¡ááŸá±á¬ááºá¡ááŒááºá¡áááºááœáẠáááŒááºááá¯áẠ(á¡áááºáá±á¬ááºááœáẠá¡áááºáá±á¬ááº)
- ááááºá á¬á¡á¬ážáá¯á¶ážááᯠááááŸáááá¯ááºáá«á
áá¯ááºáá²á·á á¡ááºááºááᯠááááºááŸá ẠááŒáá¯ááºáááááºážá á¡ááºááááºááá¯ááºááá±ážáá±á¬áºáááºáž ááá¯ážááœá¬ážáá±áá²ááŒá áºáááºá áá±áá¯áá»á¡á¬ážááŒáá·áº ááŒá¯ááŒááºááẠááá¯á¡ááºáááºá
á¡ááá¯ááºážáá áºá áááºáá±á¬ááºááŸá¬ááœá±áá±áá«áááºá
Google Query á¡ááŒáẠ"habrahabr API" á¡áá±á¬áºáá±áž áá±ááºáá±á¬ááºáá»áá±ááŒá®ááá¯á· ááŒá±á¬áá«áááºá
áááºážááẠPHP ááŒá áºáááºáá°áá±á¬á¡áá»ááºááᯠáá»á áºáá»á°ááŸá¯áᬠá¡á±á¬ááºááá¯á·áááºážááŒá®áž áááºáá«-
áá»áŸá±á¬ááºááœáŸá¬ ID ááá¯ááá°ááŒááºážá
á¡ááœáá·áºáá±á¬ááºážáá°ááŒááºážá
áá®áá¯á¶á ᶠHabrahabr ááœááºá áááºááẠá¡ááá®áá±ážááŸááºážá¡áá áºá á¡ááŸá áºáá¬áááŸáá·áº API ááá¯á¡ááºááá·áº áááºááœááºáá»ááºááᯠá¡ááá¯áá»á¯á¶ážáá±á¬áºááŒááẠááá¯á¡ááºáááºá
áááºááœáá·áºáááá¯á· ááá¯á¡ááºáááºááá¯ááẠáá±ážá áá¬áááá¯áá«áá°ážá á á¬áá áºá á±á¬áẠ(á¡ááá¯áá±á¬ááº) áá±ážáááº-
á¡áá¹ááá¬
PWA ááá¯á¡ááŒá±áá¶á Habr á¡ááœááºáá»áŸá±á¬ááºááœáŸá¬áá áºáá¯ááŒá¯áá¯ááºááá¯áá±á¬ááá¹áááŸááááºá áá®á¡ááœáẠá¡ááŒá±á¬ááºážáááºážáá»á¬ážá áœá¬ááŸááá«áááºá
ááááá¯á¶ážááŸáá·áº á¡áááºááŸá¬ážáá¯á¶áž- Android á¡ááá®áá±ážááŸááºážááẠáá»áœááºá¯ááºá ááá¯ááºáá±ážááá¯ááºáᬠááá¯á¡ááºáá»ááºáá»á¬ážááŸáá·áº áááá¯ááºáá®áá«á
áá¯ááá- á¡á®ážáá±ážááºááŒáá·áº áá¬áá±á·ááŸááá±á¬ á¡áá¬á¡á¬ážáá¯á¶ážááŸáá·áº áááºáááºáá±á¬ áá°áá¡áááá±ážáá»ááºáá»á¬áž ááá¯á¶áá±á¬ááºáá« (á¥ááᬠááŸááºáá»ááºáá»á¬áž)á
áááá- áá»áœááºá¯ááºá á¡áá»áá¯ážá á®ážááœá¬ážááᯠááá·áºááœááºážá ááºážá á¬ážááŒá®áž áá»áœááºá¯ááºá áááºáááºá á¬ážáá±á¬ áá°áá»á¬áž/á¡áá»ááºá¡áá»á¬áá»áá±á¬ áá¯áá¹ááá¯ááºáá±ážá¡áá»ááºážáá»á¯ááºáá»á¬áž (ááŸá¯áá±á¬áá·áºá¡áá±ááŒáá·áº)á
á¡ááŒá±á ááááºááŒá®áž áá»á±áááºá áá¬ááá¯ááºáá±ááá·áº á¡áááºážáá¯á¶ážáá±á¬á· ááá¯ážááá¯ážáá¬ážáá¬ážáá«áá²á
áá¶ááá±á¬ááºážá áœá¬ááŒáá·áºá áá»áœááºá¯ááºááá¯á·á API ááá¯á· áááºáá±á¬ááºááœáá·áºááᯠáá±á¬áá±á¬ááẠááááŸáááá¯ááºáá«á API ááᯠá¡ááŒá®ážáááºááŒá®ážáá±á¬áẠáááºáá±á¬ááºá¡áá¯á¶ážááŒá¯ááœáá·áºááᯠááŒááºáááºá áááºááẠáá»áœááºá¯ááºááá¯á·á á®á ááºáá¬ážáá±á¬áºáááºáž áá»áœááºá¯ááºááá¯á·ááœáẠáááºá¡ááá¡áá»áááŸááá±ážáá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬áá±á¬áááºááœáẠá¡ááŒá¬ážáŠážá á¬ážáá±ážá¡áá¯ááºáá»á¬ážááᯠááŒá±ááŸááºážááẠá¡áá¯ááºáá»á¬ážáá±áá«áááºá
«ÐаЎМП, Ме беЎа! ЧÑП-МОбÑÐŽÑ Ð¿ÑОЎÑЌаеЌ!» â Ñказал Ñ Ñебе, О МаÑал ОÑкаÑÑ.
á¡ááá¯ááºážááŸá áºá áááºáá²áá±á¬ áá°ážáá±á¬áºááŸá¯áá»á¬ážá
ÐÑÑ ÐŸÐŽÑ ÐžÐ· лПгОкО, еÑлО пÑОлПжеМОе ÑабПÑаеÑ, ÑП Ñ ÐœÐµÐ³ÐŸ еÑÑÑ ÐŽÐŸÑÑÑп к API, О ПМ заÑÐžÑ Ð² пÑОлПжеМОе. ÐавайÑе аМалОзОÑПваÑÑ.
áá»áœááºá¯ááºááá¯á·ááẠá¡ááœá¬ážá¡áá¬áá»á¬ážááᯠááá¯ááºááœááºááŒá±ááŸááºážáá±áá±á¬ááŒá±á¬áá·áº Wireshark ááẠáá»áœááºá¯ááºááá¯á·áááœá±ážáá»ááºááŸá¯ááŒá áºáááºá áá¬áá»ááºááŸá¯á¡áá»áá¯á·ááá«áá²á áá¯ááºážááᯠdesktop ááœááºáá»á°áá¬ááŒáá·áºá¡ááºáá¬áááºáá»áááºáááºáá¬ážáá±á¬ááŒá±á¬áá·áºáá»áœááºá¯ááºááá¯á·áááºá¡ááá®áá±ážááŸááºážááá¯ááœáá·áºááŒá®ážáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááá¯ááŒáá·áºááŸá¯áááº-
áá¬á០áááŸááºážáᬠááŸááºážáá«áááºá
áá¯ááºáá²á·á á¡áá¬á¡á¬ážáá¯á¶ážááᯠáá¯ááºááŸááºáá¬ážááŒá®ážá áá«áá±ááá·áº áá¯ááºááŸááºá áá áºáá²á· áááŸá¯ááºá á±áá»ááºáá«áá°ážá ááá¯á¡áá«áááºáááºá¡ááá®áá±ážááŸááºážá¡ááœááºážááá¯ááŒáá·áºááŸá¯ááá¯á·ááá¯á¡ááºáá«áááºá
ááŒáá¯ááœá²ááœá¬ážáááºá .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
ÐŽÐ»Ñ Ð¿ÑПÑЌПÑÑа лПгПв пÑОлПжеМОÑ.
ááá»áŸá±á¬áºááá·áºáá²á ááŸááºáááºážáá»á¬ážááẠáá»áŸá±á¬áºááá·áºáá¬ážáááºááẠááá¯ááá¯á¡áá±ážá áááºááŒá áºáá¬áááºá
á€ááœááºáá»áœááºá¯ááºááá¯á·ááá¯á¡ááºáááºáá»á¬ážáá¬ááŸááááºá client_id
áá«áá±áá²á· ááá¯ááẠá¡áá¯á¶ážááŒá¯áá°/á¡ááá®áá±ážááŸááºážááŸáá·áº áá²á· login О á
áá¬ážááŸááºááᯠááá¯ážááá¯ážá
á¬áá¬ážáá²á·á
áá°ážáá±á«ááºážááŒá¶á
ááºááŸá¯áá®á¡áá¯áá®á¡áá»áá¯á·ááŸááºáááºážáá»á¬ážááœáẠáá±á¬á·ááºá¡ááºááŸáá·áº á
áá¬ážááŸááºáá
áºáá¯áá»áŸáᬠááŸááá±ááŒááºážááẠáááºááá·áºá¡áá¬ááá¯áá»áŸ ááááá¯ááºááŒááºážáááŸááá«á á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº á¡ááá¯áá«ááŸááºáááºážáá»á¬ážááᯠroot áá¯ááºááá¯ááºááœáá·áº ááá¯á·ááá¯áẠáá»áááºáááºááŸá¯ááŸáá
áºááá·áºáᬠáááºááá¯ááºáá±á¬ááŒá±á¬áá·áº adb
. ááá¯á·áá±á¬áº Habr ááá¯áááºáá±áá°áá»á¬ážááŒá¬ážááœáẠá¡ááŸá¬ážááŸá¬ááŒááºááŒááºážááᯠááœáá·áºáá¬ážááá¯ááºááá·áº Android developer áá»á¬ážááŸááá±áá±á¬ááŒá±á¬áá·áºá áááºážááẠááŒá¿áá¬ááŒá
áºáá¬áááºá
á€ááá
á¹á
ááœááºá áá±ááááºááœáẠ"á¡ááá²á·á¡á¬ážááœááºážááŒááºáž" ááẠá¡áá±á¬áá·áºááá¯ážáá°ááŸá¯ááŒá
áºááá¯ááºáá±á¬áºáááºáž áááºážááᯠáááºáá°ááá¯á¡ááºááááºážá
á€ááŸááºáááºážáá»á¬ážá០áá»áœááºá¯ááºááá¯á· áá¯ááºáá°ááá¯ááºáááº-
client_id
Оapikey
áááºáá±á¬ááºááẠááá¯á¡ááºáááºá api;- á¡áá¯á¶ážááŒá¯áá°ááœáá·áºááŒá¯áá»áẠURL (áá°ážáááºážáá±á¬áºáááºážá á€áááºážáááºážááŸáá·áºáááºáááºááŒá®áž ááá¯ááŸá±á¬ááºáááºážááœáẠáááºááá·áºá¡áá¬áá»áŸ áá±ážáá¬ážááŒááºážáááŸááá±á)
á¡á²áá« áááºááá¯ááŒá áºáá¬áá²á á€áá±ážáááºáá±á¬áá¯áá±ááááá¯á¡ááŒá±áá¶áá áá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯ááºááá¯ááá¯ááºážá¡ááºááá®áá±ážááŸááºážááá¯á¡áá±á¬ááºá¡áááºáá±á¬áºáááºáá±ážáááºáá±á¬ááá±á¬áá»ááºáá áºáá¯ááœááºáá¯ááºáá±á¬ááºáá±ááŒá®ááŒá áºáááºá áááºáá±á·áá»áºáá±ážááá¯á· áá°áá®áá±ážáá»ááºáá°ááœá±áá²á· áááŒá¬ážáá°ááœá±ááᯠáá²áá±ážááá¯á· áá±á¬ááºážááá¯áá«ááẠ(áá«ááᯠáááºáá°á ááá¯á¡ááºáá¬ááŸááááŸá áá¬ážáááºá á±áá»ááºááá¯á·áá«)á
СпаÑОбПзавМОЌаМОе!
á
á¬áááºážááœááºážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážáᬠá
á
áºáááºážááœáẠáá«áááºááá¯ááºáá«áááºá
ááẠHabr ááá¯ááá¯ááºážá¡ááºááºááᯠá¡áá¯á¶ážááŒá¯áá«ááá¬ážá
-
áá¯ááºáááºá áá«á¡á²áá«ááá¯áá¯á¶ážáááºá áá«áá»á±áááºáááºá
-
áá¯ááºáááºá áá«áá¯á¶ážáááºá á¡ááá®áá±ážááŸááºážá á¡áááºáááŒá±áá°ážá
-
ááá¯ááºáá«á áá»áœááºá¯ááºáá¯ááºážááœáẠáááºáá¬ážááŸááºážááᯠáá¯á¶ážáá«áááºá
-
ááá¯ááºáá«á áá»áœááºá¯ááºáááœááºáá»á°áá¬á០Habr ááá¯áá¯á¶ážáá«áááºá
á¡áá¯á¶ážááŒá¯áá° 357 áŠáž áá²áá±ážáá²á·áááºá á¡áá¯á¶ážááŒá¯áá° 30 ááŸá±á¬ááºáá±áá²á·áá«áááºá
source: www.habr.com