ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ способ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Android прилоТСния

Π‘Ρ‹Π²Π°Π΅Ρ‚ послС Ρ€Π΅Π»ΠΈΠ·Π° прилоТСния Π΅Π³ΠΎ исходники ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ Π΄Π΅Π²Π°ΡŽΡ‚ΡΡ. ΠŸΡ€Π°Π²Π΄Π° вСдь, Ρ‚Π°ΠΊΠΎΠ΅ постоянно случаСтся? И Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ остаСтся ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠ°ΠΊ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠ΄ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ нСсколько сотСн строк ΠΊΠΎΠ΄Π° ΠΈ всС это Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ максимально быстро.

Π’ΠΎΡ‚ ΠΈ Ρƒ мСня появилась Π·Π°Π΄Π°Ρ‡Π° ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ имСя всСго лишь Π΅Π³ΠΎ apk. И Ρ‚Π΅, ΠΊΡ‚ΠΎ занимался дСкомпиляциСй ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π·Π½Π°ΡŽΡ‚ насколько тяТСло Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΌ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

ДСкомпиляция

Если ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ послС дСкомпиляции, Ρ‚ΠΎ скорСС всСго ΠΎΠ½ΠΎ Π½Π΅ скомпилируСтся ΠΈΠ·-Π·Π° ошибок, особо тяТСло Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ условия. НСкоторыС ошибки Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ, Π½ΠΎ ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π²ΠΎ мноТСствС условных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ просто, Π° ΠΊΠΎΠ³Π΄Π° ΠΈΡ… количСство Π±ΠΎΠ»Π΅Π΅ ста ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ нСсколько тысяч, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ способ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ тСряСт ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, быстрСС Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ всС Π·Π°Π½ΠΎΠ²ΠΎ.

На этом ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ экспСримСнты с дСкомпиляциСй, Π½ΠΎ лСнь Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ прогрСсса ΠΈ родился Π½ΠΎΠ²Ρ‹ΠΉ способ.

ΠŸΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ классов

Π˜Ρ‚Π°ΠΊ, jar это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, Ρ‚Π°ΠΊ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ просто Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ? КидаСм Π΅Π΅ Π² ΠΏΠ°ΠΏΠΊΡƒ libs, наслСдуСмся ΠΎΡ‚ Π³Π»Π°Π²Π½ΠΎΠΉ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ‚ΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ. ВсС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π³Π»Π°Π²Π½ΠΎΠ΅ Ρ‡Ρ‚ΠΎΠ± Π½Π΅ совпадали ΠΈΠΌΠ΅Π½Π° классов, поэтому названия ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΈΠ½Π°Ρ‡Π΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ совпадут сгСнСрированныС BuildConfig ΠΈ R.

Π’Π°ΠΊΠΈΠΌ способом ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Activity, Service, BroadcastReceiver ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… классов ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹Ρ… Π² манифСстС, Ρ‚Π°ΠΊ ΠΆΠ΅ Π² манифСстС Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° классов, ΠΈΠ½Π°Ρ‡Π΅ ΠΎΠ½ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½ΠΎ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово final Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠΆΠ΅, поэтому ΠΈΠ΄Π΅ΠΌ дальшС.

Π—Π°ΠΌΠ΅Π½Π° классов

Π Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π² jar Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ class Ρ„Π°ΠΉΠ»Ρ‹, это скомпилированныС классы, Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ сборкС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² ΠΏΠ°ΠΏΠΊΠ΅ bin/classes Π»Π΅ΠΆΠ°Ρ‚ Ρ‚Π΅ ΠΆΠ΅ class Ρ„Π°ΠΉΠ»Ρ‹, Π° Ρ‡Ρ‚ΠΎ Ссли ΠΏΠΎΠ΄ΡΡƒΠ½ΡƒΡ‚ΡŒ Ρ‚ΡƒΠ΄Π° Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· библиотСки…

НС всС Ρ‚Π°ΠΊ просто, для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ классы исходного прилоТСния Π½ΡƒΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, Π½ΠΎ ΠΏΡ€ΠΈ этом Π½Π΅ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. ДСлаСтся это просто: ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ libs Эклипс сам экспортируСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, поэтому ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ jar Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² ΠΏΠ°ΠΏΠΊΡƒ lib ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, Π² ЭклипсС это Project->Preferences->Java Build Path->Libraries->Add Jars… Π΄Π°Π»Π΅Π΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Order and Export Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π½Π΅ установлСн чСкбокс, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, всС Π±ΡƒΠ΄Π΅Ρ‚ Π² class Ρ„Π°ΠΉΠ»Π°Ρ….

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ класс ΠΈΠ· Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… исходников прилоТСния, исправляСм Π² Π½Π΅ΠΌ ошибки компиляции, добавляСм, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΊΠ°Π· Π΄ΠΈΠ°Π»ΠΎΠ³Π°, Ρ‡Ρ‚ΠΎΠ± ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ класс. Π”Π°Π»Π΅Π΅ ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π² ЭклипсС это Project->Clean, ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ class Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΠ°ΠΏΠΊΡƒ bin/classes, собираСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚!

ΠŸΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… сборках ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π΅Ρ‚ нСобходимости Π΅Π³ΠΎ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ способ достаточно ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Для облСгчСния исправлСния ошибок послС дСкомпиляции я использовал исходники ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠ· JD-GUI ΠΈ JAD, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ этого Π±Ρ‹Π»ΠΎ достаточно.

Но Π²ΠΎΡ‚ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ€Π΅Π»ΠΈΠ·Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, Π° для Π½Π΅Π΅, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ обфускатор ΠΈ выдаст ΠΎΠ½ сотни ошибок Π½Π° совпадСния ΠΈΠΌΠ΅Π½ классов ΠΈ Π½Π΅Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Π΅ ссылки. Π’ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΡ€Π° ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· скомпилированных class Ρ„Π°ΠΉΠ»ΠΎΠ² классы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹, послС этого ошибок Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° нСприятная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ сборки Ρ€Π΅Π»ΠΈΠ·Π° β€” Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ class Ρ„Π°ΠΉΠ»Ρ‹, Π° Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ ΠΏΡ€ΠΎΠΏΠ°Π΄Π°ΡŽΡ‚.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π°ΠΊΠΈΠΌ способом Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Ρ‡Ρ‚ΠΎ избавляСт ΠΎΡ‚ исправлСния ошибок Π²ΠΎ всСх исходниках ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всСго Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° подвСргнСтся процСссу дСкомпиляции β€” исправлСния β€” компиляции.

Π‘ большой Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅ получится ΡΠΊΡ€Ρ‹Ρ‚ΡŒ всС слСды ΠΎΡ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ прилоТСния, названия нСобфусцированных классов Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Activity ΠΈ Service, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ названия ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² сохранятся ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ доступны послС дСкомпиляции ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния, Π½ΠΎ для пиратских вСрсий это Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ стоит Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, способы Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠΌ способам Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ измСнСния ΠΊΠΎΠ΄Π°.

ОбновлСниС классов Π² jar β€” идСя Π·Π°ΠΌΠ΅Π½Ρ‹ классов ΠΏΡ€ΠΈΡˆΠ»Π° ΠΈΠ· этой возмоТности для jar Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ДСкомпиляция apk: Ρ‚ΡƒΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ

Π‘ΠΊΠΎΡ€Π΅Π΅ памятка для сСбя, Ρ‡Π΅ΠΌ пост для общСствСнности.

