
Attach HN: Building mobile apps in rust and flutter
I love plugins, due to they are the unbelievable!
xbuild is a fabricate tool for rust and rust/flutter initiatives with beef up for negative compiling debug
builds and packaging/publishing for all essential retail outlets. The purpose of xbuild is making native app development
as easy as web development.
Getting started
Set up xbuild
:
Form a novel project:
x novel helloworld tree helloworld helloworld ├── api.rsh ├── fabricate.rs ├── Cargo.toml ├── lib │ └── essential.walk ├── pubspec.yaml ├── rust-toolchain.toml └── src ├── lib.rs └── essential.rs 2 directories, 8 recordsdata
Checklist linked devices:
x devices host Linux linux x64 Arch Linux 5.16.10-arch1-1 adb: 16ee50bc FP4 android arm64 Android 11 (API 30) imd: 55abbd4b70af4353bdea2595bbddcac4a2b7891a David’s iPhone ios arm64 iPhone OS 15.3.1
Form or hobble on a tool:
x fabricate --tool adb: 16ee50bc [1/9] Win flutter repo [SKIPPED] [2/9] Win precompiled artefacts [2/9] Win precompiled artefacts [7ms] [3/9] Scamper pub rating [SKIPPED] [4/9] Form rust Performed dev [unoptimized + debuginfo] goal(s) in 0.04s [4/9] Form rust [112ms] [5/9] Form classes.dex [SKIPPED] [6/9] Form flutter belongings [2ms] [7/9] Form kernel_blob.bin [SKIPPED] [8/9] Form aot snapshot [SKIPPED] [9/9] Form apk [4316ms]
Scope and barriers of x
Flutter plugins might no longer be supported.
Faulty compiling originate builds is currently no longer that you just’d mediate for about a reasons:
- walk/flutter lacks beef up for negative compiling aot snapshots
- constructing a dmg depends on hdiutil (macos simplest)
Android
- Building Android app bundles is no longer utilized yet (#6).
- Give a take care of to debugging ride (#28).
Ios
- ios-deploy admire tool (#40).
Linux
- Appimage signing has no longer been utilized yet (#5).
Macos
- Release fabricate signing and notarization has no longer been utilized yet (#34).
Windows
- Msix packaging has no longer been utilized yet (#33).
Troubleshooting
Scream no longer found
x doctor
might accrued wait on you understand if there are any external instruments lacking.
—————————-misc—————————-
cargo 1.60.0 /usr/bin/cargo
git 2.35.1 /usr/bin/git
flutter 2.10.4 /usr/bin/flutter
————————–android—————————
adb 1.0.41 /opt/android-sdk/platform-tools/adb
javac 11.0.15 /usr/bin/javac
java 11.0.15 /usr/bin/java
—————————-ios—————————–
idevice_id 1.3.0-83-g5b8c9a8 /usr/bin/idevice_id
ideviceinfo 1.3.0-83-g5b8c9a8 /usr/bin/ideviceinfo
ideviceinstaller 1.1.1 /usr/bin/ideviceinstaller
ideviceimagemounter 1.3.0-83-g5b8c9a8 /usr/bin/ideviceimagemounter
idevicedebug 1.3.0-83-g5b8c9a8 /usr/bin/idevicedebug
—————————linux—————————-
mksquashfs 4.5.1 /usr/bin/mksquashfs
—————————macos—————————-
hdiutil not found”>
x doctor --------------------clang/llvm toolchain-------------------- clang 13.0.1 /usr/bin/clang clang++ 13.0.1 /usr/bin/clang++ llvm-ar unknown /usr/bin/llvm-ar llvm-lib unknown /usr/bin/llvm-lib lld 13.0.1 /usr/bin/lld lld-hyperlink 13.0.1 /usr/bin/lld-hyperlink lldb 13.0.1 /usr/bin/lldb lldb-server unknown /usr/bin/lldb-server ----------------------------misc---------------------------- cargo 1.60.0 /usr/bin/cargo git 2.35.1 /usr/bin/git flutter 2.10.4 /usr/bin/flutter --------------------------android--------------------------- adb 1.0.41 /decide/android-sdk/platform-instruments/adb javac 11.0.15 /usr/bin/javac java 11.0.15 /usr/bin/java ----------------------------ios----------------------------- idevice_id 1.3.0-83-g5b8c9a8 /usr/bin/idevice_id ideviceinfo 1.3.0-83-g5b8c9a8 /usr/bin/ideviceinfo ideviceinstaller 1.1.1 /usr/bin/ideviceinstaller ideviceimagemounter 1.3.0-83-g5b8c9a8 /usr/bin/ideviceimagemounter idevicedebug 1.3.0-83-g5b8c9a8 /usr/bin/idevicedebug ---------------------------linux---------------------------- mksquashfs 4.5.1 /usr/bin/mksquashfs ---------------------------macos---------------------------- hdiutil no longer found
error: didn’t hobble customized fabricate show for glib-sys v0.14.0
This technique that gtk3-dev
is no longer put in. Set up gtk3-dev
package to repair the subject.
No devices found with title or id matching ‘linux’.
Scamper flutter config --enable-linux-desktop
.
Hunch Error: Can no longer load Kernel binary: Invalid SDK hash.
This happens when flutter join
and x
spend various flutter versions. To repair this hobble
x update
for your project folder and git checkout true && git pull
for your flutter sdk.
Producing apple signing key/certificates
Glance apple_codesign_certificate_management for further knowledge.
Producing mobile provisioning profiles
With out an apple developer account there isn’t any negative platform system of producing mobile provisioning
profiles. You will either figure out how to generate it utilizing xcode or cook.
License
Apache-2.0 OR MIT
Read More
Part this on knowasiak.com to focus on with other folks on this subjectImprint in on Knowasiak.com now if you’re no longer registered yet.