ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅

DroidScript – простой ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Android

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. 91edc2d5d918416884195f12b2b27371. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-91edc2d5d918416884195f12b2b27371. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 91edc2d5d918416884195f12b2b27371. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ DroidScript?

DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅).

Для создания Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ UI ΠΈ доступа ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ рСсурсам Android, JavaScript ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ совмСстно с API DroidScript, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с WebView, SQLite, email, SMS, WebGL, сСнсорами, Web-сСрвСрами, сокСтами, спрайтовой Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ взаимодСйствиС с внСшними устройствами посрСдством Bluetooth, WiFi, USB ΠΈ LAN.

Π’ΠΏΠ΅Ρ‡Π°Ρ‚Π»ΡΡŽΡ‰Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ”из коробки” – это ΠΎΠ΄Π½Π° ΠΈΠ· особСнностСй DroidScript. Другая ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ – простота Π΅Π³ΠΎ использования. Π’ Ρ‡Ρ‘ΠΌ ΠΎΠ½Π° состоит? ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. НиТС Π΄Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° простого прилоТСния:

Всё кодируСтся Π½Π° JavaScript ΠΈ API DroidScript Π±Π΅Π· использования xml-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, создания классов ΠΈ Π΄Ρ€.

Π’ DroidScript Π½Π΅Ρ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… срСдств проСктирования интСрфСйса, ΠΊΠ°ΠΊ Π² Android Studio, AIDE ΠΈΠ»ΠΈ MIT App Inventor, Π½ΠΎ Π² Π½Ρ‘ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ LivePreview Π½Π° Android для Π΅Ρ‰Ρ‘ Π±ΠΎΠ»Π΅Π΅ быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ², написанных Π½Π° JavaScript ΠΈΠ»ΠΈ Java.

ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DroidScript Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Он ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ разрабатывался Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Ρ‚ΡŒ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ΄ Android просто ΠΈ быстро ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² этот процСсс.

Установка ΠΈ настройка

Π’ случаС отсутствия ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π° с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой Android ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΅Ρ‘ эмулятором, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, BlueStacks ΠΈΠ»ΠΈ Nox APP Player.

УстанавливаСм DroidScript ΠΈΠ· Google Play ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ. На экранС появляСтся интСрфСйс с СдинствСнным ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Hello World Π² области ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. 645ef2041b554bcd994474f8ebca9a2d. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-645ef2041b554bcd994474f8ebca9a2d. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 645ef2041b554bcd994474f8ebca9a2d. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅).

ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ касаниС ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прилоТСния ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ Π΅Π³ΠΎ запуску. Для рСдактирования ΠΊΠΎΠ΄Π° Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠ»Π³ΠΎΠ΅ касаниС ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ Edit Π² появившСмся спискС дСйствий.

ПанСль управлСния Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΊΠ½ΠΎΠΏΠΊΠΈ для доступа ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, соСдинСния с WiFi IDE, ΠΎΠ±Ρ‰ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌ.

Настройка ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ WiFi IDE происходит Ρ‚Π°ΠΊ:

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. 0e4e01e70d154cacb964402a10784cfd. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-0e4e01e70d154cacb964402a10784cfd. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 0e4e01e70d154cacb964402a10784cfd. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅).

Π’ Π»Π΅Π²ΠΎΠΉ части ΠΎΠΊΠ½Π° Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ с ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, рСсурсными Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Π° Π² ΠΏΡ€Π°Π²ΠΎΠΉ β€” Π²ΠΊΠ»Π°Π΄ΠΊΠΈ с новостями, справкой, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠΎΠΌ.

Π’ WiFi IDE Π·Π°Π»ΠΎΠΆΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π° счёт добавлСния Π²ΠΊΠ»Π°Π΄ΠΎΠΊ. Π’ΠΊΠ»Π°Π΄ΠΊΠ° β€œEspruino” являСтся ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.

Π’ самом простом случаС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ js, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠ΄ хранится Π² исходном Π²ΠΈΠ΄Π΅. Для ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π² исходном ΠΊΠΎΠ΄Π΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² spk-Π°Ρ€Ρ…ΠΈΠ². Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° сборка ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² apk-Ρ„Π°ΠΉΠ», Π½ΠΎ для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ»Π°Π³ΠΈΠ½ ApkBuilder.

Когда Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ видишь ΡΡ‚ΠΎΠ»ΡŒ простыС интСрфСйсы DroidScript ΠΈ WiFi IDE, послС Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² дСсктопной ΠΈΠ»ΠΈ web-срСдС, Ρ‚ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ вопрос, Π° ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого cΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎΠ΅? БСзусловно! Как извСстно, ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ простых инструмСнтов ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»ΡΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ!

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

Об Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ скриптингС для Android

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

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ. НС знаю ΠΊΠ°ΠΊ Ρ‚Ρ‹, Π° я Π½Ρƒ ΠΎΡ‡Π΅Π½ΡŒ Π»Π΅Π½ΠΈΠ²Ρ‹ΠΉ. И я Π½Π΅ люблю вновь ΠΈ вновь ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ стандартныС дСйствия, Ссли ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипт. Π’ Android для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Tasker ΠΈ срСду исполнСния скриптов SL4A, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, работая Π² ΠΏΠ°Ρ€Π΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ смартфон ΠΏΠΎ-настоящСму ΡƒΠΌΠ½Ρ‹ΠΌ дСвайсом.

Tasker