Π‘ офсайта https://developer.android.com/studio/index.html Π·Π°Π±ΠΈΡ€Π°Π΅ΠΌ Android SDK Tools (ссылка Π²Π½ΠΈΠ·Ρƒ страницы). На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‚Π°ΠΌ Π²Ρ‹Π»ΠΎΠΆΠ΅Π½Π° вСрсия 3859397.

РаспаковываСм ΠΈ устанавливаСм platform-tools ΠΈ build-tools для послСднСго Ρ€Π΅Π»ΠΈΠ·Π° Android. БоотвСтствиС ΠΈΠΌΠ΅Π½ΠΈ Ρ€Π΅Π»ΠΈΠ·Π°, вСрсии Android ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Android API ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° https://source.android.com/source/build-numbers

build-tools;25.0.2 | 25.0.2 | Android SDK Build-Tools 25.0.2

build-tools;25.0.3 | 25.0.3 | Android SDK Build-Tools 25.0.3

cmake;3.6.3155560 | 3.6.3155560 | CMake 3.6.3155560

> tools\bin\sdkmanager.bat «build-tools;25.0.3» «platform-tools»

Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½Π° Ρ€ΡƒΠΊΠΈ apk-ΡˆΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€Π΅ΠΏΠ°Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. НазваниС ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ ΠΈΠ· адрСсной строки Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΎΡ‚ΠΊΡ€Ρ‹Π² страницу с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½Π° Play Market. Π”Π°Π»Π΅Π΅ ΠΈΡ‰Π΅ΠΌ ΠΈ вытаскиваСм Π°Ρ€Ρ…ΠΈΠ² Ρ‡Π΅Ρ€Π΅Π· adb (root Π½Π΅ трСбуСтся).

ΠŸΡƒΡΡ‚ΡŒ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «Sample Foobar» имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ com.example.foobar

List of devices attached

> adb pull /data/app/com.example.foobar-1.apk

/data/app/com.example.foobar-1.apk: 1 file pulled. 3.0 MB/s (39955506 bytes in 12.719s)

Π‘ сайта https://ibotpeaches.github.io/Apktool/ Π·Π°Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈ устанавливаСм apktool, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π΅Ρ‚ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ² apk Π² Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Π£ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄. Π’ Notepad++ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ подсвСтку синтаксиса smali с https://forum.xda-developers.com/showthread.php?t=2760141, Π° для IntelliJ Idea Π½Π΅Π΄Π°Π²Π½ΠΎ Π²Ρ‹ΡˆΠ΅Π» ΠΏΠ»Π°Π³ΠΈΠ½ https://github.com/JesusFreke/smali/wiki/smalidea, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΏΠΎ заявлСнию Π°Π²Ρ‚ΠΎΡ€Π°, Π΄Π°ΠΆΠ΅ позволяСт ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ‡Π΅Ρ€Π΅Π· ddms (ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ это я, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ Π±ΡƒΠ΄Ρƒ.)

МоТно ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сСбС ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π² Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ apk Π² исходный ΠΊΠΎΠ΄ Π½Π° Java, Π½ΠΎ Π½Π°Π΄ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ с Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π² 99.5% ΠΊΠΎΠ΄ получится Π½Π΅Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΈ Π΅Π³ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² apk. Π’ зависимости ΠΎΡ‚ Ρ„Π°Π·Ρ‹ Π›ΡƒΠ½Ρ‹ ΠΈ ΠΏΠΎΠ³ΠΎΠ΄Ρ‹ Π½Π° ΠœΠ°Ρ€ΡΠ΅, Π² Ρ‚Π°ΠΊΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π΄ΠΈΠΊΠΈΠ΅ конструкции Ρ‚ΠΈΠΏΠ° for (;;) ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. Но ΠΎΠ±Ρ‰ΡƒΡŽ структуру ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΏΠΎΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π°Ρ… smali. Для этого Π½Π°ΠΌ потрСбуСтся dex2jar ΠΎΡ‚ΡΡŽΠ΄Π°: https://sourceforge.net/projects/dex2jar/ ΠΈ jd-gui ΠΎΡ‚ΡΡŽΠ΄Π°: http://jd.benow.ca/

На Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΈΠΌΠ΅Π΅ΠΌ com.example.foobar-1-dex2jar.jar. ЗапускаСм jd-gui ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π² Π½Π΅ΠΌ этот jar:

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½ΡƒΠΆΠ½ΠΎΠ΅ ΠΈ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ Π½Π΅Π½ΡƒΠΆΠ½ΠΎΠ΅, собираСм ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ smali Π² apk:

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌ Π·Π°ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ 4-Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅:

> build-tools\25.0.3\zipalign 4 foobar_unaligned.apk foobar_fixed.apk

Если Π΅Ρ‰Ρ‘ Π½Π΅Ρ‚ своСго keystore, Ρ‚ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ keytool.exe, которая Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав JRE:

Π”Π°Π»Π΅Π΅ подписываСм apk, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сСртификат ΠΈΠ· своСго keystore. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ min-sdk-version, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² исходникС foobar_src\apktool.yml, Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ minSdkVersion:

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡƒΡŽ apk, Π½Π°Π΄ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ссли ΠΎΠ½Π° установлСна, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π» ΠΈ пСрСдСланная вСрсия подписаны Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ.

А ΠΌΠ½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΏΠ»ΡŽΡΠ°Π½Ρƒ

Π΄ΡƒΠΌΠ°ΡŽ Ρ‚ΡƒΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ Ρ‚Π΅Π³ «Ρ€Π΅Π²Π΅Ρ€Ρ-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³».

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ЯндСкс погода

Никогда особо Π½Π΅ парился ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ памяти Π² Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅, Π½ΠΎ Ρ‚ΡƒΡ‚ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ список ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π›ΡƒΡ‡ΡˆΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ

ΠŸΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π», ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ» Π²Ρ€ΠΎΠ΄Π΅ всё Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ. ))

И Ρ‚ΡƒΡ‚, приглядСлся Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ число Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π΅ΡΡ Π½Π° ноль, промахиваСтся ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΡΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π£Ρ„Ρ„Ρ„Ρ„. РасслСдованиС ΠΎΠΊΠΎΠ½Ρ‡Π΅Π½ΠΎ. πŸ™‚

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

ΠΠ²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΡΡ‚ΡŒ

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

НуТСн Π΅Ρ‰Ρ‘ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для ΡƒΡ‡Ρ‘Ρ‚Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Π½Π° ΡƒΠ»ΠΈΡ†Π΅

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π’ΠΎΠΉΡ‚ΠΈ Π² Π°ΠΉΡ‚ΠΈ. Π§Π°ΡΡ‚ΡŒ 5

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠŸΠΈΠΊΠ°Π±Ρƒ! Π”Π°, Π΄Π°.. это ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΠΏΠΈΠΊΠ°Π±ΡƒΡˆΠ½ΠΈΠΊ с кризисом срСднСго возраста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΄Ρ€ΡƒΠ³ осознал ΠΈ понял, Ρ‡Ρ‚ΠΎ с дСтства ΠΌΠ΅Ρ‡Ρ‚Π°Π» Π±Ρ‹Ρ‚ΡŒ программистом. Π”Π°Π²Π½Π΅Π½ΡŒΠΊΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π° ΠΎ ΠΌΠΎΡ‘ΠΌ ΠΏΡƒΡ‚ΠΈ Π² ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΡ€ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Если Π²Π΄Ρ€ΡƒΠ³ Π’Π°ΠΌ интСрСсСн ΠΌΠΎΠΉ ΠΎΠΏΡ‹Ρ‚, Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ срСзы Ρ‚ΡƒΡ‚:

Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅, с Ρ‡Π΅Π³ΠΎ всё Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΎΡΡŒ:

