|
15 | 15 |
|
16 | 16 | ## Overview |
17 | 17 |
|
18 | | -**Arduino IDE Modern for Android** brings the complete power of the desktop Arduino development environment to mobile devices. The mobile client is implemented natively in **Kotlin** with the standard Android toolchain so GitHub Actions (and your local Android Studio) can assemble installable APKs without any Python or Qt deployment steps. |
| 18 | +**Arduino IDE Modern for Android** brings the complete power of the desktop Arduino development environment to mobile devices. The mobile client is implemented natively in **Kotlin** with the standard Android toolchain so GitHub Actions (and your local Android Studio) can assemble installable APKs without any external Python runtimes or Qt deployment steps. |
19 | 19 |
|
20 | 20 | Whether you're prototyping on the go, teaching Arduino in classrooms without computers, or debugging projects in the field, Arduino IDE Modern for Android provides a professional-grade development experience optimized for touchscreen interfaces. |
21 | 21 |
|
@@ -112,7 +112,7 @@ All major desktop features adapted for mobile: |
112 | 112 | - **Debugging**: GDB/MI support via USB or WiFi debugging |
113 | 113 | - **Version Control**: Git integration with visual diff viewer |
114 | 114 | - **Collaboration**: Real-time multi-user editing sessions |
115 | | -- **Plugin System**: Installable extensions via APK or Python packages |
| 115 | +- **Plugin System**: Installable extensions distributed as APK-delivered plugins |
116 | 116 | - **Code Quality**: Real-time analysis and suggestions |
117 | 117 | - **Examples Library**: 100+ pre-loaded Arduino examples |
118 | 118 |
|
@@ -160,7 +160,7 @@ Coming Soon - Currently in Beta Testing |
160 | 160 |
|
161 | 161 | #### Prerequisites |
162 | 162 |
|
163 | | -The Android build is now driven by a committed Android Studio/Gradle project under `android/android-studio/`. **Everything is native Kotlin**—no Buildozer, `python-for-android`, or Qt deployment is required. Install the following: |
| 163 | +The Android build is driven by a committed Android Studio/Gradle project under `android/android-studio/`. **Everything is native Kotlin**—no Buildozer, `python-for-android`, or Qt deployment is required. Install the following: |
164 | 164 |
|
165 | 165 | - Java 11 or 17 (for the Gradle Android plugin) |
166 | 166 | - Android SDK (API 34 recommended) and command-line tools |
@@ -437,7 +437,7 @@ A: Depends on your device's USB OTG power output. Most phones provide 5V at 500m |
437 | 437 | ### App Questions |
438 | 438 |
|
439 | 439 | **Q: Why is the app size so large?** |
440 | | -A: The app bundles Python runtime, Qt framework, and Arduino CLI. Total size ~150-200 MB to ensure offline functionality. |
| 440 | +A: The app bundles Kotlin resources, Arduino CLI assets, and offline-friendly example content. Expect a footprint sized for on-device compilation while keeping native dependencies minimal. |
441 | 441 |
|
442 | 442 | **Q: Does it drain battery quickly?** |
443 | 443 | A: Normal editing uses minimal battery. Active serial monitoring or compilation increases usage. Enable battery saver mode in app settings. |
@@ -491,30 +491,22 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md) for guidelines. |
491 | 491 |
|
492 | 492 | ### Technology Stack |
493 | 493 |
|
494 | | -- **Python 3.11**: Core application logic embedded via PySide6/Qt for Android |
495 | | -- **PySide6 + Qt for Android**: Qt 6 framework with the Qt Android deploy + Gradle toolchain |
| 494 | +- **Kotlin + Jetpack**: Native Android application and UI layers |
| 495 | +- **Material 3**: Modern theming and components |
496 | 496 | - **Gradle + Android SDK/NDK**: Packaging, signing, and APK generation |
497 | | -- **Arduino CLI ARM64**: Native ARM compilation binary |
498 | | -- **Kivy**: Alternative UI framework for some components |
| 497 | +- **Arduino CLI ARM64**: Native ARM compilation binary for verification and upload workflows |
| 498 | +- **View Binding**: Type-safe view access without synthetic imports |
499 | 499 |
|
500 | 500 | ### App Structure |
501 | 501 |
|
502 | 502 | ``` |
503 | 503 | android/ |
504 | 504 | ├── README.md # This guide |
505 | | -├── BUILD_ANDROID.md # Additional build notes |
| 505 | +├── BUILD_ANDROID.md # Android Studio build notes |
506 | 506 | ├── ANDROID_ROADMAP.md # Feature roadmap |
507 | | -├── main.py # Android application entry point |
508 | | -├── ui_mobile/ # Mobile-optimized UI components |
509 | | -│ ├── touch_editor.py # Touch-friendly code editor |
510 | | -│ ├── mobile_toolbar.py # Compact toolbar for phones |
511 | | -│ └── gesture_handler.py # Touch gesture recognition |
512 | | -├── services_mobile/ # Android-specific services |
513 | | -│ ├── usb_service.py # USB OTG communication |
514 | | -│ ├── bluetooth_service.py # BLE and Classic Bluetooth |
515 | | -│ └── storage_service.py # Scoped storage handling |
516 | | -├── p4a-recipes/ # Legacy p4a recipes (not used by the Qt/Gradle toolchain) |
517 | | -└── android-studio/ # Committed Android Studio/Gradle project (open directly in IDE) |
| 507 | +├── APK/ # Legacy placeholder artifacts (not the current Kotlin build) |
| 508 | +├── android-studio/ # Committed Android Studio/Gradle project (open directly in IDE) |
| 509 | +└── runtime/ # Legacy runtime staging (Qt/PySide6 placeholders; unused by Kotlin build) |
518 | 510 | ``` |
519 | 511 |
|
520 | 512 | --- |
@@ -544,9 +536,8 @@ This project is licensed under the MIT License, same as the desktop version. See |
544 | 536 | ## Acknowledgments |
545 | 537 |
|
546 | 538 | - **Arduino Team**: For the Arduino platform and Arduino CLI |
547 | | -- **Qt for Android**: For excellent cross-platform mobile framework |
548 | | -- **PySide6 + Qt for Android**: For enabling Python apps on Android with Qt |
549 | | -- **Kivy Community**: For mobile UI components |
| 539 | +- **Jetpack + Android Studio teams**: For the Kotlin-first Android tooling |
| 540 | +- **Open-source library authors**: For the Android components that power the app |
550 | 541 | - **Beta Testers**: Everyone testing on their Android devices |
551 | 542 |
|
552 | 543 | --- |
|
0 commit comments