Tasker прСдставляСт собой нСбольшоС, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ устройств ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Android. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π΅Π³ΠΎ дСйствия основан Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ возникновСния событий, Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ… состояниС смартфона. Π― знаю, Ρ‡Ρ‚ΠΎ Π·Π²ΡƒΡ‡ΠΈΡ‚ это Π½Π΅ особо Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»ΡΡŽΡ‰Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² ΡƒΠΌΠ΅Π»Ρ‹Ρ… Ρ€ΡƒΠΊΠ°Ρ… Tasker позволяСт Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ настоящиС чудСса. Для Π·Π°Ρ‚Ρ€Π°Π²ΠΊΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².

Π§Ρ‚ΠΎ Ρ‚Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ дСлаСшь ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π³Ρ€ΠΎΠΌΠΊΠΎΠΉ связи? ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, кладСшь Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ Π½Π° стол. А Ρ‡Ρ‚ΠΎ, Ссли громкая связь Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ сама, ΠΊΠΎΠ³Π΄Π° Ρ‚Ρ‹ полоТишь Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ экраном Π²Π½ΠΈΠ· Π²ΠΎ врСмя Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π°? Π£Π΄ΠΎΠ±Π½ΠΎ? Π’Π°ΠΊ Π²ΠΎΡ‚, Tasker позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π·Π° ΠΌΠΈΠ½ΡƒΡ‚Ρƒ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ автоматичСский запуск ΠΏΠ»Π΅Π΅Ρ€Π° ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π½Π°ΡƒΡˆΠ½ΠΈΠΊΠΎΠ², Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ SMS, ΠΊΠΎΠ³Π΄Π° доСзТаСшь Π΄ΠΎ Π΄ΠΎΠΌΠ°, ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΡƒΠ·Ρ‹ΠΊΠΈ Π² ΠΏΠ»Π΅Π΅Ρ€Π΅ встряхиваниСм Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Tasker всС это достиТимо Π² нСсколько Ρ‚Π°ΠΏΠΎΠ² ΠΏΠΎ экрану.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ это ΠΏΠ»Π°Ρ‚Π½ΠΎΠ΅ ΠΈ стоит 3,49 Ρ„ΡƒΠ½Ρ‚Π° стСрлингов (ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΏΡΡ‚ΡŒ Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ²), Π½ΠΎ ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, скачав trial-Π²Π΅Ρ€ΡΠΈΡŽ Π½Π° сСмь Π΄Π½Π΅ΠΉ с сайта Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° tasker.dinglisch.net. НСдСли Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΏΠΎΠ»Π½Π΅ достаточно: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π»ΠΈΡ‡Π½ΠΎ я Π±Π΅Π· сомнСний ΠΊΡƒΠΏΠΈΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ всСго Ρ‡Π΅Ρ€Π΅Π· Π΄Π²Π° дня использования ΠΈ ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Ρ‚Ρ‹ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΡˆΡŒ Ρ‚Π°ΠΊΠΆΠ΅. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΡƒΡ‡Ρ‚ΠΈ, Ρ‡Ρ‚ΠΎ вСрсия с Play Market Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·-Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π·Π°ΠΊΠΎΠ½ΠΎΠ² БША.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ понятия

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. screenshot1. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-screenshot1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° screenshot1. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 1: Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Tasker

Π₯Π°ΠΊΠ΅Ρ€ #166. DDoS

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ProfilesΒ» ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ, ΠΊΠ°ΠΊ понятно ΠΈΠ· Π΅Π³ΠΎ названия, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ.ΠŸΡ€ΠΎΡ„ΠΈΠ»ΡŒ β€” это ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ² ΠΈ привязанная ΠΊ Π½ΠΈΠΌ Π—Π°Π΄Π°Ρ‡Π°, Π³Π΄Π΅ контСкст— это Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ условиС, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€ΠΎΡ‚ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° экраном Π²Π½ΠΈΠ·, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ GPS ΠΈΠ»ΠΈ просСданиС заряда Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ уровня. Если всС контСксты профиля становятся Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ, Ρ‚ΠΎ активизируСтся сам ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Π·Π°Π΄Π°Ρ‡Π° профиля. Если Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· контСкстов профиля становится Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½, ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ дСзактивируСтся ΠΈ выполняСтся ΠšΠΎΠ½Π΅Ρ‡Π½Π°Ρ Π·Π°Π΄Π°Ρ‡Π°.

НапримСр, для профиля с ΠΎΠ΄Π½ΠΈΠΌ контСкстом Β«Π’Π΅Π»Π΅Ρ„ΠΎΠ½ Π»Π΅ΠΆΠΈΡ‚ экраном Π²Π½ΠΈΠ·Β» Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Π·Π°Π΄Π°Ρ‡Π° выполнится послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ устройство ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Ρ‚ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ экраном Π²Π½ΠΈΠ·), Π° конСчная β€” ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚ эту ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. Π—Π°Π΄Π°Ρ‡Π° β€” это ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ цСлая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° ДСйствий, Π³Π΄Π΅ дСйствиС β€” это какая-Ρ‚ΠΎ элСмСнтарная опСрация. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ прСдоставили Π½Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ дСйствий, начиная ΠΎΡ‚ Π²Ρ‹Π²ΠΎΠ΄Π° сообщСний Π½Π° экран ΠΈ заканчивая Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ опСрациями. НаличиС ΠΈ ΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² Π·Π°Π΄Π°Ρ‡Π΅ опрСдСляСм ΠΌΡ‹. ДСйствия ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° настройки ΠΈ собствСнно дСйствия. Настройки ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ дСйствий Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ ΠΏΡ€Π΅ΠΆΠ½Π΅Π΅ состояниС послС Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ контСкста. НапримСр, Π·Π²ΠΎΠ½ΠΎΠΊ ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ Π½ΠΎΠΌΠ΅Ρ€Ρƒ являСтся дСйствиСм, Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π³Ρ€ΠΎΠΌΠΊΠΎΠΉ связи β€” настройкой. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎ ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅: молния β€” это дСйствиС, ΡˆΠ΅ΡΡ‚Π΅Ρ€Π΅Π½ΠΊΠ° β€” настройка.

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ

Π’ΠΎΠΎΡ€ΡƒΠΆΠΈΠ²ΡˆΠΈΡΡŒ знаниями, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ наш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ: автоматичСскоС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π³Ρ€ΠΎΠΌΠΊΠΎΠΉ связи Π² Ρ‚ΠΎΠΌ случаС, Ссли Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ экраном Π²Π½ΠΈΠ·. Для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ профиля Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«+Β» Π²Π½ΠΈΠ·Ρƒ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ экрана. ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ окошко с ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊ Π²Π²ΠΎΠ΄Ρƒ ΠΈΠΌΠ΅Π½ΠΈ профиля. Имя ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ рСкомСндуСтся, Π΄Π°Π±Ρ‹ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π½Π΅ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ срСди ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ (я Π²Π²Π΅Π» «Громкая связь»). Π”Π°Π»Π΅Π΅ Ρ‚Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡˆΡŒ мСню Π²Ρ‹Π±ΠΎΡ€Π° Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ контСкста (ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 2). Рассмотрим всС Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅:

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ контСкста Β«ΠœΠ΅ΡΡ‚ΠΎΒ»

ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ Β«ΠœΠ΅ΡΡ‚ΠΎΒ», ΠΊΠ°ΠΊ ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ, активизируСтся, ΠΊΠΎΠ³Π΄Π° смартфон находится Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ радиусС ΠΎΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ. МоТно Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈ GPS ΠΈΠ»ΠΈ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ сСти, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½ΡƒΠΆΠ½Ρ‹ΠΉ радиус, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚ 30 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΄ΠΎ 999 ΠΊΠΈΠ»ΠΎΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Для ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большого радиуса Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… Π³ΠΎΡ€ΠΎΠ΄Π°, Π³Π΄Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· сСти достаточно высока, Π»ΡƒΡ‡ΡˆΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ GPS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΆΡ€Π΅Ρ‚ Π±Π°Ρ‚Π°Ρ€Π΅ΡŽ совсСм Π½Π΅ ΠΏΠΎ-дСтски. Π’Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΠΎΠΌΠ½ΠΈ, Ρ‡Ρ‚ΠΎ Ссли Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ опрСдСлСния полоТСния большС, Ρ‡Π΅ΠΌ радиус срабатывания, Ρ‚ΠΎ контСкст Π½Π΅ активизируСтся.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ «БостояниС» ΠΈ Π²ΠΈΠ΄ΠΈΠΌ нСсколько ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ (ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 3). Нам Π½ΡƒΠΆΠ½Π° катСгория Β«SensorΒ», Π° Π² Π½Π΅ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Β«ΠžΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡΒ». Π”Π°Π»Π΅Π΅ Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ устройства. Π’ нашСм случаС слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Β«Π­ΠΊΡ€Π°Π½ΠΎΠΌ Π²Π½ΠΈΠ·Β» ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π·Π΅Π»Π΅Π½ΡƒΡŽ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ. Выскочит мСню Π²Ρ‹Π±ΠΎΡ€Π° Π·Π°Π΄Π°Ρ‡ΠΈ для Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ контСкста. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡ Ρƒ нас ΠΏΠΎΠΊΠ° Π½Π΅Ρ‚, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ «Новая Π·Π°Π΄Π°Ρ‡Π°Β». Π’Π²ΠΎΠ΄ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ (ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ, Π½ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ) ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π² мСню рСдактирования Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. screenshot3. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-screenshot3. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° screenshot3. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 3: Ρ€Π°Π·Π΄Π΅Π»Ρ‹ контСкста «БостояниС»

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡

Как я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», Π·Π°Π΄Π°Ρ‡ΠΈ β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий. Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ Π·Π°Π΄Π°Ρ‡Π΅ дСйствиС, слСдуСт Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «плюс» (ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 4). ВсС дСйствия Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹ Π½Π° нСсколько ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ, названия ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… говорят сами Π·Π° сСбя. Для Ρ†Π΅Π»ΠΈ, поставлСнной Π½Π°ΠΌΠΈ, Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡƒΠ½ΠΊΡ‚ «Аудио», Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ настройку «Громкая связь» ΠΈ Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС β€” Β«Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΒ». Π“Π°Π»ΠΎΡ‡ΠΊΠ° «Если» позволяСт Π½Π°Π²Π΅ΡΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ условия Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ (Ссли интСрСсно, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ‚ΡƒΡ‚. НаТимаСм Π·Π΅Π»Π΅Π½ΡƒΡŽ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ β€” дСйствиС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΊ Π·Π°Π΄Π°Ρ‡Π΅. МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ нСсколько дСйствий, Π½ΠΎ Π² нашСм случаС это Π½Π΅ трСбуСтся, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ Ρ€Π°Π· Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π·Π΅Π»Π΅Π½ΡƒΡŽ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданная Π·Π°Π΄Π°Ρ‡Π° становится Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ профиля. Π’Π°ΠΊ ΠΊΠ°ΠΊ громкая связь являСтся настройкой, Ρ‚ΠΎ послС Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ контСкста ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. screenshot4. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-screenshot4. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° screenshot4. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 4: экран создания Π·Π°Π΄Π°Ρ‡ΠΈ

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΡƒΠ·Ρ‹ΠΊΠΈ Π² ΠΏΠ»Π΅Π΅Ρ€Π΅ встряхиваниСм Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ я ΠΎΠ±Π΅Ρ‰Π°Π» Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± особСнностях контСкста Β«Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅Β». ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ Β«Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅Β» активизируСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, запуская ΠΏΡ€ΠΈΠ²ΡΠ·Π°Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ, ΠΈ сразу дСзактивируСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ контСкст Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈ Ρƒ профиля с событиСм Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Π’Π°ΠΊΠΆΠ΅ для ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ с событиСм настройки Π½Π΅ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ своСго значСния.

ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ нашСго профиля. ДобавляСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ (Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ Π΄Π°Ρ‚ΡŒ Π΅ΠΌΡƒ имя) ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ для Π½Π΅Π³ΠΎ контСкст Β«Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅Β». Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ событий Β«SensorΒ», Π° Π·Π°Ρ‚Π΅ΠΌ Β«ShakeΒ». ВыставляСм Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ значСния осСй, Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Для этого профиля Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ β€” создаСм! Π’ ΠΎΠΊΠ½Π΅ рСдактирования Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ плюс; Π½Π°ΠΌ Π½ΡƒΠΆΠ½Π° катСгория «МСдиа» ΠΈ дСйствиС Β«Π£ΠΏΡ€. ΠœΠ΅Π΄ΠΈΠ°ΠΏΠ»Π΅Π΅Ρ€ΠΎΠΌΒ». Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ управлСния ΠΈ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅ΠΌ созданиС Π·Π°Π΄Π°Ρ‡ΠΈ. Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ контСкст ΠΊ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŽ (Π½Π° этот Ρ€Π°Π· это контСкст Β«ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Β») ΠΈ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ ΠΈΠ· списка наш ΠΏΠ»Π΅Π΅Ρ€. Π’Π΅ΠΏΠ΅Ρ€ΡŒ опрос сСнсора Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ ΠΏΠ»Π΅Π΅Ρ€Π΅. ВсС, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π³ΠΎΡ‚ΠΎΠ², моТСшь ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ.

Scripting Level for Android

Π― описал лишь основныС Ρ„ΠΈΡ‡ΠΈ Tasker. Π­Ρ‚ΠΈΡ… Π·Π½Π°Π½ΠΈΠΉ Ρ‚Π΅Π±Π΅ Π²ΠΏΠΎΠ»Π½Π΅ Ρ…Π²Π°Ρ‚ΠΈΡ‚ для создания самых простых ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ, Π½ΠΎ возмоТности этой Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ этим Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ. Π’ Tasker встроСны срСдства создания ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ условныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ Π΄Π°ΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ UI для запроса Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (ΠΈΠΌΠ΅Π½Π½ΠΎ для этого ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Β«ScenesΒ»). Но ΠΈ это Π΅Ρ‰Π΅ Π½Π΅ всС, возмоТности Tasker ΠΌΠΎΠΆΠ½ΠΎ сущСствСнно Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π² качСствС дСйствий скрипты, созданныС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SL4A.

SL4A (Scripting Level for Android) β€” это срСда исполнСния (ΠΈ создания) скриптов для Android Π½Π° языках Python, JavaScript, Perl, Ruby, Lua, BeanShell ΠΈ Tcl. Π’ скриптах ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован API Android Ρ‡Π΅Ρ€Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ обвязку Π²ΠΎΠΊΡ€ΡƒΠ³ стандартного JSON RPC ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Android, благодаря Ρ‡Π΅ΠΌΡƒ ΠΈΠ· скриптов ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΈΠΈ, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ SMS, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с GPS, ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ аксСлСромСтров, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ GUI. Π‘ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Ρ‹ΠΌ языком Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для этой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ считаСтся Python, ΠΈ ΠΌΡ‹ возьмСм Π½Π° Π²ΠΎΠΎΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ.

Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ SL4A ΠΈ Python. ПослС установки Python запускаСм Π΅Π³ΠΎ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«InstallΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠ°Ρ‡Π°Π»ΠΈΡΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Android.

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° напишСм нСсколько простых скриптов. МоТно Π΄Π΅Π»Π°Ρ‚ΡŒ это прямо Π½Π° устройствС, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΠ΅, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡΠΊΠΈΠ΄Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ SL4A/Scripts Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ памяти. Для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ скрипта запускаСм SL4A, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ мСню ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Β«AddΒ», Π² появившСмся спискС Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Β«PythonΒ». ПопадаСм Π² ΠΎΠΊΠ½ΠΎ создания скрипта. Π’ Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄ΠΈΠΌ имя, Π²Π½ΠΈΠ·Ρƒ Ρƒ нас ΡƒΠΆΠ΅ написано Π΄Π²Π΅ строчки ΠΊΠΎΠ΄Π°:

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ просто ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с API ΠΈ создаСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ API Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΌ доступСн. Π Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ API ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΈΡ… Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΡŒ Π½Π΅Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, поэтому Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π½Π°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² процСссС создания скриптов (ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС API Π΅ΡΡ‚ΡŒ Π²ΠΎ встроСнной справкС SL4A ΠΈΠ»ΠΈ ΠΆΠ΅ здСсь. ΠŸΠ΅Ρ€Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ рассмотрим, Π±ΡƒΠ΄Π΅Ρ‚ makeToast: ΠΎΠ½Π° просто ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅. ДописываСм Π΄Π²Π΅ строки ΠΊ ΠΊΠΎΠ΄Ρƒ:

Π”Π°Π»Π΅Π΅ сохраняСм скрипт ΠΈ запускаСм Π΅Π³ΠΎ, Ρ‚Π°ΠΏΠ½ΡƒΠ² ΠΏΠΎ Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ мСню, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π½Π° ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ 5. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ запуск скрипта с консолью, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. screenshot5. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-screenshot5. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° screenshot5. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 5: запуск SL4A-скриптов ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. screenshot6. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-screenshot6. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° screenshot6. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ 6: Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ HelloWorld.py

Π£Ρ€ΠΎΠ²Π½Π΅ΠΌ Π²Ρ‹ΡˆΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ заскриптим Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ поинтСрСснСй. Π”Π°Π²Π°ΠΉ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ смартфон Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ послСднСС входящСС SMS-сообщСниС Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΈ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ ΠΎΠ± ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡƒΡΡ‚ΡŒ Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ всСго ΠΎΠ΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° play music, послС получСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ³Ρ€Π°Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠ΅Π΄ΠΈΠ°Ρ„Π°ΠΉΠ».

МоТно Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ, Π½ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ эффСктивнСС получится, Ссли ΡΠ²ΡΠ·Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого скрипта с событиСм Tasker Β«ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ тСкст. сообщ.Β» ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° Β«Π’Π΅Π»Π΅Ρ„ΠΎΠ½Β».

Рассмотрим Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ скрипт. Π—Π½Π°ΡŽ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΡ… (Π² Ρ‚ΠΎΠΌ числС Ρƒ мСня) Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ кирилличСских символов Π² ID3-Ρ‚Π΅Π³Π°Ρ… MP3-Ρ„Π°ΠΉΠ»ΠΎΠ². Π£Π΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ я Ρ‚Π°ΠΊ ΠΈ Π½Π΅ нашСл, поэтому ΠΈ написал скрипт. Для Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ сторонняя Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Stagger. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΈΠ· SL4A ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ сторонниС pure Python Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, просто копируя ΠΈΡ… Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ com.googlecode.python.python3forandroid/extras/python3 Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ памяти. ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ скрипта с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ коммСнтариями ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΠΎΠΌ ΠΊ ΠΆΡƒΡ€Π½Π°Π»Ρƒ дискС, здСсь ΠΆΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΡƒΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅Ρ‚ MP3-Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ памяти:

Π­Ρ‚ΠΎΡ‚ скрипт ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΠΊΠΎΠ³Π΄Π° потрСбуСтся, Π½ΠΎ я привязал Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого скрипта ΠΊ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ Β«ΠšΠ°Ρ€. памяти доступна» ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° «Аппаратура» Tasker.

ВзаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ

SL4A прСдоставляСт Π½Π°ΠΌ Ρ€Π°Π·Π½Ρ‹Π΅ способы взаимодСйствия с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ: webViews (HTML5 + JavaScript), fullScreenAPI (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΠΌΠΎΠ΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΈ dialogAPI, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅ ΠΈ рассмотрим. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° дискС, Π° здСсь Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ, ΠΊΠ°ΡΠ°ΡŽΡ‰Π°ΡΡΡ dialogAPI. Π― Π½Π΅ сказал, Ρ‡Ρ‚ΠΎ Π·Π° скрипт? Он отправляСт Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ„ΠΎΡ‚ΠΊΠΈ Π½Π° FTP-сСрвСр.

Π§Ρ‚ΠΎ дальшС?

Благодаря Tasker ΠΈ SL4A возмоТности Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ дСйствия Π½Π° Android становятся просто Π±Π΅Π·Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹ΠΌΠΈ. Π‘Π°ΠΌ ΠΆΠ΅ SL4A прСдоставляСт ΠΌΠΎΡ‰Π½Ρ‹ΠΉ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π» для скриптинга Android. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я описал лишь ΡΠ°ΠΌΡƒΡŽ ΠΌΠ°Π»ΠΎΡΡ‚ΡŒ ΠΈΠ· всСх возмоТностСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ΠžΡΡ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΡ‰ΠΈ ΠΏΠΎ ссылкам, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π² Π±ΠΎΠΊΠΎΠ²Ρ‹Ρ… выносах, ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΆΠ΄ΠΈ ΠΎΡ‚ мСня Π½ΠΎΠ²Ρ‹Ρ…, Π±ΠΎΠ»Π΅Π΅ спСциализированных статСй.

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

Shell-скриптинг Π² срСдС Android

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

Android основан Π½Π° ядрС Linux, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π½Π°Π±ΠΎΡ€ стандартных UNIX-ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ простой шСлл sh. ВсС это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку для выполнСния Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π½ΠΎ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ шСлл-скрипты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, нСдоступныС ΠΈΠ· графичСского интСрфСйса. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ с ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π·Π°Ρ‡Π΅ΠΌ всС это Π½ΡƒΠΆΠ½ΠΎ.

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

Π‘Ρ€Π°Π·Ρƒ ΠΎΠ³ΠΎΠ²ΠΎΡ€ΡŽΡΡŒ, Ρ‡Ρ‚ΠΎ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ€Π΅Ρ‡ΡŒ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΎ шСлл-скриптах Π² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ для Linux ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ, Π±Π΅Π· использования инструмСнтов Π²Ρ€ΠΎΠ΄Π΅ SL4A, QPython ΠΈΠ»ΠΈ Roboto. Π“Π»Π°Π²Π½ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΡ… скриптов β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ повСдСния систСмы, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ядра, Ρ€Π°Π±ΠΎΡ‚Π° с Π΄Π΅ΠΌΠΎΠ½Π°ΠΌΠΈ (ADB, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€) ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° этапС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ОБ, установки Π½ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, послС Ρ‚Π°ΠΏΠ° ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΠΎ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΈ β€” ΠΈΠ· Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°.

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ я расскаТу, ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ скрипты, ΠΊΠ°ΠΊ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ автоматичСски, ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ систСмному ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ. Π’ качСствС бонуса Ρ‚Π°ΠΊΠΆΠ΅ объясню, ΠΊΠ°ΠΊ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ консоль восстановлСния (recovery) Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ‚Π΅Π±Π΅ дСйствия ΠΏΠ΅Ρ€Π΅Π΄ установкой ΠΈΠ»ΠΈ сразу послС установки Π½ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. НачинаСм.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Android-окруТСния

Π’ самой своСй основС, Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π½Π΅Ρ‚ Java ΠΈ Dalvik, Android прСдставляСт собой минималистичный Linux-дистрибутив со всСми свойствСнными Π΅ΠΌΡƒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ: ядром, систСмой ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π΄Π΅ΠΌΠΎΠ½ΠΎΠ², ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, шСллом. ПослСдний β€” это Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ mksh ΠΈΠ· MirBSD, ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² sh; простой ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ языковых конструкций классичСского Bourne shell ΠΈΠ· UNIX ΠΈ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Tab.

Π’ качСствС ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° Π±Π°Π·ΠΎΠ²Ρ‹Ρ… UNIX-ΠΊΠΎΠΌΠ°Π½Π΄ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ toolbox, своСго Ρ€ΠΎΠ΄Π° урСзанная Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° BusyBox, которая позволяСт Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠ° (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ симлинков). Toolbox Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ grep ΠΈΠ»ΠΈ sort, Π½ΠΎ Π΄Π°ΠΆΠ΅ cp. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скриптами Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся установка BusyBox, Π±Π»Π°Π³ΠΎ Π² ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎ бСсплатных инсталляторов.

ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ скриптинга Π² Android β€” Ρ€Π°Π±ΠΎΡ‚Π° с ядром ΠΈ систСмными ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°ΠΌΠΈ. Π―Π΄Ρ€ΠΎ Ρ‚ΡƒΡ‚ стандартноС ΠΈ экспортируСт всС Ρ‚Π΅ ΠΆΠ΅ интСрфСйсы /proc ΠΈ /sys, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€ΡƒΠ»ΠΈΡ‚ΡŒ ΠΆΠ΅Π»Π΅Π·ΠΎΠΌ ΠΈ состояниСм систСмы. Плюс Π΅ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ спСцифичных для Android ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ скриптов:

Π₯Π°ΠΊΠ΅Ρ€ #185. Π”ΠΎΠΊΠ°ΠΆΠΈ Π±Π°Π³!

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ скрипт. Π”Π΅Π»Π°Ρ‚ΡŒ это Π»ΡƒΡ‡ΡˆΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠ΅, Π° Π΅Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Π² Linux ΠΈΠ»ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ Π±Π΅Π· символа Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π² Android Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ ^M Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки). Наш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ скрипт Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ всСго ΠΈΠ· Π΄Π²ΡƒΡ… строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ бэкап всСх установлСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ памяти. Π•Π³ΠΎ ΠΊΠΎΠ΄ (Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ BusyBox):

БохраняСм (ΠΏΡƒΡΡ‚ΡŒ ΠΎΠ½ называСтся apk_backup.sh) ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠΈΠ΄Ρ‹Π²Π°Π΅ΠΌ Π½Π° смартфон с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ADB:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ. ΠŸΡ€ΠΎΡ‰Π΅ всСго ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всС Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ ADB:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ скрипт ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ· консоли Π½Π° самом смартфонС/ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π΅:

Π‘Π°ΠΌΠΎ собой, Ρ‚Π°ΠΊΠΎΠΉ способ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π΅Π½. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ быстрый способ запуска скрипта. НаиболСС ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΈΠ· Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΌΠ½ΠΎΠΉ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ β€” это ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ QuickTerminal. УстанавливаСм, запускаСм, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Quick Command, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«+Β», Π²Π±ΠΈΠ²Π°Π΅ΠΌ имя (ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅) ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ (sh /sdcard/apk_backup.sh), Π² ΠΏΠΎΠ»Π΅ Output Type Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π»ΠΈΠ±ΠΎ Dialog Output, Π»ΠΈΠ±ΠΎ Nothing. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС Π²ΠΎ врСмя выполнСния скрипта Π½Π° экранС появится ΠΎΠΊΠ½ΠΎ с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ всС ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ Π² Ρ„ΠΎΠ½Π΅. ΠšΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. Π”Π°Π»Π΅Π΅ сохраняСм ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ скрипт ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ быстро ΠΈ Π»Π΅Π³ΠΊΠΎ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ напишСм скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ восстановит наш бэкап:

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. pm. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-pm. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° pm. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). ΠŸΠΎΡ‡Ρ‚ΠΈ всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Android ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ справку

ИмСя Ρ€ΡƒΡ‚, ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ бэкап настроСк всСх ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ копирования ΠΈ Π°Ρ€Ρ…ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° /data/data/, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Android ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ исполняСтся ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ созданного ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для Π½Π΅Π³ΠΎ Linux-ΡŽΠ·Π΅Ρ€Π° ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ настройки Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅Π³ΠΎ этому ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° здСсь Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Linux-ΡŽΠ·Π΅Ρ€Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прилоТСния гСнСрируСтся динамичСски, поэтому послС восстановлСния бэкапа Π² Π·Π°Π½ΠΎΠ²ΠΎ установлСнной систСмС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ ΠΈ прилоТСния Π½Π΅ смогут ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ свои настройки. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π²Ρ‹ΡΡΠ½ΡΡ‚ΡŒ ID ΡŽΠ·Π΅Ρ€Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прилоТСния ΠΈ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° доступа Π½Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнный Π² Android Backup Manager, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ сторонним прилоТСниям ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ возмоТности систСмы для бэкапа ΠΈ восстановлСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…. Π£ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· консоли (Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скриптов), Π½ΠΎ сам ΠΏΠΎ сСбС ΠΎΠ½ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ бэкапа Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚, Π° Π²ΠΎΠ·Π»Π°Π³Π°Π΅Ρ‚ эту Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° сторонниС прилоТСния. Helium β€” ΠΎΠ΄Π½ΠΎ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ бэкапа ΠΈ восстановлСния ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Ρ‚ΡŒ. НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ простой скрипт сдСлаСт Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию всСх сторонних ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:

Автозапуск

Π”Ρ€ΡƒΠ³ΠΎΠΉ популярный способ автозапуска β€” это использованиС срСдств автоматичСского исполнСния скриптов ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π² сторонних ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°Ρ…. БСгодня ΠΏΠΎΡ‡Ρ‚ΠΈ всС сколько-Π½ΠΈΠ±ΡƒΠ΄ΡŒ извСстныС кастомныС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΡƒΠΌΠ΅ΡŽΡ‚ ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ скрипты ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° /system/etc/init.d/, Π° Π² стокС Ρ‚Π°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прилоТСния Universal init.d ΠΈΠ· ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚Π°. Π‘ послСдним, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π°Π΄ΠΎ Π±Ρ‹Ρ‚ΡŒ остороТным, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ запускаСт скрипты Π½Π΅ Π½Π° Ρ€Π°Π½Π½Π΅ΠΌ этапС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΠΊΠ°ΠΊ это происходит Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ CyanogenMod, Π° ΡƒΠΆΠ΅ послС ΠΏΠΎΠ»Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ систСмы.

Π˜Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ? НапримСр, скрипт запуска Π΄Π΅ΠΌΠΎΠ½Π° ADB Π² сСтСвом Ρ€Π΅ΠΆΠΈΠΌΠ΅:

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π½Π΅ΠΌΡƒ с ПК Π½Π°Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ подсистСмы Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ памяти:

Ну ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ³Π½Π°Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ lowmemorykiller (автоматичСскоС убийство Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠ΅ памяти) ΠΏΠΎΠ΄ наши Π½ΡƒΠΆΠ΄Ρ‹:

Ну ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, автоматичСский Π²Ρ‹Π±ΠΎΡ€ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° процСссов:

ВсС это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ спСциализированного софта, Π½ΠΎ Π·Π°Ρ‡Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ систСму Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ПО, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΅Ρ‰Π΅ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΡΠ΅Ρ‚ΡŒ Π² Ρ„ΠΎΠ½Π΅, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ нСсколькими простыми скриптами?

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. tasker. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-tasker. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° tasker. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ скрипт с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Tasker

Запуск скриптов Π΄ΠΎ ΠΈ послС установки ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

ΠŸΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ, ΠΊΡ‚ΠΎ устанавливаСт Π½Π° свой Π³Π°Π΄ΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡŽΡŽ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ, Ρ‚Π°ΠΊΠΆΠ΅ ставит ΠΏΠΎΠ²Π΅Ρ€Ρ… Π½Π΅Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ с Ρ„ΠΈΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ прилоТСниями Google (gapps), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚, YouTube, Gmail ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ софт. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° происходит ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ρ€Π°Π·Π΄Π΅Π» /system, содСрТащий Π΅Π΅ ΠΈ gapps, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ стираСтся, Π½ΠΎ прилоТСния Google всСгда ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π° мСстС. Π­Ρ‚ΠΎ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ всСго ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, gapps содСрТит Π² своСм составС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ размСщаСтся Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /system/addon.d/ ΠΈ запускаСтся консолью восстановлСния Π΄ΠΎ ΠΈ послС установки ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π­Ρ‚ΠΎΡ‚ скрипт Π΄Π΅Π»Π°Π΅Ρ‚ бэкап ΠΈ восстановлСниС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Google.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ для выполнСния Π½Π°ΡˆΠΈΡ… собствСнных дСйствий Π΄ΠΎ ΠΈ послС установки ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π’ΠΎΡ‚ Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, выглядит ΠΌΠΎΠΉ скрипт восстановлСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ бэкапит, Π½ΠΎ ΠΏΠΎΠ΄Ρ‡ΠΈΡ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΎΡ‚ мусора сразу послС Π΅Π΅ установки:

Π‘ΠΊΡ€ΠΈΠΏΡ‚ удаляСт Ρ€ΠΈΠ½Π³Ρ‚ΠΎΠ½Ρ‹, увСдомлСния, Π΄Π²ΠΈΠΆΠΎΠΊ синтСза Ρ€Π΅Ρ‡ΠΈ ΠΈ нСсколько ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ВсС эти дСйствия Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ скрипту ΠΎΠΏΡ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки restore (это Π΄Π΅Π»Π°Π΅Ρ‚ консоль восстановлСния послС установки ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ), ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ‚Π°ΠΊΠΆΠ΅ прСдусмотрСны ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΎΠΏΡ†ΠΈΠΉ, ΠΊΠ°ΠΊ backup, pre-backup, post-backup, pre-restore ΠΈ post-restore. Π—Π΄Π΅ΡΡŒ это просто Π·Π°Π³Π»ΡƒΡˆΠΊΠΈ, Π½ΠΎ Ссли Π±Ρ‹ ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ бэкап Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Π΄ установкой ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π² Π±Π»ΠΎΠΊ backup, ΠΊΠ°ΠΊ это сдСлано Π² скриптС /system/addon.d/70-gapps.sh:

Π­Ρ‚ΠΎΡ‚ кусок скрипта прСкрасно ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ бэкап Ρ„Π°ΠΉΠ»ΠΎΠ². ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ элСмСнты здСсь: функция listfiles, которая ΠΏΡ€ΠΈ запускС Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ листинг Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΈ функция backupfile, которая являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ консоли восстановлСния (ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π² Ρ„Π°ΠΉΠ»Π΅ /tmp/backuptool.functions). Она Π΄Π΅Π»Π°Π΅Ρ‚ бэкап Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ†ΠΈΠΊΠ»Π΅.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. addond. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-addond. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° addond. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ /system/addon.d/ Π² CyanogenMod 11 Π½Π° Motorola Defy

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. 70 gapps. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-70 gapps. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 70 gapps. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅). Π‘ΠΊΡ€ΠΈΠΏΡ‚ бэкапа ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Google