0) УвольнСниС с Π²ΠΎΠ΅Π½Π½ΠΎΠΉ слуТбы ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρƒ

2) Π’Ρ‹ΡΡˆΠ΅Π΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ (Π·Π°ΠΎΡ‡Π½ΠΎΠ΅) ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°»

3) Π’Ρ‹ΡƒΡ‡ΠΈΠ» Java, сСйчас ΠΈΠ·ΡƒΡ‡Π°ΡŽ Kotlin ΠΈ Swift

4) Π•ΡΡ‚ΡŒ нСсколько ΠΊΠ°Ρ€ΠΌΠ°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² Play Market, всё довольно ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎΠ΅, Π½ΠΎ ΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ

5) Π–Π΅Π½Π°Ρ‚, Π΄Π΅Ρ‚Π΅ΠΉ Π½Π΅Ρ‚, ΠΊΠΎΡ‚ Π΅ΡΡ‚ΡŒ

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄Π²Π΅Π΄Ρƒ ΠΈΡ‚ΠΎΠ³ΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ я имСю Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚:

— Π’Ρ‹ΡƒΡ‡Π΅Π½ язык программирования ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ Android всё, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. На любой вопрос ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚, стоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π²Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ.

— На создании собствСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΆΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ. Π”Π΅Π½ΡŒΠ³ΠΈ Π½Π΅ большиС, Π½ΠΎ Π½Π° ΠΆΠΊΡ… ΠΈ Ρ…ΠΎΠ»ΠΎΠ΄ΠΈΠ»ΡŒΠ½ΠΈΠΊ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚. Π”ΠΎΡ…ΠΎΠ΄ постоянно растёт, Ссли Π½Π΅ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ староС.

— 1.000.000 Π·Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ. Π¦ΠΈΡ„Ρ€Ρ‹ Π³ΠΎΡ€Π°Π·Π΄ΠΎ скромнСС. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² суммС Π·Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ ΠΎΠΊΠΎΠ»ΠΎ 240.000, Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² суммС ΠΏΠΎ прилоТСниям ΠΎΠΊΠΎΠ»ΠΎ 83.000

— Ссли ΠΈΠ· 100 ΡΠΊΠ°Ρ‡Π°Π²ΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ 30 Π½Π΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ Π΅Π³ΠΎ, Ρ‚ΠΎ это Π²ΠΏΠΎΠ»Π½Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Π·Π½Π°Ρ‡ΠΈΡ‚ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ!

— Π³Π°ΠΉΠ΄Ρ‹ создания интСрфСйсов Π½Π΅ всСгда Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚. ΠŸΠΎΡ€ΠΎΠΉ ΠΏΠ»ΡŽΠ½ΡƒΠ² Π½Π° Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ «Π·Π°ΠΉΠ΄Ρ‘Ρ‚» людям.

— послС 30 Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π² it ΡƒΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ ΠΌΠΎΠΆΠ½ΠΎ!

Π’ послСднСм своём ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ я собрал вСсь Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ ΠΈ понял, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ стыдно Ρ€ΠΈΡΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ собСсСдованиС. Казалось Π±Ρ‹, всСго лишь Π±Π»ΠΎΠΊΠ½ΠΎΡ‚. Но ΠΌΠ½Π΅ Ρ‚Π°ΠΊ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ дСталями, ΠΈ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ Π½ΠΈΠΌ, Ρ‡Ρ‚ΠΎ я ΠΌΠΎΠ³Ρƒ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ± этом часами. ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΊ созданной Ρ‚ΠΎΠ±ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ‹Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ чувства привязанности ΠΈ симпатии, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ любви ΠΊ своСму ΠΏΠΈΡ‚ΠΎΠΌΡ†Ρƒ. Π‘Ρ‚Ρ€Π°Π½Π½ΠΎ это=)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΠΎ Android мСня Π²ΠΏΠΎΠ»Π½Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΠ»ΠΈ, Ρ‡Π΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ ios. Π’Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ сил Π½Π΅ Ρ…Π²Π°Ρ‚ΠΈΠ»ΠΎ Π½Π° всё, Π±ΡƒΠ΄Ρƒ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ ΠΈΠΌ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ±Ρ‰Π΅Π³ΠΎ развития. НадСюсь Ρ‡Ρ‚ΠΎ ΠΊ вСснС смогу ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎΠ΅.

Π’ ΠΈΡ‚ΠΎΠ³Π΅ Π²Ρ‡Π΅Ρ€Π° ΠΌΠ½Π΅ сдСлали ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° вакансию Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мСня ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ устроило ΠΊΠ°ΠΊ Π² ΠΏΠ»Π°Π½Π΅ Π·ΠΏ, Ρ‚Π°ΠΊ ΠΈ пСрспСктив развития. Π’ΠΏΠ΅Ρ€Π΅Π΄ΠΈ знакомство с ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΌ ΠΈ Π²Ρ…ΠΎΠ΄ Π² ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ. НадСюсь Π·Π°Π΄Π°Ρ‡ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ интСрСсныС, Π° ΠΊΠΎΡ„Π΅ вкусным 😊 Если Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно ΠΈ я ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΡΠΏΡ€Π°Π²Π»ΡŽΡΡŒ с ΠΈΡΠΏΡ‹Ρ‚Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ сроком, Ρ‚ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ подСлюсь впСчатлСниями.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Русская Π°Π·Π±ΡƒΠΊΠ° MΠΎΡ€Π·Π΅ для Андроид

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π’ΠΏΠ΅Ρ‡Π°Ρ‚Π»ΠΈΠ²ΡˆΠΈΡΡŒ произвСдСниями Павла ΠšΡƒΡ‡Π΅Ρ€Π° Ρ€Π΅ΡˆΠΈΠ» ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ морзянку.

Π”Π° ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ морзянка всСгда ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ Π³ΡƒΠ΄ΠΊΠΎΠΌ автомобиля ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ΅ΡˆΠ΅Ρ…ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎ Π½Π΅Π³ΠΎ Π΄ΡƒΠΌΠ°Π΅ΡˆΡŒ. Или ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠΌΡƒ Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ ΠΌΠΎΡ€Π³Π°Π½ΠΈΠ΅ΠΌ Π³Π»Π°Π· ΠΈΠ»ΠΈ ΠΏΠΎΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Ρ€ΡƒΠΊΠΈ ΠΈΠ»ΠΈ покашливаниСм.

ΠΠ°ΡˆΡ‘Π» Π½Π΅ΠΏΠ»ΠΎΡ…ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ для PC. Но Π·Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ лишний Ρ€Π°Π· ΡΠ΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΠ³Π΄Π° ΠΈ стал ΠΈΡΠΊΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ для обучСния русской Π°Π·Π±ΡƒΠΊΠ΅ ΠΌΠΎΡ€Π·Π΅. Π’Ρ‹ΡΡΠ½ΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ. Π’.Π΅. Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ якобы Π΅ΡΡ‚ΡŒ, Π½ΠΎ ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ это ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈΡΡŒ ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅ΠΉΠ½Π΅Ρ€Ρ‹ для ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ ΡƒΠΌΠ΅Π΅ΡˆΡŒ ΠΈΠ»ΠΈ справочники ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎ Ρ‚ΠΈΠΏΠ° ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠΌ ваш тСкст Π² морзянку.

