ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π°Π½Π΄ΡΠΎΠΈΠ΄ Π½Π° java
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ANDROID Π±ΡΡΡΡΠΎ ΠΈ ΠΏΡΠΎΡΡΠΎ
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π² ΡΠΌΡΠ»ΡΡΠΎΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ΄Π΅Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ Ρ Visual Studio Π½Π°ΠΆΠ°Π² ΠΊΠ»Π°Π²ΠΈΡΡ F5.
ΠΡΠΈΠ²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠ΄ ΠΊ ΡΠ°ΠΊΠΎΠΌΡ Π²ΠΈΠ΄Ρ. ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ WebView ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π³ΡΡΠ·ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ HTML ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ΅ Assets.
ΠΠΎ ΡΠ°ΠΊΠΎΠΌΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΡΡΡΠΎ ΠΈ ΠΏΡΠΎΡΡΠΎ. Π€Π°ΠΉΠ»Ρ html Π±ΡΠ΄ΡΡ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ Π½Π° Π²ΡΠ΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . Π’ΠΎ Π΅ΡΡΡ, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Android ΠΈ iOS Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. ΠΠ΅ Π½Π°Π΄ΠΎ ΠΈΠ·ΡΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ, Π½Π΅ Π½Π°Π΄ΠΎ ΠΈΠ·ΡΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΌΠ°ΠΊΠ΅ΡΡ (ΡΡΠΎΡΠΈΠ±ΠΎΡΠ΄Ρ) Π½Π° iOS. ΠΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π° HTML.
Π ΠΈΠ΄Π΅Π°Π»Π΅, Π²ΠΌΠ΅ΡΡΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΠΎ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΡΠ°ΠΉΡΠ°. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±Π΅Π· Π΅Π³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² AppStore ΠΈ Google Play.
Q: ΠΠΎ ΠΊΠ°ΠΊ Π±ΡΡΡ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΡΠ°ΠΌΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ? ΠΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ? ΠΠ°ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠ°ΠΌΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ?
ΠΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ! JavaScript ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ Android:
ΠΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΡΠ³Π°Π΅ΡΡΡ Π½Π° Export ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ Π·Π½Π°Π΅Ρ ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅.
Π’Π°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΅ΡΠ»ΠΈ Π²Π΄ΡΡΠ³ Visual Studio ΡΡΠ³Π°Π΅ΡΡΡ Π½Π° ΡΡΠΎ ΡΠΎ.
ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠΎ ΠΏΠΎΠΊΠ°Π· Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π° ΡΠΊΡΠ°Π½Π΅. ΠΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ ΠΠ½Π΄ΡΠΎΠΈΠ΄Π°. Π’ΠΎ Π΅ΡΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π² HTML ΡΠ°ΠΉΠ»Π΅ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΠ½Π΄ΡΠΎΠΈΠ΄Π°. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π΄ΡΡΠΆΠ΅Π»ΡΠ±ΠΈΠ΅ Π΄Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ ΠΏΠΎ JavaScript ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ. ΠΠ°Π½Π½ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΡΠ΄Π° ΡΡΠ΄Π°. ΠΡΠ·ΡΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΎΡ ΠΎΠ΄Π½ΠΎΠΉ Π°ΠΊΡΠΈΠ²ΠΈΡΠΈ Π² Π΄ΡΡΠ³ΡΡ. ΠΡΠ΅ ΡΠ΅ΡΠ΅Π· HTML + JavaScript.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ» login.htm:
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ HTML Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Toast Π°Π½Π΄ΡΠΎΠΈΠ΄Π° ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠΈΡΠ΅ΠΌ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Android
ΠΡΠ΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Eclipse
Π’ΡΡ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ. ΠΠ΄ΡΠΌ Π² ΡΠ°Π·Π΄Π΅Π» Downloads Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅ ΠΈ ΠΊΠ°ΡΠ°Π΅ΠΌ Π²Π΅ΡΡΠΈΡ Classic. ΠΠ°Π»Π΅Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΡΠΏΠ°ΠΊΡΠΉΡΠ΅ Π°ΡΡ ΠΈΠ², ΠΊΡΠ΄Π° Π²Π°ΠΌ Ρ ΠΎΡΠ΅ΡΡΡ, Ρ ΠΆΠ΅ ΡΠ΅ΡΠΈΠ» ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π² ΠΏΠΎΡΠ΅ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ C:\Eclipse
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ADT ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΊ Eclipse
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Eclipse, ΠΈ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π° ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Π½Ρ Help β Install new software. Π ΠΏΠΎΠ»Π΅ Work with Π²ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π°Π΄ΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π° dl-ssl.google.com/android/eclipse (Π΅ΡΠ»ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΡΡΠ½ΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ http://developer.android.com/sdk/eclipse-adt.html), Π΄Π°Π»Π΅Π΅ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Developer Tools, ΠΎΡΠΌΠ΅ΡΠ°Π΅ΠΌ Π΅Π³ΠΎ ΠΈ ΠΈΠ΄Π΅ΠΌ Π΄Π°Π»Π΅Π΅.
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ Eclipse.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠ΅Π΄Ρ Π΄Π»Ρ Java: JDK ΠΈ JRE
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΠ΅ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Java Development Kit (JDK) ΠΈ Java Runtime Environment (JRE), ΡΠΎ ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ. Π‘Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΡΠ°ΠΉΡΠ΅ Oracle. Π‘ΠΊΠ°ΡΠ°ΠΉΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ JDK ΠΈ JRE.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Android SDK
ΠΠ΅Π»ΠΎ ΠΎΡΡΠ°Π»ΠΎΡΡ Π·Π° ΠΌΠ°Π»ΡΠΌ β ΡΡΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ²Π΅ΠΆΠΈΠΉ Android SDK. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅ Π΄Π»Ρ Android ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π― Π»ΠΈΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» SDK ΠΎΠΏΡΡΡ-ΡΠ°ΠΊΠΈ Π² ΠΏΠΎΡΡΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ C:\Android. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈ ΠΏΡΠΎΡΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ SDK. Π― Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡΡΡ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄Π»Ρ ΡΠ°Π½Π½ΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ, Π° ΡΠ°ΠΊΠΆΠ΅ USB-Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½Π°. Π’Π΅ΠΏΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°ΠΏ β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Android-ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ, ΡΡΠΎΠ±Ρ Π±ΡΡΡΡΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π° Π½ΡΠΌ ΡΠ²ΠΎΠΉ ΡΠ²Π΅ΠΆΠ΅Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΡΠΎΡΡ. ΠΠ½Π°ΡΠ°Π»Π΅ Ρ Ρ ΠΎΡΡ ΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΠ² ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ Android Virtual Device (AVD). ΠΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΌΠ°ΡΡΡΠΎΠ½ Ρ ΠΠ‘ Android, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π²Π°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ Android Virtual Device ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠΌΠ°ΡΡΡΠΎΠ½Π°Ρ Ρ Android, Π° Π½Π΅ ΠΏΠΎΠΊΡΠΏΠ°ΡΡ Π²Π΅ΡΡ ΠΌΠΎΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΡΠ΄ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ .
ΠΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Android. Π‘Π»Π΅Π΄ΡΠ΅ΠΌ Π² ΠΌΠ΅Π½Ρ ΠΏΠΎ ΠΏΡΡΠΈ Window β Android SDK and AVD Manager.
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ New Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π°, Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΈΠΌΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ (Π΄ΠΎΠΏΡΡΡΠΈΠΌ Android 2.1), ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠ°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ (Π΄ΠΎΠΏΡΡΡΠΈΠΌ 512 Mb), ΡΠΈΠΏ Π΄ΠΈΡΠΏΠ»Π΅Ρ (Π΄ΠΎΠΏΡΡΡΠΈΠΌ HVGA). ΠΠ°ΡΠ΅ΠΌ ΠΆΠΌΠ΅ΠΌ Π²Π½ΠΈΠ·Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Create AVD.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΠ΄Π΅ΠΌ ΠΏΠΎ ΠΏΡΡΠΈ Π² ΠΌΠ΅Π½Ρ File β New β Other, Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΌΡΡ ΡΠΏΠΈΡΠΊΠ΅ Android β Android Project.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠΎΠ΅ΠΉ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ UfaTermometr, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ Ρ Π΄Π°ΡΡΠΈΠΊΠΎΠ², ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ½Π΅ΡΠ³ΠΎ-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΌΠ°Π½ΡΠ°Π»Π΅ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠΎΠΌΡ, ΠΊΡΠΎ ΠΈΠΌΠ΅Π» Π΄Π΅Π»ΠΎ Ρ html/css-Π²ΡΡΡΡΠΊΠΎΠΉ ΠΈ/ΠΈΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Delphi). ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Ρ Π·Π°Π³ΡΡΠ·ΠΈΠ» ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ImageView. Π ΠΏΠΎΠ»Π΅ src ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΡΡ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉΡΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° @ ΠΈ Π΄Π°Π»Π΅Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ Π°Π΄ΡΠ΅Ρ ΠΏΠΎ Π΄Π΅ΡΠ΅Π²Ρ. Π ΠΏΠ°ΠΏΠΊΠ΅ res Ρ Π·Π°Π±Π»Π°Π³ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°Π» ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΡ drawable ΠΈ Β«Π·Π°ΠΊΠΈΠ½ΡΠ»Β» ΡΡΠ΄Π° Π»ΠΎΠ³ΠΎΡΠΈΠΏ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·Π°Π» ImageView ΠΏΡΡΡ. ΠΠ΅Π³ΠΊΠΎ? ΠΠΎ ΠΌΠ½Π΅ ΡΠ°ΠΊ ΠΎΡΠ΅Π½Ρ.
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Button;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.*;
public class UfaTermometr extends Activity
<
@Override
public void onCreate(Bundle savedInstanceState)
<
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.refrbutton);
button.setOnClickListener( new Button.OnClickListener() <
public void onClick(View v) // ΠΊΠ»ΠΈΠΊ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ
<
RefreshTemper();
>
>);
RefreshTemper(); // ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π³ΡΡΠ·ΠΈΠΌ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ ΡΡΠ°Π·Ρ
>;
//—————————————————————-
public String GetTemper(String urlsite) // ΡΡΠΊΡΠΈΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ
<
String matchtemper = «» ;
try
<
// Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΡΡΠ°Π½ΠΈΡΡ
URL url = new URL(urlsite);
URLConnection conn = url.openConnection();
InputStreamReader rd = new InputStreamReader(conn.getInputStream());
StringBuilder allpage = new StringBuilder();
int n = 0;
char [] buffer = new char [40000];
while (n >= 0)
<
n = rd.read(buffer, 0, buffer.length);
if (n > 0)
<
allpage.append(buffer, 0, n);
>
>
// ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΡΠ΅Π³ΡΠ»ΡΡΠΊΠ°ΠΌΠΈ
final Pattern pattern = Pattern.compile
( » [^-+0]+([-+0-9]+)[^ [^(Π°-ΡΠ-Π―ΡΠa-zA-Z0-9)]+([Π°-ΡΠ-Π―ΡΠa-zA-Z ]+)» );
Matcher matcher = pattern.matcher(allpage.toString());
if (matcher.find())
<
matchtemper = matcher.group(1);
>
return matchtemper;
>
catch (Exception e)
<
>
return matchtemper;
>;
//—————————————————————-
public void RefreshTemper()
<
final TextView tTemper = (TextView) findViewById(R.id.temper);
String bashtemp = «» ;
bashtemp = GetTemper( Β«be.bashkirenergo.ru/weather/ufaΒ» );
tTemper.setText(bashtemp.concat( «Β°» )); // ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ
>;
>
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΆΠ΅ Π΅Π³ΠΎ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΠ°ΠΏΡΡΠΊ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ ΠΏΡΠΎ Π½Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Π½ΡΡΠΊΠΎΠΉ Run β Run
ΠΠΎΡ ΡΠ°ΠΊΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΡΠ΅ΠΌ ΡΠΎΠ·Π΅ΡΡΠ°ΡΡ:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Android ΠΏΡΠΈΡΡΠ½Π°, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ° ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π»ΠΈΡΡ Π²Π΅ΡΡ ΡΡΠΊΡ Π°ΠΉΡΠ±Π΅ΡΠ³Π°, Π½ΠΎ Ρ Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ Π² ΡΠΌΠ°Ρ ΡΠ΅Ρ ΠΈΠ· Π²Π°Ρ, ΠΊΡΠΎ ΡΠ°Π½ΡΡΠ΅ Π½Π΅ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π΄Π΅Π»Π°ΡΡ Π½ΠΈΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Β«Π·Π°Π³ΠΎΡΠ΅Π»Π°ΡΡ Π»Π°ΠΌΠΏΠΎΡΠΊΠ°Β» ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π°-ΡΠΎ Π²Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ.
ΠΡΡΠΎΡΠ½ΠΈΠΊΠΈ, ΡΡΡΠ»ΠΊΠΈ
UPD: Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ
ERROR: Unable to open class file C:\workspace\Test\gen\com\example\test\R.java: No such file or directory
emulator: ERROR: no search paths found in this AVD’s configuration. Weird, the AVD’s config.ini file is malformed. Try re-creating it
β ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Ρ ΠΠ°Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ° Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π Π΅ΡΠ°Π΅ΡΡΡ: ΠΈΠ΄Π΅ΠΌ Π² ΠΠΎΠΌΠΏΡΡΡΠ΅Ρ β Π‘Π²ΠΎΠΉΡΡΠ²Π° ΡΠΈΡΡΠ΅ΠΌΡ β ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ β ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ANDROID_SDK_HOME ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ β ΠΏΡΡΠ΅ΠΌ, Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠ°ΠΏΠΊΠ° AVD (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, C:\Android\). Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ, Π΄Π°Π»Π΅Π΅ ΠΈΡΠ΅ΠΌ ΡΠ°ΠΌ ΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Path, ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΠΈ Π² ΠΏΠΎΠ»Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΡΠΎΡΠΊΡ Ρ Π·Π°ΠΏΡΡΠΎΠΉ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΡΡΡ Π΄ΠΎ ΠΏΠ°ΠΏΠΊΠΈ tools Android SDK (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, C:\Android\tools). Π‘ΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Eclipse, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
UPD 05.10.2011, Π²ΠΎ ΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ»ΠΎΡΡ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΡΠ΅Π·ΡΠ΅ΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
ΡΠΊΡΠΈΠ½Π°Ρ
:
ΠΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΡΠΎΠΉ ΡΠ°ΠΌΠΎΠΉ Π±ΠΎΠ»Π²Π°Π½ΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΡΠ΅ Π΄Π°Π½Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΡΠΎΠ²
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° Android ΠΎΡΠΊΡΡΡΠ°Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ Π΅Π³ΠΎ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ.
Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Android ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ β ΡΡΠΎ Java. Π‘Π΅ΠΉΡΠ°Ρ Google Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°Π΅Ρ Kotlin ΠΊΠ°ΠΊ ΡΠ·ΡΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Java. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΈΡΡΡ ΠΈ Π½Π° C++.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠ°ΠΏΠΎΠ²:
Π ΠΏΠΎΠΊΠ° ΠΌΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π°Π·Ρ, ΡΡΡΠ΄Π΅Π½ΡΡ ΠΊΡΡΡΠ° Β«ΠΡΠΎΡΠ΅ΡΡΠΈΡ ΠΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΒ» ΡΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π΅Π½ΡΠ³ΠΈ Π·Π° ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΈΡΠ΅Ρ ΠΏΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π² Skillbox. Π Π°Π±ΠΎΡΠ°Π» Π³Π»Π°Π²Π½ΡΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠΌ ΡΠ°ΠΉΡΠ° Β«Π₯Π°Π±ΡΠ°Ρ Π°Π±ΡΒ», Π²Π΅Π΄Π΅Ρ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΠ΅ Π±Π»ΠΎΠ³ΠΈ.
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Android Studio. ΠΡΠΎ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (IDE) Π΄Π»Ρ Android, ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Windows, macOS ΠΈ Linux. Π₯ΠΎΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π΄Π»Ρ Android ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ΅Π΄Ρ, ΠΊΡΠΎΠΌΠ΅ Android Studio.
ΠΡΠ»ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Android SDK ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΡΠΎ Android Studio Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΊΠ°ΡΠ°Π΅Ρ ΠΈΡ . Android SDK β ΡΡΠΎ ΡΡΠ΅Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΎΠ΄ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΡΠΊΡΠΈΠΏΡΡ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ Ρ.Π΄.
ΠΠΎΠ»Π΅Π·Π½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ ΡΠΌΡΠ»ΡΡΠΎΡ Android, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΌΡΠ»ΡΡΠΎΡ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ Ρ Android Studio.
ΠΠΎΠ³Π΄Π° Π²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΏΠΎΠ½ΡΡΠΈΡΠΌΠΈ.
ΠΠ· ΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
Π½Π° Android
Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ΅ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ β ΡΡΠΎ ΡΠΎΡΠΊΠ° Π²Ρ ΠΎΠ΄Π°, ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android.
Π‘ΠΎΠ·Π΄Π°ΡΠΌ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
Π² Android Studio
Π¨Π°Π³ 1
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΄ΠΎΠΌΠ΅Π½ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΏΡΡΡ ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ°. Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, Π²ΠΊΠ»ΡΡΠΈΡΡ Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C++ ΠΈ Kotlin.
Π¨Π°Π³ 2
ΠΠ°Π΄Π°ΡΠΌ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»Π΅Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ SDK ΠΈ AVD, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² Android. ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π² SDK ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΡΠΈΠΉ ΠΠ‘ Android ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ²Π½Π΅ΠΉ API (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ).
Π§Π΅ΠΌ Π½ΠΈΠΆΠ΅ Π²Π΅ΡΡΠΈΡ Android, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡΡ. Π§Π΅ΠΌ Π²ΡΡΠ΅ Π²Π΅ΡΡΠΈΡ, ΡΠ΅ΠΌ Π±ΠΎΠ³Π°ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ API.
Π¨Π°Π³ 3
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΠΈΠΊΠΎΠ½ΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈ Π΄Π°ΡΠΌ Π΅ΠΉ ΠΈΠΌΡ.
Π¨Π°Π³ 4
ΠΠΎΡΠ»Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ Android Studio ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ IDE. ΠΠ΄Π΅ΡΡ ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ°.
Android Studio β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Google Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ 2 ΠΠ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ 4 ΠΠ. ΠΠΎ ΠΌΠΎΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΠ ΠΈΠΌΠ΅Π΅Ρ 8 ΠΠ, ΠΈ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠΎΡΠΌΠΎΠ·ΠΈΡ:
ΠΠΎΠ³Π΄Π° Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½ΠΎ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΌΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ, ΠΎΡΠΊΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ Ρ. Π΄.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Android β cΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΡΡΠΎΠ±Ρ Ρ Π²Π°Ρ Π²ΡΠ±ΡΠ°Π½Π° ΠΎΠΏΡΠΈΡ Β« Phone and Tablet Β», Π° Π΄Π»Ρ Β« Minimum SDK Β» ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ β API 15: Android 4.0.3. ΠΠ»Ρ ΠΎΠΏΡΠΈΠΉ Β« Wear Β» ΠΈ Β« TV Β» ΡΠ»Π°ΠΆΠΊΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ.
Π Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β« Add an activity to Mobile Β» ΠΎΡΡΠ°Π²ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Β« Blank Activity Β» ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« Next Β». Π Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β« Customize the Activity Β» ΠΎΡΡΠ°Π²ΡΡΠ΅ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« Finish Β»:
ΠΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠ΅Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ( IDE ) Π·Π°ΠΏΡΡΠ΅Π½Π°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ ( ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ ). ΠΡΠ»ΠΈ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ IDE ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Β« Rendering Problems: Rendering failed with known bug Β», Π½Π°ΠΆΠΌΠΈΡΠ΅ ΡΡΡΠ»ΠΊΡ Β« rebuild Β», ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΡΠ΄ΠΎΠΌ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΡΡΠ΅Π΄Ρ IDE Π΄Π΅Π»ΠΈΡΡΡ Π½Π° ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ ( Π½Π΅ ΡΡΠΈΡΠ°Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ Ρ. Π΄. ). Π‘Π»Π΅Π²Π° ΡΠ²Π΅ΡΡ Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π‘ΠΏΡΠ°Π²Π° ΠΎΡ Π½Π΅Π³ΠΎ β ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΊΠΎΠ΄Π°, Π° ΠΏΠΎΠ΄ Π½ΠΈΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π°Π½Π΄ΡΠΎΠΈΠ΄ β Π΄Π΅ΡΠ΅Π²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π ΡΠ·Π»Π΅ Β« app Β» Π΄Π΅ΡΠ΅Π²Π° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ·Π»ΠΎΠ² ( Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΏΠΊΠΈ ), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ. Π£Π·Π»Π°ΠΌΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠ²Π»ΡΡΡΡΡ β manifests β, β java β ΠΈ β res β. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ β ΡΡΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ β resources β.
Π β manifests β ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΡΠ°ΠΉΠ» Β« AndroidManifest.xml Β», ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π΅Π³ΠΎ. ΠΡΠΎ XML-ΡΠ°ΠΉΠ» Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅. Π§Π°ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΡΠΌ Π² ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π΄Π΅ΡΡ Π½ΠΈΡΠ΅Π³ΠΎ ΠΌΠ΅Π½ΡΡΡ.
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android β Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠ½ΠΎΠΏΠΊΡ Ρ ΠΌΠ΅ΡΠΊΠΎΠΉ Β« Tap Me! Β», ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Β« Hello world! Β» Π½Π° Β« Tap me if you dare! Β». Π ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠ΅Π½ΡΠ΅ΠΌ Π΅Π³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»Π°ΡΡ Π² ΡΠ΅Π½ΡΡΠ΅. Π Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΡΡ ΡΠ΅ΠΊΡΡ Β« toast Β»!
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ ΠΈ Π΅Π³ΠΎ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ. Π‘Π½Π°ΡΠ°Π»Π° Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π² Π΄Π΅ΡΠ΅Π²Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΠΉΠ» Β« activity_main.xml Β» ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Π½Π΅ΠΌΡ. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Β« activity_main.xml Β» β ΡΡΠΎ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. Π Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π° ΠΊΠΎΠ΄Π° Π΅ΡΡΡ Π΄Π²Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ: Β« Design Β» ΠΈ Β« Text Β». ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ Β« Design Β».
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΊΡΡ Β« Hello world! Β», ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π² ΠΎΠΊΠ½Π΅ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠΊΡΠ°Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½Π°. ΠΡΠ»ΠΈ ΠΎΠ½ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ°Π», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ( Π»ΡΠΏΠ° ΡΠΎ Π·Π½Π°ΡΠΊΠΎΠΌ Β«ΠΏΠ»ΡΡΒ» ).
Π ΠΎΠΊΠ½Π΅ ΡΠ²ΠΎΠΉΡΡΠ², ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ ΡΠΏΡΠ°Π²Π° ΠΎΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°, ΠΏΡΠΎΠΊΡΡΡΠΈΡΠ΅ ΡΠΊΡΠ°Π½ Π²Π½ΠΈΠ· Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ Π½Π°Π΄ΠΏΠΈΡΡ Β« layout: centerInParent Β». ΠΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΏΡΠΎΠ±Π΅Π»Ρ ΡΡΠ΄ΠΎΠΌ Ρ Π½Π΅ΠΉ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Β« horizontal Β». ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡ Β« Hello world! Β» ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡΡ Π² ΡΠ΅Π½ΡΡ:
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΡΡ ΡΡΡΠΎΠΊΡ:
ΠΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ ΠΈ Π΅Π³ΠΎ ΡΠ΅ΠΊΡΡ. Π’Π΅ΠΏΠ΅ΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠ½ΠΎΠΏΠΊΡ. ΠΠ΅ΡΠ½ΠΈΡΠ΅ΡΡ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ Β« Design Β» ΡΠ°ΠΉΠ»Π° Β« activity_main.xml Β», Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΏΠΈΡΠΊΠ΅ Β« Palette Β» ΡΠ»Π΅Π²Π° ΠΎΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΌΠ°ΡΡΡΠΎΠ½Π° ΠΏΡΠ½ΠΊΡ Β« Button Β» ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° Π½Π΅Π³ΠΎ. Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ΄ Π½Π°Π΄ΠΏΠΈΡΡΡ Β« Tap me if you dare! Β».
ΠΠ²Π°ΠΆΠ΄Ρ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΅Π΅ ΡΠ΅ΠΊΡΡ. Π ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ β text: β ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Ρ ΡΡΠ΅ΠΌΡ ΡΠΎΡΠΊΠ°ΠΌΠΈ, Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° Π½Π΅Π΅. Π ΠΎΠΊΠ½Π΅ Β« Resources Β» Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« New Resource Β», Π° Π·Π°ΡΠ΅ΠΌ Β« New String Valueβ¦ Β». Π ΠΏΠΎΠ»Π΅ Β« Resource name: Β» Π²Π²Π΅Π΄ΠΈΡΠ΅ Β« tapme Β», Π° Π² ΠΏΠΎΠ»Π΅ Β« Resource value: Β» β β Tap me! β. ΠΠ°ΡΠ΅ΠΌ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« ΠΠ Β». Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° β Tap me! β.
ΠΠ΅ΡΠ½ΠΈΡΠ΅ΡΡ Π² ΡΠ°Π·Π΄Π΅Π» ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΡΠ°ΠΉΠ»Π° Β« activity_main.xml Β», Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΡΠ²ΠΎΠΉΡΡΠ² Π΄ΠΎ ΠΏΡΠ½ΠΊΡΠ° Β« onClick Β». ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ»Π΅ ΡΠΏΡΠ°Π²Π°, ΠΈ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Β« onButtonTap Β», ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ.
ΠΠΎΡ ΠΈ Π²ΡΠ΅, ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΠ½Π΄ΡΠΎΠΈΠ΄ ΡΠ°ΠΌΠΎΠΌΡ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Π² ΡΠΌΡΠ»ΡΡΠΎΡΠ΅.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π°Π½Π΄ΡΠΎΠΈΠ΄ β ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΠ ΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ° Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π·Π°ΠΏΡΡΠΊ ΡΠΌΡΠ»ΡΡΠΎΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠΌΡΠ»ΡΡΠΎΡ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΌΠ΅Π½Ρ Β« Tools Β» ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« Run βapp Β». ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΡΠΌΡΠ»ΡΡΠΎΡ. ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠΎΠ³ΠΎ Android Studio ΡΠΏΡΠΎΡΠΈΡ Π²Π°Ρ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ. ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠΏΡΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« OK Β»:
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² ΡΠΌΡΠ»ΡΡΠΎΡΠ΅. ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ β Tap me! β β Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΡΠΊΡΠ°Π½Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ, Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ!
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ Π΄Π°Π»ΡΡΠ΅ ΠΈ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎ ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ Π²Π°ΠΌ ΡΡΠΎΠΈΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΡΡΠΈΡΡΡΡ!
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΌΠ½Π΅Π½ΠΈΡ ΠΏΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠ΅ΠΌΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°. ΠΠ° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π»Π°ΠΉΠΊΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ, Π΄ΠΈΠ·Π»Π°ΠΉΠΊΠΈ, ΠΎΡΠΊΠ»ΠΈΠΊΠΈ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ Π²Π°ΠΌ ΡΠΏΠ°ΡΠΈΠ±ΠΎ!
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΡΡΠ°Π²Π»ΡΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΎΡΠ·ΡΠ²Ρ ΠΏΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠ΅ΠΌΠ΅ ΡΡΠ°ΡΡΠΈ. ΠΡ ΠΊΡΠ°ΠΉΠ½Π΅ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½Ρ Π²Π°ΠΌ Π·Π° Π²Π°ΡΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΠΎΡΠΊΠ»ΠΈΠΊΠΈ, Π΄ΠΈΠ·Π»Π°ΠΉΠΊΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ, Π»Π°ΠΉΠΊΠΈ!
ΠΠΈΡΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android
Π Π»ΡΠ±ΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ°ΠΌΠΎΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ β ΡΡΠΎ Π½Π°ΡΠ°Π»ΠΎ. Π§Π°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ ΡΡΠΆΠ΅Π»ΠΎ Π²ΠΎΠΉΡΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ, Ρ ΡΠ΅ΠΌ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ ΠΈ Ρ, ΡΠ΅ΡΠΈΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ²ΠΎΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°ΡΡΠΎΡΡΠ°Ρ ΡΡΠ°ΡΡΡ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ Π½Π°ΡΠ°ΡΡ, Π½ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ Ρ ΡΠ΅Π³ΠΎ.
Π‘ΡΠ°ΡΡΡ Π·Π°ΡΡΠΎΠ½Π΅Ρ Π²Π΅ΡΡ ΡΠΈΠΊΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΌΠ΅ΡΡΠ΅ ΠΌΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΡΡ ΠΈΠ³ΡΡ βΠΡΠ΅ΡΡΠΈΠΊΠΈ-ΠΠΎΠ»ΠΈΠΊΠΈβ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΊΡΠ°Π½ΠΎΠΌ (Π² ΠΠ‘ Android ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Activity).
ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΠΏΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Java Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡΠ°ΡΡ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΠ΅ΠΌ Π² ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠΈ Android. Π’Π°ΠΊ, Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ Java ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ (ΠΈΠ»ΠΈ ΠΎΠ½ΠΈ Π±ΡΠ΄Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° ΡΡΠΎΠ»ΡΠΊΠΎ, Π½Π° ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ). ΠΡΠ»ΠΈ ΠΡ ΠΏΠΈΡΠ΅ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° PHP ΠΈ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΡΠΈΠΌΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌΠΈ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΠ, ΡΡΠ° ΡΡΠ°ΡΡΡ Π±ΡΠ΄Π΅Ρ Π²Π°ΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Π°. Π ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ°ΠΊ ΠΊΠ°ΠΊ, Ρ Π½Π΅ ΡΠ²Π»ΡΡΡΡ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠΌ ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° Java, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ, ΡΡΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΡΠ΅Ρ Π½Π° Π»Π΅ΠΉΠ±Π» βΠ»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Javaβ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ ΡΡΠΈΠ»ΠΈΡ
Π£ΡΠΈΠ»ΠΈΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. Π‘ΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ IDE ΡΠΌΡΡΠ»Π° Π½Π΅Ρ (ΡΠ°Π·Π²Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΡ ΠΈΡΠΏΡΡΡΠ²Π°Π΅ΡΠ΅ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅ΠΉ). Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ IntelliJ IDEA Community Edition, ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°Π·Π²ΠΈΡΡΡ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ IDE Π΄Π»Ρ Java.
ΠΠ°ΠΏΡΡΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
ΠΠ°ΠΏΡΡΡΠΈΠ² AVD Manager ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ (SDK ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²Π΅ΡΡΠΈΠΉ), ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. Π Π°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΡΠ΄Π°.
Π‘ΠΏΠΈΡΠΎΠΊ ΡΡΡΡΠΎΠΉΡΡΠ²
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ½Π΅ Π²ΡΠ΅Π³Π΄Π° Π½Π΅ ΡΠ΅ΡΠΏΠΈΡΡΡ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅, ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² IDE, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠ΅ΠΊΡ ΡΡΠ΅Π±Π½ΡΠΉ ΠΈ Π½Π° ΠΏΡΠΎΠ΄Π°ΠΊΡΠ½ Π½Π΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΡΠ΅Ρ.
ΠΡΠ°ΠΊ, File->New Project:
ΠΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ F6 ΠΏΡΠΎΠ΅ΠΊΡ ΡΠΎΠ±Π΅ΡΠ΅ΡΡΡ, ΠΎΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡΡ Π½Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌ Π΄Π΅Π²Π°ΠΉΡΠ΅.
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π²ΠΈΠ΄Π½Π° ΡΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΡΠ΅ΡΠ»Π΅Π΄ΡΠ΅ΠΌ ΡΡΠ³ΡΠ±ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅Π»ΠΈ, Π·Π°ΠΎΡΡΡΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π»ΠΈΡΡ Π½Π° ΡΠ΅Ρ ΠΏΠ°ΠΏΠΊΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ: gen, res ΠΈ src.
Π ΠΏΠ°ΠΏΠΊΠ΅ gen Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΡΡΠ½ΡΡ ΠΈΡ ΠΌΠ΅Π½ΡΡΡ Π½Π΅Π»ΡΠ·Ρ.
ΠΠ°ΠΏΠΊΠ° res ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, ΡΠ΅ΠΊΡΡΡ (Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ), Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΌΠ°ΠΊΠ΅ΡΡ (layouts).
src β ΡΡΠΎ ΠΏΠ°ΠΏΠΊΠ° Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ°ΡΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΈΠ±ΠΎ ΡΡΡ Ρ ΡΠ°Π½ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ΅ΡΠ²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Activity (ΡΠΊΡΠ°Π½ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ), Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ onCreate(). IDE Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ»Π° Π΅Π³ΠΎ 2 ΡΡΡΠΎΡΠΊΠ°ΠΌΠΈ:
ΠΠ΅ΡΠΎΠ΄ setContentView (ΡΠ°Π²Π½ΠΎΡΠΈΠ»ΡΠ½ΠΎ this.setContentView) ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ xml-ΠΌΠ°ΠΊΠ΅Ρ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΊΡΠ°Π½Π°. ΠΠ°Π»Π΅Π΅ xml-ΠΌΠ°ΠΊΠ΅ΡΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ Β«layoutΒ», Π° ΡΠΊΡΠ°Π½Ρ β Β«ActivityΒ». Layout Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ TableLayout. Id ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π»ΡΠ±ΠΎΠΌΡ ΡΠ΅ΡΡΡΡΡ. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, TableLayout ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° findViewById() ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²ΠΈΠ΄Ρ:
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ buildGameField(). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π΅ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°ΡΡΠΈΡΡ. ΠΡΠΈΠΌ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΊΠ»Π°ΡΡ Game. Π‘Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡ Square Π΄Π»Ρ ΡΡΠ΅Π΅ΠΊ ΠΈ ΠΊΠ»Π°ΡΡ Player, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠΈ ΡΡΠ΅ΠΉΠΊΠΈ.
Square.java
Player.java
ΠΡΠ΅ ΠΊΠ»Π°ΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ src.
Game.java
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Game Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ KrestikinolikiActivity.
ΠΠ΅ΡΠΎΠ΄ buildGameField() ΠΊΠ»Π°ΡΡΠ° KrestikinolikiActivity. ΠΠ½ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² ΡΠ°Π±Π»ΠΈΡΡ (ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅):
Π ΡΡΡΠΎΠΊΠ΅ 8 ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ View.OnClickListener. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ Listener. ΠΠ½ Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄Π΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· KrestikinolikiActivity.
ΠΡΡΠ°Π»ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΠΈΠ³ΡΡ.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ
Π. Π. ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π² ΠΊΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ Π²ΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠΎΡ, ΠΊΡΠΎ Π²ΡΡΡΡΠΎΠ΅Ρ X ΠΈΠ»ΠΈ O Π² Π»ΠΈΠ½ΠΈΡ Π΄Π»ΠΈΠ½ΠΎΠΉ, ΡΠ°Π²Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ ΠΏΠΎΠ»Ρ ΠΏΠΎ-Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎ-Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎ-Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. ΠΠ΅ΡΠ²Π°Ρ ΠΌΡΡΠ»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π² Π³ΠΎΠ»ΠΎΠ²Ρ β ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°Ρ. ΠΡΠΌΠ°Ρ, Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ ΠΏΠ°ΡΡΠ΅ΡΠ½ Chain of Responsobility. ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
Π’Π°ΠΊ ΠΊΠ°ΠΊ Game Π½Π°Π΄Π΅Π»Π΅Π½ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΡΡ Π²ΡΡΠ²Π»ΡΡΡ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ, ΠΎΠ½ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠ°ΡΡΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Β«Π»Π°ΠΉΠ½ΡΠΌΠ΅Π½ΠΎΠ²Β», ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ²ΠΎΡ ΡΡΠΎΡΠΎΠ½Ρ. ΠΡΠ΅ ΠΎΠ½ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ WinnerCheckerInterface.
WinnerCheckerHorizontal.java
WinnerCheckerVertical.java
WinnerCheckerDiagonalLeft.java
WinnerCheckerDiagonalRight.java
ΠΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΠΈΡ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ Game:
ΠΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ ΠΎΠ΄Π°. ΠΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄Π° Π² ΠΌΠ΅ΡΠΎΠ΄ onClick() ΠΊΠ»Π°ΡΡΠ° Listener
ΠΠ΅ΡΠΎΠ΄ gameOver() ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² 2-Ρ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ :
ΠΠ»Ρ Java, gameOver(Player player) ΠΈ gameOver() β ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ. ΠΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠΈΡΡ Builder’ΠΎΠΌ Toast.makeText, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅. refresh() ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΠ»Ρ:
ΠΠΎΡΠΎΠ²ΠΎ! ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° ΠΠ°ΠΌ ΠΎΡΠ²ΠΎΠΈΡΡΡΡ Π² ΠΌΠΈΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ΄ OS Android. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!
ΠΠΈΠ΄Π΅ΠΎ Π³ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
PS: ΡΡΠ°ΡΡΡ Π±ΡΠ»Π° ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° ΠΏΠΎ ΠΏΡΠΎΡΡΠ±Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΎΡΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°.