По словам Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° mksh, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ вСрсии Android-смартфонов Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² своСм составС шСлл, Π½ΠΎ послС выпуска смартфона для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² HTC (T-Mobile) G1 ΠΎΠ½ фактичСски стал стандартной Ρ‡Π°ΡΡ‚ΡŒΡŽ систСмы.

ВСрсии Android 2.3 ΠΈ Π½ΠΈΠΆΠ΅ вмСсто mksh использовали минималистичный шСлл ash, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ всСх BSD-систСм.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ скрипты Π½Π° всСх устройствах, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ DropSync ΠΈΠ»ΠΈ FolderSync (автоматичСская синхронизация Ρ‡Π΅Ρ€Π΅Π· Dropbox).

Π§Ρ‚ΠΎ Π΅Ρ‰Π΅?

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скриптов Π² Android ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ бэкапы ΠΈ настройка ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² систСмы. Π’ΠΎΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просыпаСтся ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ Π΄Π΅ΡΡΡ‚ΡŒ ΠΌΠΈΠ½ΡƒΡ‚ ΠΈ, Ссли ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ заряда Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ стал мСньшС 30%, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Wi-Fi ΠΈ Bluetooth:

Π§Ρ‚ΠΎΠ±Ρ‹ скрипт Ρ€Π°Π±ΠΎΡ‚Π°Π» Π² Ρ„ΠΎΠ½Π΅, достаточно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