Π― Π½Π΅ программист, Π½ΠΎ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΊΠ°ΠΊ Ρ‚ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Π―Π²Π΅ ΠΏΠΎΠ΄ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΊΡƒ для своих Π΄Π΅Ρ‚Π΅ΠΉ для обучСния ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ ΠΈ ΠΈΠ³Ρ€Π΅ Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ. И Π²Ρ€ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ. Ну Π΄ΡƒΠΌΠ°ΡŽ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΡŽ ΠΈ Ρ‚ΡƒΡ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π΄Π΅Π»ΠΎ Ρ‚ΠΎ Π½Π΅Ρ…ΠΈΡ‚Ρ€ΠΎΠ΅. Оказалось, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°ΠΆΠ΅ Ρ…ΠΈΡ‚Ρ€ΠΎΠ΅, ΠΈΠ±ΠΎ эта Π―Π²Π° ΠΏΠΎΠ΄ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Π½Π΅ ΡƒΠΌΠ΅Π»Π° Π΄Π°ΠΆΠ΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π» ΠΌΠΎΠΉ ZX Spectrum Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ Π²Π΅ΠΊΠ΅. Π’Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ частоту Π·Π²ΡƒΠΊΠ° ΠΈ Π΅Π³ΠΎ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ. Π’ΡƒΡ‚ ΠΆΠ΅ для получСния Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ Π·Π²ΡƒΠΊΠ° ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌ синусоиду с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ»Π΅Π±Π°Ρ‚ΡŒΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊ устройства.

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π΄ΡƒΠΌΠ°Π» ΡΠΏΡ€Π°Π²Π»ΡŽΡΡŒ Π·Π° нСсколько Π²Π΅Ρ‡Π΅Ρ€ΠΎΠ², Π½ΠΎ шли Π΄Π½ΠΈ, Π½Π΅Π΄Π΅Π»ΠΈ, мСсяцы. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€ΠΎΠΆΠ΄Π°Π»Π°ΡΡŒ Π² ΠΌΡƒΠΊΠ°Ρ…, справочного ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π½Π° Π―Π²Π΅ ΠΏΠΎΠ΄ Андроид Π½Π° русском Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ½ΠΎ ΠΌΠ°Π»ΠΎ, Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ… ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΏΠ»ΠΎΡ…ΠΎ. И ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡŽΡΡŒ, Ρ‡Ρ‚ΠΎ я Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ программист. Π’ ΠΈΡ‚ΠΎΠ³Π΅, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠ΄Π΅Π»Π°Π», Ρ‚ΠΎ понял, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΊΠ΅ ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π³Ρ€Π΅Ρ…, ΠΈΠ±ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² Ρ‚ΠΎ Π½Π΅Ρ‚. РСшил ΡƒΠΆ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Ρ‰Ρ‘ нСсколько Π²Π΅Ρ‡Π΅Ρ€ΠΎΠ² Π½Π° ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π½ΠΈΠ΅ для всСобщСго использования Π½Π° Google Play ΠΈ 4PDA.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ бСсплатна ΠΈ Π½Π΅ содСрТит Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹.

ΠŸΠΎΡΡ‚Π°ΠΏΠ½ΠΎΠ΅ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠΎΠ² Π°Π·Π±ΡƒΠΊΠΈ ΠœΠΎΡ€Π·Π΅ Π½Π° ΠΏΡ€ΠΈΡ‘ΠΌ ΠΈ Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ΅ Π±Π»ΠΈΠ·ΠΊΠΎΠΉ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ΅ Π”ΠžΠ‘ΠΠΠ€ Π‘Π‘Π‘Π . ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π² качСствС ΠΈΠ³Ρ€Ρ‹ ΠΈΠ· Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΠΈ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ с ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ.

ПослС прохоТдСния дСсяти ΡƒΡ€ΠΎΠΊΠΎΠ² останСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ, Π½ΠΎ ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ ΠΏΡ€ΠΈΡ‘ΠΌΠ° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π±ΡƒΠΊΠ² ΠΈ Ρ†ΠΈΡ„Ρ€ посрСдством Π°Π·Π±ΡƒΠΊΠΈ ΠœΠΎΡ€Π·Π΅. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΡ‘ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… символов Π΄ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΌΠ°.

Π˜Π·ΡƒΡ‡Π°Ρ‚ΡŒ морзянку с использованиСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ΠΊΠΎΠ³Π΄Π°, Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ всСгда ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π°ΡƒΡˆΠ½ΠΈΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰ΠΈΠΌ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Android прилоТСния ΠΎΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° ΠΈ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

Для Π½Π°Ρ‡Π°Π»ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ истории.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ я ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΈΡ‚Π°ΠΉΡ„ΠΎΠ½, Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ остановился Π½Π° Lewa. Но Π³Π»Π°Π·Π° постоянно ΠΌΠΎΠ·ΠΎΠ»ΠΈΠ» ΠΎΠ΄ΠΈΠ½ Π΅Π΅ Π½Π΅Π΄ΠΎΡ‡Π΅Ρ‚ β€” список ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅ быстрая навигация Π½Π° английском.
ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, поэтому Π½Π°Ρ‡Π°Π» ΠΊΠΎΠΏΠ°Ρ‚ΡŒ сам.

Набор инструмСнтов

ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ

Π˜Ρ‚Π°ΠΊ, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π°Π΄ΠΎ это Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ нашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, для этого всС apk Π½Π°Π΄ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΠ°ΠΏΠΊΡƒ с apktools. ВсС apk ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π»Π΅ΠΆΠ°Π»ΠΈ Π² /system/framework/ Π½Π°Π΄ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΏΠΎΠ΄Ρ†Π΅ΠΏΠΈΡ‚ΡŒ ΠΌΡ‹ΡˆΡŒΡŽ ΠΈ пСрСнСсти Π½Π° apktool-if.cmd Ρ‚Π΅ΠΌ самым ΠΎΡ‚ΠΊΡ€Ρ‹Π² ΠΈΡ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого bat’Π½ΠΈΠΊΠ°. PIM.apk Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apktool-d.cmd. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ с распакованным ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠ΄

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ β€” Ρ‡Ρ‚ΠΎ ΠΈ Π³Π΄Π΅ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΉ список ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈΠ·ΠΎΠ±ΠΈΠ»ΡƒΠ΅Ρ‚ русскими ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π° Π² быстротой Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΎΠ΄Π½ΠΈ английскиС Π±ΡƒΠΊΠ²Ρ‹ Ρ€Π΅Π·ΠΎΠ½Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠΊΠ²Ρ‹ просто ТСстко Π·Π°Π±ΠΈΡ‚Ρ‹ Π³Π΄Π΅ Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π΅, Π° Π½Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ динамичСски исходя ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° Ρƒ вас Π² ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°Ρ…. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² ΠΏΠ°ΠΏΠΊΠ΅ res, Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅ Π² res\values\arrays.xml Π½ΠΎ Π² нашСм случаС Ρ‚Π°ΠΌ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π³ΠΎ Π½Π΅Ρ‚.
Π”ΡƒΠΌΠ°Π΅ΠΌ дальшС β€” Ρ€Π°Π· Π½Π΅Ρ‚ Ρ‚Π°ΠΌ, Π·Π½Π°Ρ‡ΠΈΡ‚ Π΅ΡΡ‚ΡŒ Π³Π΄Π΅ Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π΅. Π’Π΅ΡΡŒ ΠΊΠΎΠ΄ находится Π² ΠΏΠ°ΠΏΠ΅ smali, ΠΏΠΎ сути Ρ‚Π°ΠΌ Π½Π΅ исходный ΠΊΠΎΠ΄ Π° Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π‘Π°ΠΉΡ‚-ΠΊΠΎΠ΄, ΠΈ Π΅Π³ΠΎ Ρ‚Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ. Π’Π°ΠΊ Π³Π΄Π΅ ΠΆΠ΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ? Π― поступил Ρ‚Π°ΠΊ, Π² ΠΏΠ°ΠΏΠΊΠ΅ res\layout\ хранятся всС «окошки» нашСго прилоТСния, Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π°Π΄ΠΎ находится Π³Π΄Π΅-Ρ‚ΠΎ Π² спискС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², поэтому я Π½Π°ΠΎΠ±ΡƒΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Π» contact_list_content.xml ΠΈ Π½Π°Ρ‡Π°Π» ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ.

Π’Π°ΠΌ мСня заинтСрСсовала строчка
. Π§Ρ‚ΠΎ это Π·Π° индСксСр Ρ‚Π°ΠΊΠΎΠΉ?? Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ

Π’ΡƒΡ‚ ΠΈ Ρ‚Π°ΠΊ всС понятно, мСняСм Π±ΡƒΠΊΠ²Ρ‹ Π½Π° русскиС, ΠΈ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ русских Π±ΡƒΠΊΠ² большС придСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ нСсколько строк Ρ‚ΠΈΠΏΠ°

const/16 v1, 0x1b это порядковый Π½ΠΎΠΌΠ΅Ρ€ Π±ΡƒΠΊΠ²Ρ‹ ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ расти. Π’Π°ΠΊ ΠΆΠ΅ Π² Π½Π°Ρ‡Π°Π»Π΅ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ стоку

Π­Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ всСго массива, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ нСсколько Π±ΡƒΠΊΠ² Π΅Π΅ Π½Π°ΠΌ Ρ‚ΠΎΠΆΠ΅ Π½Π°Π΄ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ. Π― Π΄ΠΎΠ±Π°Π²ΠΈΠ» 3 Π±ΡƒΠΊΠ²Ρ‹ ΠΏΠΎ этому Π² ΠΌΠΎΠ΅ΠΌ случаС Π΅Π΅ Π½Π°Π΄ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π°

Π’ ΠΈΡ‚ΠΎΠ³Π΅ Ρƒ мСня получился ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

«\u042f» β€” это Β«ΡŽΠ½ΠΈΠΊΠΎΠ΄Ρ‹Β» Π½Π°ΡˆΠΈΡ… Π±ΡƒΠΊΠ², Ρ‚Π°ΠΊ Π½Π°Π΄Π΅ΠΆΠ½Π΅ΠΉ)

ПослС этого ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ пСрСтянув ΠΏΠ°ΠΏΠΊΡƒ PIM Π½Π° apktool-b.cmd, Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя появится PIM\dist\PIM.apk

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠΌ PIM.apk своСго Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ. ΠœΠΎΠ³Ρƒ лишь ΡΠΊΠ·Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡΡ ΠΌΠΎΠΈΠΌ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΌ, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΠ² Π² Π½Π΅ΠΌ PIM.apk Π½Π° свой.

PROFIT?

НС совсСм… Π”Π°, Π±ΡƒΠΊΠ²Ρ‹ русскиС Π½ΠΎ поиск Ρ‚ΠΎ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚!
Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ дальшС Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ AlphabetFastIndexer.smali
Ρ‚ΡƒΡ‚ большС Π½ΠΈΡ‡Π΅Π³ΠΎ интСрСсного ΠΊΡ€ΠΎΠΌΠ΅

Π₯отя ΠΏΠΎ ΠΈΠ΄Π΅Π΅ ΠΎΠ½ ΠΊ нашСй ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ Π½Π΅ относится я всС ΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅. public static abstract Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ этот интСрфСйс Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π³Π΄Π΅ Ρ‚ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π˜Ρ‰Π΅ΠΌ поиском ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠ°Ρ€Ρƒ Ρ„Π°ΠΉΠ»ΠΎΠ² Π³Π΄Π΅ встрСчаСтся OnTouchingLetterChangedListener:
PIM\smali\com\lewa\PIM\contacts\list\ContactEntryListFragment.smali
PIM\smali\com\lewa\PIM\mms\choiceContacts\MmsChoicePhoneNumbersContacts.smali

Они достаточно Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ поэтому ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ нас интСрСсуСт

Как ΠΈ ΠΎΡ‚ΠΊΡƒΠ΄Π° вызываСтся это функция я Π½Π΅ понял Π½ΠΎ Ρ„Π°ΠΊΡ‚ β€” ΠΎΠ½Π° собираСт ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ всС Ρ‡Ρ‚ΠΎ Π½Π΅ относится ΠΊ английским Π±ΡƒΠΊΠ²Π°ΠΌ ΠΏΡ€ΠΈΡ€Π°Π²Π½Π΅Π²Π°Π΅Ρ‚ ΠΊ # И поэтому Ρƒ нас Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ работаСт… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ эта функция находится Π² Β«ΠΏΠΎΠ΄Ρ„Π°ΠΉΠ»Π΅Β» PIM\smali\com\lewa\PIM\contacts\list\ContactEntryListFragment$3.smali

Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ участок

0x41 ΠΈ 0x5a это Π±ΡƒΠΊΠ²Ρ‹ ‘A’ ΠΈ ‘Z’ ΠΈΡ… Π½Π°Π΄ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π° русскиС:

0x61 β€” ‘a’
0x7a β€” ‘z’
МСняСм

Π’ Ρ„Π°ΠΉΠ»Π΅ MmsChoicePhoneNumbersContacts.smali ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ такая ΠΆΠ΅ история

Π‘ΠΎΠ±ΠΈΡ€Π°Π΅ΠΌ это Π΄Π΅Π»ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΈ Π·Π°ΠΏΠΈΡ…ΠΈΠ²Π°Π΅ΠΌ Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½. Π’ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚!
ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄
Бпасибо всСм за вниманиС!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ВскрываСм, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈ Π·Π°ΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Π΅ΠΌ Android-прилоТСния

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ

Иногда Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прилоТСния Π½Π° Android Ρ‡Π΅ΠΌ-Ρ‚ΠΎ Π½Π΅ ΡƒΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ привСсти Π½Π°Π·ΠΎΠΉΠ»ΠΈΠ²ΡƒΡŽ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ. А Ρ‚ΠΎ Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΈ Ρ‚Π°ΠΊ β€” всСм Ρ…ΠΎΡ€ΠΎΡˆΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Π΄Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π² Π½Π΅ΠΉ ΠΈΠ»ΠΈ ΠΊΡ€ΠΈΠ²ΠΎΠΉ, ΠΈΠ»ΠΈ вовсС отсутствуСт. Или, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ‚Ρ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ, Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ возмоТности Π½Π΅Ρ‚. Как ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ?

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ APK с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, рассмотрим Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру, дизассСмблируСм ΠΈ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ внСсти Π² прилоТСния нСсколько ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ принСсти Π½Π°ΠΌ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ Π²Ρ‹Π³ΠΎΠ΄Ρƒ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ всС это ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ хотя Π±Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ знания языка Java, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΈΡˆΡƒΡ‚ΡΡ прилоТСния для Android, ΠΈ языка XML, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Android повсСмСстно β€” ΠΎΡ‚ описания самого прилоТСния ΠΈ Π΅Π³ΠΎ ΠΏΡ€Π°Π² доступа Π΄ΠΎ хранСния строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° экран. Π’Π°ΠΊΠΆΠ΅ понадобится ΡƒΠΌΠ΅Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ со спСциализированным ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΌ софтом.