А это скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт быстро Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° имэйла ΠΈ пароля (Π² прилоТСниях ΠΈ Π½Π° Π²Π΅Π±-сайтах):

Π—Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ способами. Π›ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ запуском прилоТСния, установив Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ:

НС Π°Ρ…Ρ‚ΠΈ ΠΊΠ°ΠΊ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Π·Π°Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Как ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ? НапримСр, ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΠΉ скрипт clip.sh:

Или просто ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ номСронабиратСля с Π½ΡƒΠΆΠ½Ρ‹ΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ SMS:

Π‘ΠΊΡ€ΠΈΠΏΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°: Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° ΠΈ содСрТимоС SMS. ПослС запуска ΠΎΠ½ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ ΠΎΠΊΠ½ΠΎ SMS-прилоТСния, вставит Π² Π½Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Ρ‹ΠΉ тСкст, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠ΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ Enter для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ, послС Ρ‡Π΅Π³ΠΎ ΠΎΠΊΠ½ΠΎ закроСтся.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΈ скриптингС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ВмСсто Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ²

Для ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ всС описанноС Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ нСсколько Π½Π°Π΄ΡƒΠΌΠ°Π½Π½Ρ‹ΠΌ. Π”Π΅ΡΠΊΠ°Ρ‚ΡŒ, всС это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стандартного софта ΠΈ Tasker. Но Π·Π°Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ тяТСлый Java-софт Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π½ΡƒΠΆΠ½ΠΎΠ΅ дСйствиС ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎΠ³ΠΎ скрипта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ лишнСй памяти ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ пСрСнСсСн Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠ΅ устройство? Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΡƒΠ΄ΠΎΠ±Π½Ρ‹, просты, быстро ΠΎΡ‚Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΈ Π΄Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ½ΠΊΠΎΠΉ настройки ΠΏΠΎΠ΄ сСбя.

ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. Evgenij Zobnin 1. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅-Evgenij Zobnin 1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Evgenij Zobnin 1. DroidScript прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° Android устройствС. Он позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² – JavaScript (с Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ интСрфСйсом) ΠΈ HTML (Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Π΅).

Π•Π²Π³Π΅Π½ΠΈΠΉ Π—ΠΎΠ±Π½ΠΈΠ½

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Ρ€ΡƒΠ±Ρ€ΠΈΠΊΠΈ X-Mobile. По ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Ρƒ сисадмин. Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ Ρ„Π°Π½Π°Ρ‚ Linux, Plan 9, Π³Π°Π΄ΠΆΠ΅Ρ‚ΠΎΠ² ΠΈ Π΄Ρ€Π΅Π²Π½ΠΈΡ… Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ€.

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

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

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