Π˜Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ прСдставляСт собой ΠΏΠ°ΠΊΠ΅Ρ‚ APK, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ распространяСтся Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ вСсь софт для Android?

ДСкомпиляция ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с дизассСмблированным ΠΊΠΎΠ΄ΠΎΠΌ прилоТСния, ΠΎΠ΄Π½Π°ΠΊΠΎ Ссли Π² большиС прилоТСния Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ измСнСния, Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠ΄Π΅ smali Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС. К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ dex Π² Java-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…ΠΎΡ‚ΡŒ ΠΈ Π½Π΅ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ, Π½ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΈΠΌ для чтСния ΠΈ понимания Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это, Π½Π°ΠΌ понадобятся Π΄Π²Π° инструмСнта:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… слСдуСт Ρ‚Π°ΠΊ. Π‘Π½Π°Ρ‡Π°Π»Π° запускаСм dex2jar, указывая Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ apk-ΠΏΠ°ΠΊΠ΅Ρ‚Π°:

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ появится Java-ΠΏΠ°ΠΊΠ΅Ρ‚ mail.jar, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π² jd-gui для просмотра Java-ΠΊΠΎΠ΄Π°.

Устройство APK-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ ΠΈΡ… ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅

ΠŸΠ°ΠΊΠ΅Ρ‚ прилоТСния Android, ΠΏΠΎ сути, являСтся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ZIP-Ρ„Π°ΠΉΠ»ΠΎΠΌ, для просмотра содСрТимого ΠΈ распаковки ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… инструмСнтов Π½Π΅ трСбуСтся. Достаточно ΠΈΠΌΠ΅Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²Π°Ρ‚ΠΎΡ€ β€” 7zip для Windows ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ unzip Π² Linux. Но это Ρ‡Ρ‚ΠΎ касаСтся ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ. А Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ? Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΆΠ΅ Ρƒ нас Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС такая структура:

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π΅ΡΡ‚ΡŒ Ссли Π½Π΅ Π²ΠΎ всСх, Ρ‚ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Π² Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΌ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ APK. Однако стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Π΅Ρ‰Π΅ нСсколько Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ распространСнных Ρ„Π°ΠΉΠ»ΠΎΠ²/ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Π­Ρ‚ΠΎΡ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ ΠΈΠ³Ρ€, помСщая Ρ‚ΡƒΠ΄Π° Π΄Π²ΠΈΠΆΠΎΠΊ ΠΈΠ³Ρ€Ρ‹, написанный Π½Π° C/C++, Π° Ρ‚Π°ΠΊΠΆΠ΅ создатСли Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Google Chrome). Π‘ устройством Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ. Но ΠΊΠ°ΠΊ ΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ сам Ρ„Π°ΠΉΠ» ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎ прилоТСния? ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±Π΅Π· Ρ€ΡƒΡ‚Π° с устройства Π·Π°Π±Ρ€Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ APK Π½Π΅ прСдставляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ (ΠΎΠ½ΠΈ Π»Π΅ΠΆΠ°Ρ‚ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /data/app), Π° Ρ€ΡƒΡ‚ΠΈΡ‚ΡŒ Π½Π΅ всСгда цСлСсообразно, имССтся ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‚Ρ€ΠΈ способа ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» прилоТСния Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€:

Какой ΠΈΠ· Π½ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ β€” Π΄Π΅Π»ΠΎ вкуса; ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ прилоТСния, поэтому опишСм использованиС Real APK Leecher, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‡Ρ‚ΠΎ написан ΠΎΠ½ Π½Π° Java ΠΈ, соотвСтствСнно, Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…ΠΎΡ‚ΡŒ Π² Π²ΠΈΠ½Π΄Π΅, Ρ…ΠΎΡ‚ΡŒ Π² никсах.

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Ρ€ΠΈ поля: Email, Password ΠΈ Device ID β€” ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ язык. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° β€” e-mail ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Ρ‚Π²ΠΎΠ΅Π³ΠΎ Π³ΡƒΠ³Π»ΠΎΠ°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ Π½Π° устройствС. Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΆΠ΅ являСтся ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ устройства, ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ, Π½Π°Π±Ρ€Π°Π² Π½Π° Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ½Π°Π±ΠΈΡ€Π°Ρ‚Π΅Π»Π΅ ΠΊΠΎΠ΄ ##8255## ΠΈ Π·Π°Ρ‚Π΅ΠΌ найдя строку Device ID. ΠŸΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π°Π΄ΠΎ ввСсти Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ID Π±Π΅Π· прСфикса android-.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Настройка Real APK Leecher

Π₯Π°ΠΊΠ΅Ρ€ #170. ΠœΠ°Π»Π²Π°Ρ€ΡŒ для OS X

ПослС заполнСния ΠΈ сохранСния Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ выскакиваСт сообщСниС Β«Error while connecting to serverΒ». Оно Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΊ Google Play, поэтому смСло Π΅Π³ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠΉ ΠΈ ΠΈΡ‰ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠ΅ тСбя ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈ модификация

Допустим, Ρ‚Ρ‹ нашСл ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠΉ тСбя ΠΏΠ°ΠΊΠ΅Ρ‚, скачал, распаковал… ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ просмотра ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ XML-Ρ„Π°ΠΉΠ»Π° с ΡƒΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Π½Π΅ тСкстовый. Π§Π΅ΠΌ ΠΆΠ΅ Π΅Π³ΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ? НСуТСли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ SDK? НСт, SDK ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ вовсС Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. На самом Π΄Π΅Π»Π΅ для всСх шагов ΠΏΠΎ распаковкС, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² APK Π½ΡƒΠΆΠ½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ инструмСнты:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС эти инструмСнты ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½ΠΎ это Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ, поэтому Π»ΡƒΡ‡ΡˆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ высокоуровнСвым софтом, построСнным Π½Π° ΠΈΡ… основС. Если Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΡˆΡŒ Π² Linux ΠΈΠ»ΠΈ Mac OS X, Ρ‚ΠΎ Ρ‚ΡƒΡ‚ Π΅ΡΡ‚ΡŒ инструмСнт ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ apktool. Он позволяСт Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ рСсурсы Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π²ΠΈΠ΄ (Π² Ρ‚ΠΎΠΌ числС Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ XML- ΠΈ arsc-Ρ„Π°ΠΉΠ»Ρ‹), ΠΏΠ΅Ρ€Π΅ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌΠΈ рСсурсами, Π½ΠΎ Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ signer придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° написана Π½Π° Java, Π΅Π΅ установка достаточно нСстандартна. Π‘Π½Π°Ρ‡Π°Π»Π° слСдуСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ сам jar-Ρ„Π°ΠΉΠ»:

Π”Π°Π»Π΅Π΅ Π½Π°ΠΌ понадобится скрипт-обвязка для запуска apktool (ΠΎΠ½, кстати, доступСн ΠΈ для Windows), Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π² сСбя Π΅Ρ‰Π΅ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ aapt, которая понадобится для Π·Π°ΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°:

Π”Π°Π»Π΅Π΅ просто сваливаСм содСрТимоС ΠΎΠ±ΠΎΠΈΡ… Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³

Если ΠΆΠ΅ Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΡˆΡŒ Π² Windows, Ρ‚ΠΎ для Π½Π΅Π΅ Π΅ΡΡ‚ΡŒ прСвосходный инструмСнт ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌVirtuous Ten Studio, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ Π°ΠΊΠΊΡƒΠΌΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π² сСбС всС эти инструмСнты (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сам apktool), Π½ΠΎ вмСсто CLI-интСрфСйса прСдоставляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятный графичСский интСрфСйс, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ распаковкС, Π΄ΠΈΠ·Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ дСкомпиляции Π² нСсколько ΠΊΠ»ΠΈΠΊΠΎΠ². Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ этот Donation-ware, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ окошки с ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π»ΠΈΡ†Π΅Π½Π·ΠΈΡŽ, Π½ΠΎ это, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΠΏΠ΅Ρ‚ΡŒ. ΠžΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ смысла, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² интСрфСйсС ΠΌΠΎΠΆΠ½ΠΎ Π·Π° нСсколько ΠΌΠΈΠ½ΡƒΡ‚. А Π²ΠΎΡ‚ apktool, вслСдствиС Π΅Π³ΠΎ консольной ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹, слСдуСт ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Π˜ΠΌΠΏΠΎΡ€Ρ‚ APK Π² Virtuous Ten Studio

Рассмотрим ΠΎΠΏΡ†ΠΈΠΈ apktool. Если Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‚ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ основныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: d (decode), b (build) ΠΈ if (install framework). Если с ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ двумя ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ всС понятно, Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Ρ€Π΅Ρ‚ΡŒΡ, условный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€? Она распаковываСт ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ UI-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Ρ‚Ρ‹ ΠΏΡ€Π΅ΠΏΠ°Ρ€ΠΈΡ€ΡƒΠ΅ΡˆΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ систСмный ΠΏΠ°ΠΊΠ΅Ρ‚.

Рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ интСрСсныС ΠΎΠΏΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ apktool ΠΎΡ‡Π΅Π½ΡŒ просто, для этого достаточно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ APK, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ПослС этого Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ mail появятся всС ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΈ дизассСмблированныС Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

ΠŸΡ€Π΅ΠΏΠ°Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ

ВСория β€” это, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π°, Ссли ΠΌΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с распакованным ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ? ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ с пользой для сСбя, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ софтину Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»Π° Π½Π°ΠΌ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ. Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡƒΡΡ‚ΡŒ это Π±ΡƒΠ΄Π΅Ρ‚ Virtual Torch β€” Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΊΠ΅Π». Для нас эта софтина ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ идСально, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΠ΄ завязку Π½Π°Π±ΠΈΡ‚Π° Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅ΠΉ Ρ€Π΅ΠΊΠ»Π°ΠΌΠΎΠΉ ΠΈ ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ достаточно проста, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒΡΡ Π² дСбрях ΠΊΠΎΠ΄Π°.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Поиск ΠΊΠΎΠ΄Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹ Π² jd-gui

ПослС этого Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ com.kauf.particle.virtualtorch появится Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ, ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ Π½Π° описанноС Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅, Π½ΠΎ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠΌ smali вмСсто dex-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠΌ apktool.yml. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ содСрТит дизассСмблированный ΠΊΠΎΠ΄ исполняСмого dex-Ρ„Π°ΠΉΠ»Π° прилоТСния, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” ΡΠ»ΡƒΠΆΠ΅Π±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ apktool для сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ мСсто, ΠΊΡƒΠ΄Π° ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ, β€” это, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, AndroidManifest.xml. И здСсь ΠΌΡ‹ сразу встрСчаСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку:

НСтрудно Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° прСдоставлСниС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ Π½Π° использованиС ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-соСдинСния. По сути, Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ просто ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹, Π½Π°ΠΌ, скорСС всСго, достаточно Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. ΠŸΠΎΠΏΡ‹Ρ‚Π°Π΅ΠΌΡΡ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. УдаляСм ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ строку ΠΈ ΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ софтину с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apktool:

Π’ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ com.kauf.particle.virtualtorch/build/ появится Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ APK-Ρ„Π°ΠΉΠ». Однако ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π΅ получится, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сумм Ρ„Π°ΠΉΠ»ΠΎΠ² (Π² Π½Π΅ΠΌ просто Π½Π΅Ρ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° META-INF/). ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ apk-signer. Запустили. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ состоит ΠΈΠ· Π΄Π²ΡƒΡ… Π²ΠΊΠ»Π°Π΄ΠΎΠΊ β€” Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ (Key Generator) создаСм ΠΊΠ»ΡŽΡ‡ΠΈ, Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ (APK Signer) подписываСм. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ наш ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡, заполняСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ поля:

ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ поля, Π² ΠΎΠ±Ρ‰Π΅ΠΌ-Ρ‚ΠΎ, Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ β€” Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎ.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π° Π² apk-signer

WARNING

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apk-signer, Ρ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Android SDK ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Π½Π΅Π³ΠΎ Π² настройках прилоТСния.

Вся информация прСдоставлСна ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… цСлях. Ни рСдакция, Π½ΠΈ Π°Π²Ρ‚ΠΎΡ€ Π½Π΅ нСсут отвСтствСнности Π·Π° любой Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ Π²Ρ€Π΅Π΄, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°ΠΌΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ этим ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ APK. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ APK Signer Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ сгСнСрированный Ρ„Π°ΠΉΠ», Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, алиас ΠΊΠ»ΡŽΡ‡Π° ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΊ Π½Π΅ΠΌΡƒ, Π·Π°Ρ‚Π΅ΠΌ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Ρ„Π°ΠΉΠ» APK ΠΈ смСло ΠΆΠΌΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«SignΒ». Если всС ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, ΠΏΠ°ΠΊΠ΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ подписан.

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ подписали ΠΏΠ°ΠΊΠ΅Ρ‚ нашим собствСнным ΠΊΠ»ΡŽΡ‡ΠΎΠΌ, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒ с ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ софтину Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Цифровая подпись Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ стороннСму софту, поэтому Ссли Ρ‚Ρ‹ занимаСшься ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ систСмных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /system/app/, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

ПослС этого скидываСм ΠΏΠ°ΠΊΠ΅Ρ‚ Π½Π° смартфон, устанавливаСм ΠΈ запускаСм. Вуаля, Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° ΠΏΡ€ΠΎΠΏΠ°Π»Π°! ВмСсто Π½Π΅Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, появилось сообщСниС, Ρ‡Ρ‚ΠΎ Ρƒ нас Π½Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° ΠΈΠ»ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. По ΠΈΠ΄Π΅Π΅, этого ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ ΠΈ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ, Π½ΠΎ сообщСниС выглядит Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅, Π΄Π° ΠΈ, Ссли чСстно, Π½Π°ΠΌ просто ΠΏΠΎΠ²Π΅Π·Π»ΠΎ с Ρ‚ΡƒΠΏΡ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ написанная софтина, скорСС всСго, ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ свои полномочия ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-соСдинСния ΠΈ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС просто откаТСтся Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ. Как Π±Ρ‹Ρ‚ΡŒ Π² этом случаС? ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ классы для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ этих классов Π²ΠΎ врСмя запуска прилоТСния ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π΅Π³ΠΎ «активностСй» (ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎ говоря, экранов прилоТСния). ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ эти классы. ИдСм Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ smali, Π΄Π°Π»Π΅Π΅ com (Π² org Π»Π΅ΠΆΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ открытая графичСская Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° cocos2d), Π΄Π°Π»Π΅Π΅ kauf (ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΡƒΠ΄Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это имя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ Ρ‚Π°ΠΌ Π»Π΅ΠΆΠΈΡ‚ вСсь Π΅Π³ΠΎ ΠΊΠΎΠ΄) β€” ΠΈ Π²ΠΎΡ‚ ΠΎΠ½, ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ marketing. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊΡƒΡ‡Ρƒ Ρ„Π°ΠΉΠ»ΠΎΠ² с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ smali. Π­Ρ‚ΠΎ классы, ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ ΠΈΠ· Π½ΠΈΡ… класс Ad.smali, ΠΏΠΎ названию ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ.

ΠœΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π½ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΡƒΠΏΠΎ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹ Π»ΡŽΠ±Ρ‹Ρ… Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ· самого прилоТСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° marketing ΠΈ ΠΈΠ΄Π΅ΠΌ Π² сосСдний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ particle, Π° Π·Π°Ρ‚Π΅ΠΌ Π² virtualtorch. Особого внимания здСсь заслуТиваСт Ρ„Π°ΠΉΠ» MainActivity.smali. Π­Ρ‚ΠΎ стандартный для Android класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаСтся Android SDK ΠΈ устанавливаСтся Π² качСствС Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π°Π½Π°Π»ΠΎΠ³ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main Π² Π‘ΠΈ). ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

Π’Π½ΡƒΡ‚Ρ€ΠΈ находится ΠΊΠΎΠ΄ smali (мСстный ассСмблСр). Он довольно Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΈ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ΠΉ для чтСния Π² силу своСй Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹, поэтому ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π΅Π³ΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ, Π° просто Π½Π°ΠΉΠ΄Π΅ΠΌ всС упоминания класса Ad Π² ΠΊΠΎΠ΄Π΅ ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈΡ…. Π’Π±ΠΈΠ²Π°Π΅ΠΌ строку Β«AdΒ» Π² поискС ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π½Π° строку 25:

Π—Π΄Π΅ΡΡŒ создаСтся ΠΏΠΎΠ»Π΅ ad для хранСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса Ad. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ установки Π·Π½Π°ΠΊΠ° ### ΠΏΠ΅Ρ€Π΅Π΄ строкой. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ поиск. Π‘Ρ‚Ρ€ΠΎΠΊΠ° 423:

Π—Π΄Π΅ΡΡŒ происходит созданиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ поиск ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π² строках 433, 435, 466, 468, 738, 740, 800 ΠΈ 802 обращСния ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ класса Ad. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ. Π’Ρ€ΠΎΠ΄Π΅ всС. БохраняСм. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹. Для чистоты экспСримСнта Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ ΡƒΠ΄Π°Π»Π΅Π½Π½ΡƒΡŽ ΠΈΠ· AndroidManifest.xml строку, собираСм ΠΏΠ°ΠΊΠ΅Ρ‚, подписываСм ΠΈ устанавливаСм.

ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Наш ΠΏΠΎΠ΄ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ ΠΊΡ€ΠΎΠ»ΠΈΠΊ. Π’ΠΈΠ΄Π½Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄ Он ΠΆΠ΅, Π½ΠΎ ΡƒΠΆΠ΅ Π±Π΅Π· Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹

Оп-ΠΏΠ°! Π Π΅ΠΊΠ»Π°ΠΌΠ° ΠΏΡ€ΠΎΠΏΠ°Π»Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния, Π½ΠΎ ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π² Π³Π»Π°Π²Π½ΠΎΠΌ мСню, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠΎΠ³Π΄Π° запускаСм софтину. Π’Π°ΠΊ, ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅, Π½ΠΎ вСдь Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° β€” это класс MainActivity, Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° ΠΏΡ€ΠΎΠΏΠ°Π»Π° Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния, Π½ΠΎ ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π² Π³Π»Π°Π²Π½ΠΎΠΌ мСню, Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° другая? Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΈΠ½Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π°, вновь ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» AndroidManifest.xml. И Π΄Π°, Π² Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ строки:

Они говорят Π½Π°ΠΌ (ΠΈ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½Π΅Π΅, Π°Π½Π΄Ρ€ΠΎΠΈΠ΄Ρƒ) ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Start Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΈΠ½Ρ‚Π΅Π½Ρ‚Π° (события) android.intent.action.MAIN ΠΈΠ· ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ android.intent.category.LAUNCHER. Π­Ρ‚ΠΎ событиС гСнСрируСтся ΠΏΡ€ΠΈ Ρ‚Π°ΠΏΠ΅ Π½Π° ΠΈΠΊΠΎΠ½ΠΊΡƒ прилоТСния Π² Π»Π°Π½Ρ‡Π΅Ρ€Π΅, поэтому ΠΎΠ½ΠΎ ΠΈ опрСдСляСт Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π°, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ класс Start. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, программист сначала написал ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню, Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π° Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±Ρ‹Π» стандартный класс MainActivity, Π° Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ (Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ), содСрТащСС мСню ΠΈ описанноС Π² классС Start, ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ сдСлал Π΅Π³ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π°.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» Start.smali ΠΈ вновь ΠΈΡ‰Π΅ΠΌ строку Β«AdΒ», Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π² строках 153 ΠΈ 155 ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ класса FirstAd. Он Ρ‚ΠΎΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π² исходниках ΠΈ, судя ΠΏΠΎ названию, ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΏΠΎΠΊΠ°Π· объявлСний Π½Π° Π³Π»Π°Π²Π½ΠΎΠΌ экранС. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ дальшС, ΠΈΠ΄Π΅Ρ‚ созданиС экзСмпляра класса FirstAd ΠΈ ΠΈΠ½Ρ‚Π΅Π½Ρ‚Π°, ΠΏΠΎ контСксту ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ этому экзСмпляру, Π° дальшС ΠΌΠ΅Ρ‚ΠΊΠ° cond_10, условный ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ осущСствляСтся Π°ΠΊΠΊΡƒΡ€Π°Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ созданиСм экзСмпляра класса:

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ случайном ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ вычисляСт, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΌ экранС, ΠΈ, Ссли Π½Π΅Ρ‚, пСрСскакиваСт сразу Π½Π° cond_10. Ок, упростим Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΠΌ условный ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° бСзусловный:

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠΉ FirstAd Π² ΠΊΠΎΠ΄Π΅ Π½Π΅Ρ‚, поэтому Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΈ вновь собираСм наш Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΊΠ΅Π» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apktool. ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ Π½Π° смартфон, устанавливаСм, запускаСм. Вуаля, вся Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° исчСзла, с Ρ‡Π΅ΠΌ нас всСх ΠΈ поздравляСм.

Π˜Ρ‚ΠΎΠ³ΠΈ

Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ лишь ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ вскрытия ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π—Π° ΠΊΠ°Π΄Ρ€ΠΎΠΌ ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ вопросы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ снятиС Π·Π°Ρ‰ΠΈΡ‚Ρ‹, Ρ€Π°Π·Π±ΠΎΡ€ обфусцированного ΠΊΠΎΠ΄Π°, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΈ Π·Π°ΠΌΠ΅Π½Π° рСсурсов прилоТСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ модификация ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, написанных с использованиСм Android NDK. Однако, имСя Π±Π°Π·ΠΎΠ²Ρ‹Π΅ знания, Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π²ΠΎ всСм этом β€” лишь вопрос Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *