Code Monkey home page Code Monkey logo

cargo-mobile's People

Contributors

arasan01 avatar arthurkvalladares avatar cactice avatar davidkern avatar expectocode avatar francesca64 avatar inokawa avatar logan-brainium avatar msiglreith avatar mtak- avatar mworleybr avatar rsnively avatar spensbot avatar trindadegm avatar zeerooth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cargo-mobile's Issues

Feature request: Support launching in Xcode Simulator

It would be really nice to be able to debug iOS applications programs by launching them in the Xcode Simulator. Trying to do this inside Xcode currently results in the following error:

[2022-06-11T00:00:00Z INFO  cargo_mobile::util::cli] exiting with ArchInvalid {
        arch: "Simulator",
    }
error: Arch specified by Xcode was invalid
    "Simulator" isn't a known arch

Cannot run an app on iOS

Reproduction steps

  1. Start new app with cargo mobile init
  2. Choose winit as the template
  3. Plug the iOS device in
  4. Run cargo mobile apple run

Overview

Ran into this issue trying to deploy an app generated from template on iOS

Detected connected device: X’s iPhone (iPhone 11) with target "aarch64-apple-ios"
Building app...
2023-02-05 22:11:16.210 xcodebuild[3096:28320]  DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot1/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/DVTiOSFrameworks/DVTiOSFrameworks-21506/DTDeviceKitBase/DTDKRemoteDeviceData.m:382
Details:  (null) deviceType from 00008030-001529310278C02E was NULL when -platform called.
Object:   <DTDKMobileDeviceToken: 0x7fab3ff3f4d0>
Method:   -platform
Thread:   <NSThread: 0x600001a7f040>{number = 8, name = (null)}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2023-02-05 22:11:16.464 xcodebuild[3096:28448]  DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot1/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/DVTiOSFrameworks/DVTiOSFrameworks-21506/DTDeviceKitBase/DTDKRemoteDeviceData.m:382
Details:  (null) deviceType from 00008030-001529310278C02E was NULL when -platform called.
Object:   <DTDKMobileDeviceToken: 0x7fab3ff3f4d0>
Method:   -platform
Thread:   <NSThread: 0x600001a5e400>{number = 10, name = (null)}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2023-02-05 22:11:16.557 xcodebuild[3096:28448]  DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot1/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/DVTiOSFrameworks/DVTiOSFrameworks-21506/DTDeviceKitBase/DTDKRemoteDeviceData.m:382
Details:  (null) deviceType from 00008030-001529310278C02E was NULL when -platform called.
Object:   <DTDKMobileDeviceToken: 0x7fab3ff3f4d0>
Method:   -platform
Thread:   <NSThread: 0x600001a5e400>{number = 10, name = (null)}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX }
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:iOS Simulator, id:55DF6743-0493-4DFE-98CB-BE657C8C4B98, OS:16.1, name:iPad (10th generation) }
{ platform:iOS Simulator, id:899F089C-0E95-4136-B8DC-A67FA9BEB4E6, OS:16.1, name:iPad Air (5th generation) }
{ platform:iOS Simulator, id:F793355C-09C2-437B-8E87-2DF5C77D6275, OS:16.1, name:iPad Pro (11-inch) (4th generation) }
{ platform:iOS Simulator, id:82ACCE55-A1CA-4E7E-AC67-97159588C056, OS:16.1, name:iPad Pro (12.9-inch) (6th generation) }
{ platform:iOS Simulator, id:65B25A9C-A8C4-42B0-9BBD-C8675BA8BDAE, OS:16.1, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:C72C55B3-7848-420C-8936-273E5ED372A2, OS:16.1, name:iPhone 14 }
{ platform:iOS Simulator, id:3257F8EB-5683-4C84-9282-3C32A516AFF0, OS:16.1, name:iPhone 14 Plus }
{ platform:iOS Simulator, id:B0B65806-DD8F-4043-A761-65789F064F68, OS:16.1, name:iPhone 14 Pro }
{ platform:iOS Simulator, id:39B749DD-1E78-4C08-938A-B1B733D45CD2, OS:16.1, name:iPhone 14 Pro Max }
{ platform:iOS Simulator, id:BD9C284D-F37F-4445-B879-103D2C817F01, OS:16.1, name:iPhone SE (3rd generation) }
note: Building targets in dependency order
/Users/x/Workspace/dioxus-mobile/gen/apple/dioxus-mobile.xcodeproj: error: Provisioning profile "iOS Team Provisioning Profile: com.example.dioxus-mobile" doesn't include the currently selected device "MacBook Pro (X)" (identifier XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX). (in target 'dioxus-mobile_iOS' from project 'dioxus-mobile')
note: Run script build phase 'Build Rust Code' will be run during every build because the option to run the script phase "Based on dependency analysis" is unchecked. (in target 'dioxus-mobile_iOS' from project 'dioxus-mobile')
** BUILD FAILED **

error: Failed to build via `xcodebuild`
    Command "xcodebuild -quiet -scheme dioxus-mobile_iOS -workspace
    /Users/x/Workspace/dioxus-mobile/gen/apple/dioxus-mobile.xcodeproj/project.xcworkspace/ -configuration debug -arch arm64
    -allowProvisioningUpdates build" didn't complete successfully, exiting with code 65.

For full context when I start xcode and start a new swift project it runs well on the same device.

What is interesting is that cargo mobile apple list returns:

  [0] X’s iPhone (iPhone 11)

it's available in xcode too; but in the error log above they're devices listed in the middle of the log and the device is not there:

{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX }
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:iOS Simulator, id:55DF6743-0493-4DFE-98CB-BE657C8C4B98, OS:16.1, name:iPad (10th generation) }
{ platform:iOS Simulator, id:899F089C-0E95-4136-B8DC-A67FA9BEB4E6, OS:16.1, name:iPad Air (5th generation) }
{ platform:iOS Simulator, id:F793355C-09C2-437B-8E87-2DF5C77D6275, OS:16.1, name:iPad Pro (11-inch) (4th generation) }
{ platform:iOS Simulator, id:82ACCE55-A1CA-4E7E-AC67-97159588C056, OS:16.1, name:iPad Pro (12.9-inch) (6th generation) }
{ platform:iOS Simulator, id:65B25A9C-A8C4-42B0-9BBD-C8675BA8BDAE, OS:16.1, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:C72C55B3-7848-420C-8936-273E5ED372A2, OS:16.1, name:iPhone 14 }
{ platform:iOS Simulator, id:3257F8EB-5683-4C84-9282-3C32A516AFF0, OS:16.1, name:iPhone 14 Plus }
{ platform:iOS Simulator, id:B0B65806-DD8F-4043-A761-65789F064F68, OS:16.1, name:iPhone 14 Pro }
{ platform:iOS Simulator, id:39B749DD-1E78-4C08-938A-B1B733D45CD2, OS:16.1, name:iPhone 14 Pro Max }
{ platform:iOS Simulator, id:BD9C284D-F37F-4445-B879-103D2C817F01, OS:16.1, name:iPhone SE (3rd generation) }

Environment

cargo 1.67.0 (8ecd4f20a 2023-01-10)
rustc 1.67.0 (fc594f156 2023-01-24)
cargo-mobile v0.1.0
Darwin MacBook-Pro-X.local 22.3.0 Darwin Kernel Version 22.3.0: Thu Jan 5 20:49:43 PST 2023; root:xnu-8792.81.2~2/RELEASE_ARM64_T8103

Broken android setup

I seem to have had a bad android studio setup on my computer for years from only occasionally having react native gigs and can't figure out how to fix it.

After some toiling I think I have a working installation but can't run a cargo mobile generated project. It works just fine on desktop and iOS simulator (without legacy build system even!) and am getting the following error:

error: Failed to locate required build tool
    Missing tool `ar`; tried at
    "/Users/me/Library/Android/sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/darwin-x86_64/bin/x86_64-linux-android-ar".

The file is indeed not in the folder it is looking in but I do see some -as files.

Could it be that I have upgraded beyond supported android studio? 😭 I don't know much about the build system or what I'm looking for but I did see this page saying certain things related to standalone toolchains are obsolete when googling things related to the error above.

Any help would be appreciated. I'm excited to finally be digging into a project with this tool!

About Linux Support, what should these functions do?

I was able to get the examples to run on Linux+Android on a fork of this repository. The thing is that I have some doubts about certain functions. I have no mac, so I'm really not sure on what they look like when working.

So those are detect_editor and open_file on src/os/macos/mod.rs. Now, the names seem intuitive enough but I have no idea of what CFURL is. Yet more important that that, I do not know of any Linux equivalent. Thankfully they are not "required" to make cargo mobile init, cargo android run or cargo android open. So most stuff works fine. Obviously apple won't work anyway so I didn't try any of those.

The open_file_with function on that same file is used to open Android Studio... by passing Android Studio on the string. That is currently working in a very ugly manner, as AFAIK there is no reliable way to launch applications by their name in a way that works in all Linux distros, but I may be wrong. Currently I just place a Android Studio link to studio.sh (from the actual installation) on my local path. It's ugly but it works. I'm still thinking on how to solve this problem properly. I was avoiding touching anything outside the "os" folder (had to add some #[cfg] stuff though).

The bevy-demo displays fine, the "ball" moving and stuff. The triangle also displays. Winit, well, creates the black window and gets the touch events. On the bevy sprite however, I can't see the sprite, I might try on a Samsung tablet later. I hope I can find the problem.

Failed to check Rust version on macOS when cargo mobile init

When I run cargo mobile init, It outputs the following error in the end:

error: Failed to check Rust version
    Failed to check rustc version: "rustc --version" output failed to match regex: "rustc 1.49.0\n"

The output if I run rustc --version is rustc 1.49.0. If any more info is needed, I would try my best to provide it.

Edit: I tested it on m1. Perhaps it's related to #7?

Why is `gen/` gitignored and how should we edit the files within

The name gen/ suggests it's short for generated.
Usually generated files shouldn't be edited so my expectation is that there is a way to customize the files within gen/ without editing them directly.
However, I am not sure how to customize the files within gen/ without editing the files themselves.

So for example, if I want to edit gen/apple/project.yml, then what is the recommended way to edit?

Android logcat level

Thanks for creating this tool - it is generally pretty ergonomic and I appreciate all the thought that has gone into it.

I did get stuck a bit with android logging, so I wanted to bring the issue up for discussion, and then I'd be happy to put up a PR if changes are desirable.

I had added a few debug and trace logs to my project and was confused for a bit why I couldn't get anything to display on the logcat started by cargo android run. I eventually figured out that I could add -vv to get more logging, but that wasn't clear at first. If I had any info level logs I may have figured it out sooner, but regardless, it wasn't clear that -vv was a thing until I read through the source.

So now I can at least see logs from the device. But with how the noise levels work currently I can only choose between warn, info or everything. I'd very much like to be able to limit this according to the standard android log levels. In particular, normally I would be interested in debug but not trace. While I do include trace logs in my debug builds, they are there for the rare case when that much detail is needed to figure out a bug. Typically I use debug for the troubleshoot-by-print dance as well as to emit periodic diagnostic data. But these get overwhelmed by the trace logs if they are enabled.

There are two ways I could think to add the ability to get debug but not trace:

Just add another noise level, so -vv gets you debug output but not trace, and -vvv gets everything. Pro: it is a small change, Con: it changes existing behavior

Add an additional option specifically for the device log level, e.g. --debug or --log=debug. Pro: doesn't change existing behavior, Con: bigger change and what should happen if verbosity and this new option are both provided.

What do you think?

NDK/SDK Environment Variables

Hi,

I was just looking at giving cargo-mobile a try and one initial little thing I noticed was that it didn't seem to recognise ANDROID_NDK_ROOT or ANDROID_NDK_HOME which I think are both standard environment variables for locating an Android NDK. (Normally I think I expect to switch between either of those and haven't used NDK_ROOT before)

For the SDK it also look cargo mobile considers ANDROID_HOME to be deprecated vs ANDROID_SDK_ROOT, which is incidentally the opposite of these docs: https://developer.android.com/studio/command-line/variables

I guess at this point there's not really any standard for these (lots of conflicting claims about which ones are standard) and I wonder if it could be most practical if cargo-mobile would just try all of these and maybe just show where the SDK/NDK are discovered (and by which variable) without needing to warn that any of the others are deprecated.

SDK:

ANDROID_SDK_HOME
ANDROID_SDK_ROOT
ANDROID_HOME

NDK:

ANDROID_NDK_HOME
ANDROID_NDK_ROOT
NDK_ROOT

E.g. in my case I already had my environment set up with ANDROID_NDK_ROOT and ANDROID_HOME before running cargo mobile init

Desktop: disable terminal

I compiled the binary against windows and run it. A command prompt is shown on the app startup. Adding #![windows_subsystem = "windows"] to the beginning of gen/bin/desktop.rs will prevent the terminal from showing up. I'd like a method to disable the terminal without manually tweaking the generated files.

I'd like to make a patch myself but couldn't find the corresponding template

Android app crashes every 2nd time

Hello,
I just tested building for android, got the exact dependency versions as listed in the setup document. I'm using the unmodified wry template and building on linux (arch).

  • rust version: rustc 1.67.0-nightly (96ddd32c4 2022-11-14) (also tried a 2 months old nightly with same result)

The app builds and runs on my phone, but after closing it gracefully (swiping it away), it crashes on next startup every time.
If I kill it, it works on the next run, so I guess something is running in the background that triggers the error on the next run.

I also built a kotlin webview app with the same SDK version and it doesn't have the issue.

I'm not familiar with android development, so if this is unrelated with the library feel free to close the issue.

Crash log logcat
--------- beginning of main
I/chatty  (  845): uid=1021(gps) LocApiMsgTask expire 3 lines
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null [packageName=rs.pedjaapps.alogcatroot.app](http://packagename=rs.pedjaapps.alogcatroot.app/) fieldId=16908298 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
--------- beginning of system
W/WindowManager( 1478): removeWindowToken: Attempted to remove non-existing token: android.os.Binder@69c4b37
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
W/System.err( 3447): java.io.IOException: Unexpected protocol: Unknown
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.w.a(Protocol.java:5)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.b(RealInterceptorChain.java:15)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.a(RealInterceptorChain.java:2)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.a.a.a(CacheInterceptor.java:22)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.b(RealInterceptorChain.java:10)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.a(RealInterceptorChain.java:2)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.a.a(BridgeInterceptor.java:22)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.b(RealInterceptorChain.java:10)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.j.a(RetryAndFollowUpInterceptor.java:7)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.b(RealInterceptorChain.java:10)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.a(RealInterceptorChain.java:2)
W/System.err( 3447): 	at com.bytedance.sdk.component.e.c.f.a(TncHostInterceptor.java:11)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.b(RealInterceptorChain.java:10)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.a.c.g.a(RealInterceptorChain.java:2)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.x.h(RealCall.java:12)
W/System.err( 3447): 	at com.bytedance.sdk.component.b.b.x.a(RealCall.java:8)
W/System.err( 3447): 	at com.bytedance.sdk.component.e.b.d.h(PostExecutor.java:13)
W/System.err( 3447): 	at com.bytedance.sdk.openadsdk.core.q.b(Unknown Source:75)
W/System.err( 3447): 	at com.bytedance.sdk.openadsdk.c.s.a(StatsEventThread.java:9)
W/System.err( 3447): 	at com.bytedance.sdk.openadsdk.c.h.f(AdEventThread.java:12)
W/System.err( 3447): 	at com.bytedance.sdk.openadsdk.c.h.d(AdEventThread.java:3)
W/System.err( 3447): 	at com.bytedance.sdk.openadsdk.c.h.handleMessage(AdEventThread.java:5)
W/System.err( 3447): 	at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err( 3447): 	at android.os.Looper.loop(Looper.java:223)
W/System.err( 3447): 	at android.os.HandlerThread.run(HandlerThread.java:67)
--------- beginning of kernel
I/FG      (    0): fg_battery_soc_smooth_tracking: soc:59, last_soc:59, raw_soc:59, soc_changed:1.
I/FG      (    0): soc_monitor_work: soc:59, raw_soc:59, c:-281738, s:1
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null [packageName=rs.pedjaapps.alogcatroot.app](http://packagename=rs.pedjaapps.alogcatroot.app/) fieldId=-1 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
D/logd    (    0): logdr: UID=0 GID=0 PID=14269 b tail=0 logMask=99 pid=0 start=0ns timeout=0ns
D/AndroidRuntime(14267): >>>>>> START com.android.internal.os.RuntimeInit uid 0 <<<<<<
I/AndroidRuntime(14267): Using default boot image
I/AndroidRuntime(14267): Leaving lock profiling enabled
I/app_process(14267): Core platform API reporting enabled, enforcing=false
D/OpenGLRenderer( 2160): endAllActiveAnimators on 0x7ae23baa70 (MenuPopupWindow$MenuDropDownListView) with handle 0x7a025c3d60
D/app_process(14267): Time zone APEX ICU file found: /apex/com.android.tzdata/etc/icu/icu_tzdata.dat
D/app_process(14267): I18n APEX ICU file found: /apex/com.android.i18n/etc/icu/icudt66l.dat
I/app_process(14267): The ClassLoaderContext is a special shared library.
W/app_process(14267): JNI RegisterNativeMethods: attempt to register 0 native methods for android.media.AudioAttributes
D/AndroidRuntime(14267): Calling main entry com.android.commands.content.Content
D/AndroidRuntime(14267): Shutting down VM
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
I/init    (    0): Untracked pid 14265 exited with status 0
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null [packageName=rs.pedjaapps.alogcatroot.app](http://packagename=rs.pedjaapps.alogcatroot.app/) fieldId=16908298 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
W/NotificationService( 1478): Toast already killed. [pkg=rs.pedjaapps.alogcatroot.app](http://pkg=rs.pedjaapps.alogcatroot.app/) token=android.os.BinderProxy@15b61b5
V/ShadeControllerImpl( 2186): NotificationShadeWindow: com.android.systemui.statusbar.phone.NotificationShadeWindowView{a7f0413 I.E...... ......ID 0,0-1080,2246} canPanelBeCollapsed(): false
I/ActivityTaskManager( 1478): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000100 cmp=ch.deletescape.lawnchair.plah/ch.deletescape.lawnchair.LawnchairLauncher (has extras)} from uid 0
D/GamingModeHelper( 1478): onTopAppChanged: ch.deletescape.lawnchair.plah
D/Launcher.Utilities( 2129): onLauncherStart: 0
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
E/OverlaySController( 8760): Only system apps are allowed to connect
W/Choreographer( 2129): Frame time is 0.246511 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
W/Choreographer( 2186): Frame time is 0.235209 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=ch.deletescape.lawnchair.plah fieldId=-1 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
W/System  ( 2186): A resource failed to call release. 
W/System  ( 2186): A resource failed to call close. 
I/chatty  ( 2186): uid=10268(com.android.systemui) FinalizerDaemon identical 8 lines
W/System  ( 2186): A resource failed to call close. 
W/System  ( 2186): A resource failed to call release. 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=ch.deletescape.lawnchair.plah fieldId=2131427400 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
I/ActivityTaskManager( 1478): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=io.usagi.hello/.MainActivity bnds=[841,1509][1043,1827]} from uid 10340
W/ActivityTaskManager( 1478): Tried to set launchTime (0) < mLastActivityLaunchTime (1149407)
D/GamingModeHelper( 1478): onTopAppChanged: io.usagi.hello
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: GetObjectClass
V/hello   (11268): jni::wrapper::jnienv: looking up jni method GetObjectClass
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling checked jni method: GetMethodID
V/hello   (11268): jni::wrapper::jnienv: looking up jni method GetMethodID
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: checking for exception
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: ExceptionCheck
V/hello   (11268): jni::wrapper::jnienv: looking up jni method ExceptionCheck
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: no exception found
V/hello   (11268): jni::wrapper::jnienv: calling checked jni method: CallObjectMethodA
V/hello   (11268): jni::wrapper::jnienv: looking up jni method CallObjectMethodA
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: checking for exception
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: ExceptionCheck
V/hello   (11268): jni::wrapper::jnienv: looking up jni method ExceptionCheck
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: no exception found
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: DeleteLocalRef
V/hello   (11268): jni::wrapper::jnienv: looking up jni method DeleteLocalRef
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: NewGlobalRef
V/hello   (11268): jni::wrapper::jnienv: looking up jni method NewGlobalRef
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: looking up jni method GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::java_vm::vm: calling unchecked JavaVM method: GetEnv
V/hello   (11268): jni::wrapper::java_vm::vm: looking up JavaVM method GetEnv
V/hello   (11268): jni::wrapper::java_vm::vm: found JavaVM method
V/hello   (11268): jni::wrapper::objects::global_ref: calling unchecked jni method: DeleteGlobalRef
V/hello   (11268): jni::wrapper::objects::global_ref: looking up jni method DeleteGlobalRef
V/hello   (11268): jni::wrapper::objects::global_ref: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: NewGlobalRef
V/hello   (11268): jni::wrapper::jnienv: looking up jni method NewGlobalRef
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: looking up jni method GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::jnienv: calling unchecked jni method: GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: looking up jni method GetJavaVM
V/hello   (11268): jni::wrapper::jnienv: found jni method
V/hello   (11268): jni::wrapper::java_vm::vm: calling unchecked JavaVM method: GetEnv
V/hello   (11268): jni::wrapper::java_vm::vm: looking up JavaVM method GetEnv
V/hello   (11268): jni::wrapper::java_vm::vm: found JavaVM method
I/RustStdoutStderr(11268): thread '<unnamed>' panicked at 'assertion failed: previous.is_none()', /home/shiro/.cargo/registry/src/github.com-1ecc6299db9ec823/ndk-context-0.1.1/src/lib.rs:87:5
I/RustStdoutStderr(11268): note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
I/RustStdoutStderr(11268): fatal runtime error: failed to initiate panic, error 5
D/AndroidRuntime(14285): >>>>>> START com.android.internal.os.RuntimeInit uid 10372 <<<<<<
E/libc    (14285): Access denied finding property "persist.device_config.runtime_native_boot.profilebootclasspath"
E/libc    (14285): Access denied finding property "persist.device_config.runtime_native_boot.enable_apex_image"
I/AndroidRuntime(14285): Using default boot image
E/libc    (14285): Access denied finding property "persist.device_config.runtime_native_boot.disable_lock_profiling"
I/AndroidRuntime(14285): Leaving lock profiling enabled
E/libc    (14285): Access denied finding property "persist.device_config.runtime_native_boot.enable_generational_cc"
W/app_process64(14285): type=1400 audit(0.0:3585): avc: denied { read } for name="u:object_r:device_config_runtime_native_boot_prop:s0" dev="tmpfs" ino=18353 scontext=u:r:untrusted_app:s0:c116,c257,c512,c768 tcontext=u:object_r:device_config_runtime_native_boot_prop:s0 tclass=file permissive=0 app=io.usagi.hello
I/chatty  (14285): uid=10372(io.usagi.hello) /system/bin/app_process64 identical 2 lines
W/app_process64(14285): type=1400 audit(0.0:3588): avc: denied { read } for name="u:object_r:device_config_runtime_native_boot_prop:s0" dev="tmpfs" ino=18353 scontext=u:r:untrusted_app:s0:c116,c257,c512,c768 tcontext=u:object_r:device_config_runtime_native_boot_prop:s0 tclass=file permissive=0 app=io.usagi.hello
I/app_process64(14285): Core platform API reporting enabled, enforcing=false
W/app_process64(14285): type=1400 audit(0.0:3589): avc: denied { lock } for path="/apex/com.android.art/javalib/arm64/boot.art" dev="sde48" ino=139 scontext=u:r:untrusted_app:s0:c116,c257,c512,c768 tcontext=u:object_r:system_file:s0 tclass=file permissive=0 app=io.usagi.hello
W/audit   (    0): audit_lost=3391 audit_rate_limit=5 audit_backlog_limit=64
E/audit   (    0): rate limit exceeded
D/app_process64(14285): Time zone APEX ICU file found: /apex/com.android.tzdata/etc/icu/icu_tzdata.dat
D/app_process64(14285): I18n APEX ICU file found: /apex/com.android.i18n/etc/icu/icudt66l.dat
I/app_process64(14285): The ClassLoaderContext is a special shared library.
W/app_process64(14285): JNI RegisterNativeMethods: attempt to register 0 native methods for android.media.AudioAttributes
W/app_process64(14285): Core platform API violation: Ljava/lang/reflect/Field;->accessFlags:I from Landroid/os/Build; using reflection
D/AndroidRuntime(14285): Calling main entry org.chromium.components.crash.browser.CrashpadMain
W/NotificationService( 1478): Toast already killed. pkg=indjhxt.fhcnbmndes token=android.os.BinderProxy@c1ffbe5
E/chromium(14285): [1115/205933.826243:ERROR:elf_dynamic_array_reader.h(64)] tag not found
I/RustStdoutStderr(11268): [1115/205933.826243:ERROR:elf_dynamic_array_reader.h(64)] tag not found
I/RustStdoutStderr(11268): NewEvents(WaitCancelled { start: Instant { tv_sec: 1174, tv_nsec: 666182466 }, requested_resume: None })
I/RustStdoutStderr(11268): MainEventsCleared
I/RustStdoutStderr(11268): RedrawEventsCleared
D/AndroidRuntime(14285): Shutting down VM
W/Choreographer( 1478): Frame time is 0.330224 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
W/Choreographer( 1478): Frame time is 0.327881 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
W/Choreographer( 2186): Frame time is 0.341683 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
--------- beginning of crash
F/libc    (11268): Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 11268 (io.usagi.hello), pid 11268 (io.usagi.hello)
W/WindowManager( 1478): removeWindowToken: Attempted to remove non-existing token: android.os.Binder@2d9ee1e
I/RustStdoutStderr(11268): NewEvents(WaitCancelled { start: Instant { tv_sec: 1175, tv_nsec: 181918768 }, requested_resume: None })
I/RustStdoutStderr(11268): MainEventsCleared
I/RustStdoutStderr(11268): RedrawEventsCleared
I/crash_dump64(14301): obtaining output fd from tombstoned, type: kDebuggerdTombstone
I/tombstoned(  685): received crash request for pid 11268
I/crash_dump64(14301): performing dump of process 11268 (target tid = 11268)
F/DEBUG   (14301): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
F/DEBUG   (14301): AICP Version: '16.1-WEEKLY'
F/DEBUG   (14301): Build fingerprint: 'Xiaomi/beryllium/beryllium:10/QKQ1.190828.002/V12.0.3.0.QEJMIXM:user/release-keys'
F/DEBUG   (14301): Revision: '0'
F/DEBUG   (14301): ABI: 'arm64'
F/DEBUG   (14301): Timestamp: 2022-11-15 20:59:34+0900
F/DEBUG   (14301): pid: 11268, tid: 11268, name: io.usagi.hello  >>> io.usagi.hello <<<
F/DEBUG   (14301): uid: 10372
F/DEBUG   (14301): signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
F/DEBUG   (14301):     x0  0000000000000000  x1  0000000000002c04  x2  0000000000000006  x3  0000007fc5b15440
F/DEBUG   (14301):     x4  0000007fc5b15f50  x5  0000007fc5b15f50  x6  0000007fc5b15f50  x7  0000007fc5b15f40
F/DEBUG   (14301):     x8  00000000000000f0  x9  4007f0f91f543108  x10 0000000000000000  x11 ffffffc0fffffbdf
F/DEBUG   (14301):     x12 0000000000000001  x13 000000000027b5e8  x14 00000000716b15e8  x15 00000000fffffff2
F/DEBUG   (14301):     x16 0000007c733cdc80  x17 0000007c733afcc0  x18 0000007c77ede000  x19 0000000000002c04
F/DEBUG   (14301):     x20 0000000000002c04  x21 00000000ffffffff  x22 0000007976464360  x23 0000000000000000
F/DEBUG   (14301):     x24 00000079760abda8  x25 0000000000000001  x26 000000797646ebd0  x27 0000000000000002
F/DEBUG   (14301):     x28 0000007fc5b15d00  x29 0000007fc5b154c0
F/DEBUG   (14301):     lr  0000007c733622a0  sp  0000007fc5b15420  pc  0000007c733622cc  pst 0000000000000000
F/DEBUG   (14301): backtrace:
F/DEBUG   (14301):       #00 pc 000000000004e2cc  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: d90cab72af1e828474813d66f2502c5f)
F/DEBUG   (14301):       #01 pc 0000000000431e70  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (std::sys::unix::abort_internal::hb4156e01af3f2ea0+4)
F/DEBUG   (14301):       #02 pc 000000000042febc  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (rust_panic+136)
F/DEBUG   (14301):       #03 pc 000000000042fdb0  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (std::panicking::rust_panic_with_hook::h1ca5159aa7fe4c35+668)
F/DEBUG   (14301):       #04 pc 000000000042fab8  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (std::panicking::begin_panic_handler::_$u7b$$u7b$closure$u7d$$u7d$::h720012a721903eb9+120)
F/DEBUG   (14301):       #05 pc 000000000042e504  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (std::sys_common::backtrace::__rust_end_short_backtrace::hc003910a17d53109+16)
F/DEBUG   (14301):       #06 pc 000000000042f840  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (rust_begin_unwind+108)
F/DEBUG   (14301):       #07 pc 0000000000448d44  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (core::panicking::panic_fmt::hd444a43bed6de65e+44)
F/DEBUG   (14301):       #08 pc 0000000000448c08  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (core::panicking::panic::h215e7cfc44d97b87+48)
F/DEBUG   (14301):       #09 pc 0000000000344fc4  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (ndk_context::initialize_android_context::hd727831a35713003+124)
F/DEBUG   (14301):       #10 pc 000000000033fb7c  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (tao::platform_impl::platform::ndk_glue::create::h0d7eeaf04322bf41+500)
F/DEBUG   (14301):       #11 pc 000000000016e7a4  /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk) (offset 0x395000) (Java_io_usagi_hello_TauriActivity_create+488)
F/DEBUG   (14301):       #12 pc 000000000013ced4  /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #13 pc 0000000000133564  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #14 pc 00000000001a8a78  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #15 pc 000000000031831c  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #16 pc 000000000030e648  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+996) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #17 pc 000000000067ebc0  /apex/com.android.art/lib64/libart.so (MterpInvokeDirect+576) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #18 pc 000000000012d914  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_direct+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #19 pc 0000000000003fb6  [anon:dalvik-classes3.dex extracted in memory from /[data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk!classes3.dex](http://data/app/~~mUEMSNnj-qsJEAX6vKZi4Q==/io.usagi.hello-CeEv3-0IIOHB2LjS8Zp9fw==/base.apk!classes3.dex)] (io.usagi.hello.TauriActivity.onCreate+6)
F/DEBUG   (14301):       #20 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #21 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #22 pc 00000000001a07f8  /system/framework/framework.jar (android.app.Activity.performCreate+88)
F/DEBUG   (14301):       #23 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #24 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #25 pc 00000000001a0786  /system/framework/framework.jar (android.app.Activity.performCreate+2)
F/DEBUG   (14301):       #26 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #27 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #28 pc 00000000002080f2  /system/framework/framework.jar (android.app.Instrumentation.callActivityOnCreate+6)
F/DEBUG   (14301):       #29 pc 0000000000305c44  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+268) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #30 pc 000000000030dc34  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #31 pc 000000000030f01c  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, true>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1772) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #32 pc 0000000000174fb8  /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<true, false>(art::interpreter::SwitchImplContext*)+45680) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #33 pc 000000000013f7d8  /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #34 pc 000000000018f8d0  /system/framework/framework.jar (android.app.ActivityThread.performLaunchActivity)
F/DEBUG   (14301):       #35 pc 0000000000305d4c  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+532) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #36 pc 000000000030dc34  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #37 pc 000000000030f01c  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, true>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1772) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #38 pc 0000000000174fb8  /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<true, false>(art::interpreter::SwitchImplContext*)+45680) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #39 pc 000000000013f7d8  /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #40 pc 000000000018f7c4  /system/framework/framework.jar (android.app.ActivityThread.handleLaunchActivity)
F/DEBUG   (14301):       #41 pc 0000000000305d4c  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+532) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #42 pc 000000000030dc34  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #43 pc 000000000030e62c  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+968) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #44 pc 000000000067c544  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+848) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #45 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #46 pc 0000000000283898  /system/framework/framework.jar (android.app.servertransaction.LaunchActivityItem.execute+144)
F/DEBUG   (14301):       #47 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #48 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #49 pc 0000000000285a32  /system/framework/framework.jar (android.app.servertransaction.TransactionExecutor.executeCallbacks+154)
F/DEBUG   (14301):       #50 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #51 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #52 pc 000000000028596e  /system/framework/framework.jar (android.app.servertransaction.TransactionExecutor.execute+146)
F/DEBUG   (14301):       #53 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #54 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #55 pc 000000000018eb90  /system/framework/framework.jar (android.app.ActivityThread$H.handleMessage+96)
F/DEBUG   (14301):       #56 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #57 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #58 pc 0000000000371ec2  /system/framework/framework.jar (offset 0x853000) (android.os.Handler.dispatchMessage+38)
F/DEBUG   (14301):       #59 pc 000000000067c7e4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #60 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #61 pc 0000000000399280  /system/framework/framework.jar (offset 0x853000) (android.os.Looper.loop+480)
F/DEBUG   (14301):       #62 pc 0000000000305c44  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+268) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #63 pc 000000000030dc34  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #64 pc 000000000030f01c  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, true>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1772) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #65 pc 0000000000177f40  /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<true, false>(art::interpreter::SwitchImplContext*)+57848) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #66 pc 000000000013f7d8  /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #67 pc 0000000000198638  /system/framework/framework.jar (android.app.ActivityThread.main)
F/DEBUG   (14301):       #68 pc 0000000000305d4c  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+532) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #69 pc 000000000066b24c  /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+780) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #70 pc 000000000013cff8  /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #71 pc 00000000001337e8  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+568) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #72 pc 00000000001a8a94  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+228) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #73 pc 0000000000555748  /apex/com.android.art/lib64/libart.so (art::InvokeMethod(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1364) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #74 pc 00000000004d4ef0  /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*)+52) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #75 pc 000000000008a6f4  /apex/com.android.art/javalib/arm64/boot.oat (art_jni_trampoline+180) (BuildId: fd3cf054c28fb5d3737a5d92c072cfb27c32c982)
F/DEBUG   (14301):       #76 pc 0000000000133564  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #77 pc 00000000001a8a78  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #78 pc 000000000031831c  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #79 pc 000000000030e648  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+996) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #80 pc 000000000067c544  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+848) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #81 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #82 pc 000000000049328e  /system/framework/framework.jar (offset 0x10ea000) (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+22)
F/DEBUG   (14301):       #83 pc 0000000000305c44  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.15486036983929349625)+268) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #84 pc 000000000066b24c  /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+780) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #85 pc 000000000013cff8  /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #86 pc 00000000008d06a0  /system/framework/arm64/boot-framework.oat (com.android.internal.os.ZygoteInit.main+2272) (BuildId: d0435b4e21501fbf7a274c411050afd30bd0e494)
F/DEBUG   (14301):       #87 pc 00000000001337e8  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+568) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #88 pc 00000000001a8a94  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+228) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #89 pc 0000000000554184  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, std::__va_list)+448) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #90 pc 0000000000554638  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+92) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #91 pc 0000000000438b08  /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+656) (BuildId: b047970977b60c66feb06522edaad403)
F/DEBUG   (14301):       #92 pc 0000000000099424  /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+124) (BuildId: 4642b0050351f12f8c531722003df252)
F/DEBUG   (14301):       #93 pc 00000000000a09ec  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+836) (BuildId: 4642b0050351f12f8c531722003df252)
F/DEBUG   (14301):       #94 pc 0000000000003580  /system/bin/app_process64 (main+1336) (BuildId: 8b041fc279d5108900e48324bafa5142)
F/DEBUG   (14301):       #95 pc 000000000004988c  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+108) (BuildId: d90cab72af1e828474813d66f2502c5f)
D/logd    (    0): logdr: UID=10372 GID=10372 PID=14301 n tail=50 logMask=8 pid=11268 start=0ns timeout=0ns
D/logd    (    0): logdr: UID=10372 GID=10372 PID=14301 n tail=50 logMask=1 pid=11268 start=0ns timeout=0ns
E/tombstoned(  685): Tombstone written to: /data/tombstones/tombstone_13
D/logd    (    0): logdr: UID=10372 GID=10372 PID=14301 n tail=0 logMask=8 pid=11268 start=0ns timeout=0ns
D/logd    (    0): logdr: UID=10372 GID=10372 PID=14301 n tail=0 logMask=1 pid=11268 start=0ns timeout=0ns
W/ActivityTaskManager( 1478):   Force finishing activity io.usagi.hello/.MainActivity
I/DropBoxManagerService( 1478): add tag=data_app_native_crash isTagEnabled=true flags=0x2
I/BootReceiver( 1478): Copying /data/tombstones/tombstone_13 to DropBox (SYSTEM_TOMBSTONE)
I/DropBoxManagerService( 1478): add tag=SYSTEM_TOMBSTONE isTagEnabled=true flags=0x2
D/GamingModeHelper( 1478): onTopAppChanged: ch.deletescape.lawnchair.plah
W/BroadcastQueue( 1478): Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
W/BroadcastQueue( 1478): Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
W/BroadcastQueue( 1478): Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
W/BroadcastQueue( 1478): Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
I/init    (    0): Untracked pid 14301 exited with status 0
I/init    (    0): Untracked pid 14303 exited with status 0
I/ActivityManager( 1478): Process io.usagi.hello (pid 11268) has died: prcp TOP 
I/Zygote  (  690): Process 11268 exited due to signal 6 (Aborted)
W/WindowManager( 1478): Cannot find window which accessibility connection is added to
I/ActivityManager( 1478): Killing 14140:com.android.webview:sandboxed_process0:org.chromium.content.app.SandboxedProcessService0:0/u0a372i13 (adj 0): isolated not needed
W/WindowManager( 1478): Failed looking up window session=Session{4ddd091 1478:1000} callers=com.android.server.wm.WindowManagerService.windowForClientLocked:5438 com.android.server.wm.WindowManagerService.removeWindow:1900 com.android.server.wm.Session.remove:193 
W/ActivityManager( 1478): Ignoring remove of inactive process: ProcessRecord{dd0c8c3 0:io.usagi.hello/u0a372}
W/ActivityManager( 1478): setHasOverlayUi called on unknown pid: 11268
I/Zygote  ( 2284): Process 14140 exited cleanly (0)
I/libprocessgroup( 1478): Successfully killed process cgroup uid 10372 pid 11268 in 28ms
I/libprocessgroup( 1478): Successfully killed process cgroup uid 99013 pid 14140 in 0ms
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=ch.deletescape.lawnchair.plah fieldId=2131427400 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
V/ShadeControllerImpl( 2186): NotificationShadeWindow: com.android.systemui.statusbar.phone.NotificationShadeWindowView{a7f0413 I.E...... ......ID 0,0-1080,2246} canPanelBeCollapsed(): false
W/ActivityTaskManager( 1478): Activity top resumed state loss timeout for ActivityRecord{3e0035a u0 io.usagi.hello/.MainActivity t-1 f}}
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
W/WindowManager( 1478): Unable to start animation, surface is null or no children.
I/LocSvc_GnssInterface(  845): ===> odcpiRequestCb line 513 
I/GnssLocationProvider( 1478): GNSS HAL Requesting location updates from network provider for 10000 millis.
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_WIFI_REQ_IND_V02
D/GamingModeHelper( 1478): onTopAppChanged: [rs.pedjaapps.alogcatroot.app](http://rs.pedjaapps.alogcatroot.app/)
D/logd    (    0): logdr: UID=0 GID=0 PID=14327 b tail=0 logMask=99 pid=0 start=0ns timeout=0ns
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null [packageName=rs.pedjaapps.alogcatroot.app](http://packagename=rs.pedjaapps.alogcatroot.app/) fieldId=-1 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
D/AndroidRuntime(14325): >>>>>> START com.android.internal.os.RuntimeInit uid 0 <<<<<<
I/AndroidRuntime(14325): Using default boot image
I/AndroidRuntime(14325): Leaving lock profiling enabled
I/app_process(14325): Core platform API reporting enabled, enforcing=false
W/Choreographer( 1478): Frame time is 0.043217 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
W/Choreographer( 2186): Frame time is 0.007331 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
W/Choreographer( 1478): Frame time is 0.043217 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02
D/app_process(14325): Time zone APEX ICU file found: /apex/com.android.tzdata/etc/icu/icu_tzdata.dat
D/app_process(14325): I18n APEX ICU file found: /apex/com.android.i18n/etc/icu/icudt66l.dat
I/app_process(14325): The ClassLoaderContext is a special shared library.
W/app_process(14325): JNI RegisterNativeMethods: attempt to register 0 native methods for android.media.AudioAttributes
W/WindowManager( 1478): removeWindowToken: Attempted to remove non-existing token: android.os.Binder@f2f00fc
D/AndroidRuntime(14325): Calling main entry com.android.commands.content.Content
D/AndroidRuntime(14325): Shutting down VM
I/init    (    0): Untracked pid 14324 exited with status 0
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onFinishInput():3280 
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 0, unlocked = true
I/GoogleInputMethodService( 3234): GoogleInputMethodService.onStartInput():1960 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null [packageName=rs.pedjaapps.alogcatroot.app](http://packagename=rs.pedjaapps.alogcatroot.app/) fieldId=16908298 fieldName=null extras=null}, false)
I/GoogleInputMethodService( 3234): GoogleInputMethodService.shouldHideHeaderOnInitialState():4081 ShouldHideHeaderOnInitialState = false
I/GoogleInputMethodService( 3234): GoogleInputMethodService.updateDeviceLockedStatus():2169 repeatCheckTimes = 2, unlocked = true
I/LocSvc_ApiV02(  845): <--- globalEventCb line 170 QMI_LOC_EVENT_POSITION_REPORT_IND_V02

It seems like it crashes here.

Thanks for working on the awesome project!

edit: just realized I was using the tauri fork (that has the wry template), sorry about that. If someone knows what the issue is and if it's limited to the fork, any info would be great :)

Request: Tao/Wry & Dioxus templates

Eventually in Dioxus we plan to add cargo-mobile-ish support in our CLI but in the meantime it's been easier to just recommend cargo-mobile for users interested in building mobile apps.

I'd like to add templates for Wry, Tao, and Dioxus now that Tao works on both Android and iOS.

I have had success with Tao/Wry/Dioxus - all that's left is building the template.

Screen Shot 2022-04-16 at 6 57 57 PM

Build in workspace

Cool tool! Found it at just the right time for a project I'm starting.

I am working on a project and am hoping to keep everything in a monorepo. The workspace members are defined with members = ["library/*"] and I created the mobile project with cargo mobile new library/mobile. Everything was set up just fine. Unfortunately I get the following build error:

=== BUILD TARGET mobile_iOS OF PROJECT mobile WITH CONFIGURATION debug ===
ld: warning: directory not found for option '-L/Users/isaac/local/<project>/library/mobile/target/aarch64-apple-ios/debug'
ld: library not found for -lmobile
clang: error: linker command failed with exit code 1 (use -v to see invocation)
** BUILD FAILED **

I don't have much time to dig around in the code base to find where to start but if you point me to where the path generation is I can probably fix the rest. Thanks in advance!

Fails to build when target is moved.

For my workspace, I have my target moved to another folder.

[build]
target-dir = "../../../../../Nextcloud_Cargo/git/github/clay53/tutor_engine"

Trying to build, I get this error. Looking in a target folder that's not there:

 error: Failed to symlink lib
    The symlink source is
    "/home/clay53/Nextcloud/git/github/clay53/tutor_engine/mobile/target/aarch64
    -linux-android/debug/libmobile.so", but nothing exists there

Can workaround by creating a symlink to it.

Does not list connected android devices

I have android phone connected via network. I can list it using adb and so install and run apks. cargo-apk also works perfect. But cargo-mobile failed to list it.

$ adb connect 192.168.100.66
connected to 192.168.100.66:5555

$ adb devices
List of devices attached
192.168.100.66:5555	device


$ cargo mobile android list -v
[2022-02-22T18:16:12Z INFO  bossy] running command "adb devices" and waiting for output
  -- none --

$ cargo mobile --version
cargo-mobile v0.1.0
Contains commits up to "iOS build scripts (#66)"

windows compile_error!

: Host platform not yet supported by cargo-mobile! We'd love if you made a PR to add support for this platform ❤️
--> src\os\mod.rs:16:1
|
16 | compile_error!("Host platform not yet supported by cargo-mobile! We'd love if you made a PR to add support for this platform ❤️");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0432]: unresolved import crate::os::command_path
--> src\util\mod.rs:11:23
|
11 | use crate::os::{self, command_path};
| ^^^^^^^^^^^^ no command_path in os

error[E0433]: failed to resolve: could not find info in self
--> src\os\mod.rs:28:15
|
28 | self::info::check()
| ^^^^ could not find info in self

error[E0433]: failed to resolve: could not find Application in os
--> src\util\mod.rs:583:9
|
583 | os::Application::detect_editor()
| ^^^^^^^^^^^ could not find Application in os

error[E0425]: cannot find function open_file_with in module os
--> src\android\cli.rs:163:17
|
163 | os::open_file_with("Android Studio", config.project_dir()).map_err(Error::OpenFailed)
| ^^^^^^^^^^^^^^ not found in os

error[E0412]: cannot find type DetectEditorError in module os
--> src\util\mod.rs:568:22
|
568 | DetectFailed(os::DetectEditorError),
| ^^^^^^^^^^^^^^^^^ not found in os

error[E0412]: cannot find type OpenFileError in module os
--> src\util\mod.rs:569:20
|
569 | OpenFailed(os::OpenFileError),
| ^^^^^^^^^^^^^ not found in os

Some errors have detailed explanations: E0412, E0425, E0432, E0433.
For more information about an error, try rustc --explain E0412.
error: could not compile cargo-mobile due to 7 previous errors
warning: build failed, waiting for other jobs to finish...

stable-i686-pc-windows-gnu
stable-i686-pc-windows-msvc
stable-x86_64-pc-windows-gnu
stable-x86_64-pc-windows-msvc (default)
nightly-x86_64-pc-windows-gnu
nightly-x86_64-pc-windows-msvc
1.60.0-x86_64-pc-windows-msvc

installed targets for active toolchain

wasm32-unknown-unknown
x86_64-pc-windows-msvc

active toolchain

stable-x86_64-pc-windows-msvc (default)
rustc 1.60.0 (7737e0b5c 2022-04-04)

Error init

Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye

cargo mobile init
error: Failed to initialize git
Failed to wait for child process for command "git -C /home/xxx/proyectos/cargo/test init" to exit: No such file or directory (os error 2)

Cargo Mobile doesn't support workspaces

Cargo workspaces is a handy feature which allows you to have multiple subprojects in one directory. Cargo Mobile currently doesn't support it when building. Workspaces use one unified target directory. Cargo mobile always targets the /{subproject}/target directory.

Find `adb` command under `$ANDROID_HOME/platform-tools/adb`

When first running cargo android run I found that it tried to run adb internally but didn't find the executable (since it's not in my PATH). It could be good if cargo-mobile didn't depend on the PATH being configured for SDK tools since it should be able to find them based on the the SDK path instead I think.

Android app crashes on open.

Created app from bevy-demo template and app crashes on startup. Here is the stack trace from logcat.

07-29 08:01:30.543  5951  5951 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-29 08:01:30.543  5951  5951 F DEBUG   : Build fingerprint: 'OnePlus/OnePlus7T/OnePlus7T:11/RKQ1.201022.002/2105251411:user/release-keys'
07-29 08:01:30.543  5951  5951 F DEBUG   : Revision: '0'
07-29 08:01:30.544  5951  5951 F DEBUG   : ABI: 'arm64'
07-29 08:01:30.547  5951  5951 F DEBUG   : Timestamp: 2021-07-29 08:01:30+0530
07-29 08:01:30.547  5951  5951 F DEBUG   : pid: 4954, tid: 5898, name: m.example.hello  >>> com.example.hello <<<
07-29 08:01:30.547  5951  5951 F DEBUG   : uid: 10469
07-29 08:01:30.547  5951  5951 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-29 08:01:30.547  5951  5951 F DEBUG   :     x0  0000000000000000  x1  000000000000170a  x2  0000000000000006  x3  00000076ffdc87b0
07-29 08:01:30.547  5951  5951 F DEBUG   :     x4  00000076fcef707c  x5  00000076fcef707c  x6  00000076fcef707c  x7  00000076fcef707c
07-29 08:01:30.547  5951  5951 F DEBUG   :     x8  00000000000000f0  x9  0548d6964125785a  x10 0000000000000000  x11 ffffffc0fffffbdf
07-29 08:01:30.547  5951  5951 F DEBUG   :     x12 0000000000000001  x13 0000000000000004  x14 ffffffffffffffff  x15 0000bbab6a9421db
07-29 08:01:30.547  5951  5951 F DEBUG   :     x16 0000007a5d8d0c80  x17 0000007a5d8b2b70  x18 00000076fc514000  x19 000000000000135a
07-29 08:01:30.547  5951  5951 F DEBUG   :     x20 000000000000170a  x21 00000000ffffffff  x22 000000000000135a  x23 000000000000135a
07-29 08:01:30.547  5951  5951 F DEBUG   :     x24 00000076ffdc8cc0  x25 00000076ffdc8cc0  x26 00000076ffdc8ff8  x27 0000000000204000
07-29 08:01:30.547  5951  5951 F DEBUG   :     x28 00000076ffbc8000  x29 00000076ffdc8830
07-29 08:01:30.547  5951  5951 F DEBUG   :     lr  0000007a5d8663e0  sp  00000076ffdc8790  pc  0000007a5d86640c  pst 0000000000000000
07-29 08:01:30.609  5951  5951 F DEBUG   : backtrace:
07-29 08:01:30.609  5951  5951 F DEBUG   :       #00 pc 000000000004e40c  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 07fbaeed7b7a19203975f06be6f1d5ef)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #01 pc 000000000152d6d8  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::sys::unix::abort_internal::hcc82a6e88a8977ea+4)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #02 pc 00000000015280b4  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::process::abort::h2da4fae5ddb4e49a+4)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #03 pc 000000000063dbbc  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (hello::stop_unwind::h4f85dae9f010e4ac+172)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #04 pc 000000000063dc50  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (hello::_start_app::h7f83025936cdba21+4)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #05 pc 000000000139120c  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (ndk_glue::init::_$u7b$$u7b$closure$u7d$$u7d$::hd13bb002d643b300+212)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #06 pc 0000000001393d3c  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::sys_common::backtrace::__rust_begin_short_backtrace::h456a843f00695006+12)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #07 pc 0000000001392c5c  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::h9c85b406d1905222+12)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #08 pc 000000000138ee84  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (_$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h844acdfdd6cedcc8+12)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #09 pc 000000000138eb44  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::panicking::try::do_call::h49b0cf076f580d61+36)
07-29 08:01:30.609  5951  5951 F DEBUG   :       #10 pc 000000000138ee14  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (__rust_try+24)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #11 pc 000000000138e9dc  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::panicking::try::h0ab13e2b2fdd0397+60)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #12 pc 000000000138ef2c  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::panic::catch_unwind::h24e1bcdde8e14af8+12)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #13 pc 0000000001392b04  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::ha6b8e1db4326c096+220)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #14 pc 000000000138be78  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hfcde3c97ef841cbb+12)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #15 pc 000000000152d3b8  /data/app/~~haF1CAQzEyu4aSnKMwPhkw==/com.example.hello-J32oCDWT7U8M3S2BffzRaA==/lib/arm64/libhello.so (std::sys::unix::thread::Thread::new::thread_start::h252218714dd4a499+28)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #16 pc 00000000000b0048  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64) (BuildId: 07fbaeed7b7a19203975f06be6f1d5ef)
07-29 08:01:30.610  5951  5951 F DEBUG   :       #17 pc 00000000000503c8  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 07fbaeed7b7a19203975f06be6f1d5ef)

Installation problems with OpenSSL

Hi

I just stumbled across this project and it seems to be what I have been trying to figure out all day. I do have a problem with the installation though.

When I first ran cargo install --git https://github.com/BrainiumLLC/cargo-mobile it told me the OPENSSL_DIR wasn't set, so I ran export OPENSSL_DIR="/usr/bin/openssl". When I tried to install again, it now gives me following output:

error: failed to run custom build command for `openssl-sys v0.9.72`

Caused by:
  process didn't exit successfully: `/var/folders/5j/mszng5kj02s9smyq132753qr0000gn/T/cargo-install8D25Hi/release/build/openssl-sys-76df00bd5f5cfa62/build-script-main` (exit status: 101)
  --- stdout
  cargo:rustc-cfg=const_fn
  cargo:rerun-if-env-changed=X86_64_APPLE_DARWIN_OPENSSL_LIB_DIR
  X86_64_APPLE_DARWIN_OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
  OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=X86_64_APPLE_DARWIN_OPENSSL_INCLUDE_DIR
  X86_64_APPLE_DARWIN_OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
  OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=X86_64_APPLE_DARWIN_OPENSSL_DIR
  X86_64_APPLE_DARWIN_OPENSSL_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_DIR
  OPENSSL_DIR = /usr/bin/openssl

  --- stderr
  thread 'main' panicked at 'OpenSSL library directory does not exist: /usr/bin/openssl/lib', /Users/jonaseveraert/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-sys-0.9.72/build/main.rs:68:9
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: failed to compile `cargo-mobile v0.1.0 (https://github.com/BrainiumLLC/cargo-mobile#8d84308e)`, intermediate artifacts can be found at `/var/folders/5j/mszng5kj02s9smyq132753qr0000gn/T/cargo-install8D25Hi`

Caused by:
  build failed

I have tried multiple locations for the openssl directory, but none seem to work. When I run openssl version I get as output LibreSSL 2.8.3.

I don't know what I'm doing wrong here?
Hope someone can help.

P.S. I am on Mac

error: attribute must be applied to a `static` variableLE

I'm getting this error when trying to cargo android run

I'm using arch linux for now and ndk version 22, is there anything i'm missing ?

error: attribute must be applied to a `static` variableLE
   --> /home/ahmed/.cargo/registry/src/github.com-1ecc6299db9ec823/oboe-0.3.1/src/audio_stream.rs:625:5 IDLE
    |
625 |     #[used]
    |     ^^^^^^^

error: could not compile `oboe` due to previous errorIDLE
warning: build failed, waiting for other jobs to finish...rustBuildArm64Debug
error: build failed EXECUTING [2m 28s]
error: `Failed to run `cargo build`
    Command "cargo build --package cute-name --manifest-path
    /home/ahmed/gits/cargo-mobile/cute-name/Cargo.toml --target
    aarch64-linux-android --color always" didn't complete successfully, exiting
    with code 101.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:rustBuildArm64Debug'.
> Process 'command 'cargo'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD FAILED in 5m 38s
error: Failed to assemble APK
    Command "/home/ahmed/gits/cargo-mobile/cute-name/gen/android/cute-name/gradlew --project-dir
    /home/ahmed/gits/cargo-mobile/cute-name/gen/android/cute-name assembleArm64Debug --warn" didn't complete
    successfully, exiting with code 1.

Compiling external source with resulting executable

Is it possible to compile an external rust source with that toolchain?
For instance tectonic typesetting and a resulting commandline programm instead of the jni lib mechanism.
If yes, do you have an example?

Many thanks in advance.

cargo mobile init failing on missing tool 'ar' (GNU binutils deprecated in favor of llvm binutils in r23+)

on macOS trying to create a project with bevy:
$ cargo mobile init Generating base project... ... Generating Android Studio project... error: Failed to generate Android cargo config Missing tool ar; tried at "/Users/grop/Library/Android/sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android-ar".

after googling i got: rust-mobile/ndk#135

with

Thank you for reporting! NDK r22 deprecated GNU binutils in favour of LLVM's, and those have finally been removed in NDK r23. This should be fixed by rust-mobile/ndk#137, please give it a try!

i have not investigated a proper solution.

APK only supports arm64-v8a

Hi, when I try to run in my android simulator, I get the following:

Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: The currently selected variant "arm64-debug" uses split APKs, but none of the 1 split apks are compatible with the current device with ABIs "x86, armeabi-v7a, armeabi".

Do you have any idea about this?

Unable to install in release mode

Running cargo android run --release works perfectly, except that it produces and unsigned .apk which fails to install on my device.

adb: failed to install /Users/wbrickner/Documents/Projects/rust-powerpilot-relay/gen/android/power-pilot-relay/app/build/outputs/apk/arm64/release/app-arm64-release-unsigned.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed collecting certificates for /data/app/vmdl525558878.tmp/base.apk: Package /data/app/vmdl525558878.tmp/base.apk has no certificates at entry AndroidManifest.xml]
error: Failed to install APK
    Command "adb -s 614045f1 install /Users/wbrickner/Documents/Projects/rust-powerpilot-relay/gen/android/power-pilot-relay/app/build/outputs/apk/arm64/release/app-arm64-release-unsigned.apk" didn't complete successfully, exiting with code 1.

I'm new to native mobile dev, how would I configure APK signing automatically through cargo-mobile?
Or should I just do it with some external system?

Thank you.

Android: Trying to build a single variant causes all variants to be built

In Android Studio I set arm64Debug to Active Variant and started the build.
But gradle runs tasks :app:rustBuildArm64Debug, :app:rustBuildArmDebug, :app:rustBuildX86, ...

I wanted target/aarch64-linux-android/debug/lib*.so in jniLibs/arm64-v8a, but finally it was overwritten by target/aarch64-linux-android/release/lib*.so.

The problem seems to be caused by the following
https://github.com/BrainiumLLC/cargo-mobile/blob/master/templates/platforms/android-studio/buildSrc/src/main/kotlin/RustPlugin.kt.hbs#L35

iOS doesn't seem to copy over the dylib properly?

I've tried each example but I always seem to get the same error on running.

I get "Library not loaded .dylib`

I can see that the libname.a and libname.dyld are built and where they should be but when I cargo apple open the libname.a file is red in the file explorer and running errors about the library not being loaded.

I've manually added both to the project and tried to re-run and get the same no matter what I try.

On a side note, the template appears to be wrong as well. Defaulting to a deployment target of iOS 9 which also needs changing.

macOS M1 `building for iOS Simulator, but linking in object file built for iOS, for architecture arm64`

I can't seem to build for the simulator using the template generated for macOS m1.

I tried to change the x86_64 target to aarch64 but then ran into:

building for iOS Simulator, but linking in object file built for iOS, for architecture arm64

I haven't quite figured out the right way of getting things to build, but at the very least, the template is busted for m1.

As an aside: thank you for doing all this work. It's pretty amazing. Happy holidays!

cargo-mobile installation fails on newly released Apple Mac m1

Hello Francesca, Team,
Really appreciate your work. cargo-mobile is really good!

I tried to run cargo mobile on my apple MacBook Air m1 that has arm chip. I have rust 1.49 beta installed (which is natively supported for m1 via rustup, I haven't tested 1.49 beta intel version through rosetta though).

cargo install --git https://github.com/BrainiumLLC/cargo-mobile

Below is the error log -

   Compiling structopt v0.3.21
   Compiling toml v0.5.7
   Compiling path_abs v0.5.0
   Compiling handlebars v3.5.1
   Compiling bicycle v0.1.0 (https://github.com/BrainiumLLC/bicycle?rev=28080e0c6fa4067d9dd1b0f2b7322b6b32178e1f#28080e0c)
   Compiling cargo-mobile v0.1.0 (/Users/nikhil/.cargo/git/checkouts/cargo-mobile-b8b95f6242c7b8a6/d5a6ede)
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-arch" "arm64" "-L" "/Users/nikhil/.rustup/toolchains/beta-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.0.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.1.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.10.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.11.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.12.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.13.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.14.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.15.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.2.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.3.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9gsgtywgk6m0000gn/T/cargo-install38xKVF/release/deps/cargo_apple.cargo_apple.2mp5i5cw-cgu.4.rcgu.o" "/var/folders/b_/p49y76gj0fqcg9

Thanks,
Nikhil

UUID lookup failed on macOS 12.5.1

The error left in console is as follows:

action request: Failed to install Rust Xcode plugin; this component is optional, so init will continue anyway,
but Xcode debugging won't work until this is resolved!
    Failed to lookup Xcode UUID: Command "defaults read /Library/Developer/Info DVTPlugInCompatibilityUUID" didn't complete
    successfully, exiting with code 1. stderr contents: 2022-11-25 23:51:29.990 defaults[74905:4131174]
    The domain/default pair of (/Library/Developer/Info, DVTPlugInCompatibilityUUID) does not exist

I did some digging through the source code to figure out why this was happening, and I saw the comment that says check if uuid is supported, and prompt user to open issue if not. It seems you may have forgotten to add the prompt, but that's all right 😄.

I tried to see if I could locate the UUID anywhere using the defaults command, and the entire /Library/Developer/Info domain doesn't exist. I had installed xcode but hadn't opened it yet when I initially tried to run it, so I ran xcode and updated xcode-select tools using Software Update, and still I don't have those defaults anywhere. I couldn't find anything online either, so I figured it's best to let you know. I'll see about installing the xcode rust plugin manually now...

Update 1: I tried searching for the DVTPlugInCompatibilityUUID key using defaults find DVTPlugInCompatibilityUUID and it turned up nothing. I'm thinking there must be some application I haven't launched yet that registers the domain/keys.

Update 2: I located the DVTPlugInCompatibilityUUID key. It was found using defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID. I don't know if xcode-select -p is supposed to return /Library/Developer/CommandLineTools, but it is on my machine. Also I realize now that the prompt the user to open an issue is intended for when it does find the UUID but it isn't supported, I apologize.

Cant compile on Linux Ubuntu 20.04

After the new Linux support was merged, I installed cargo mobile and I have tried to run it with cargo android run on a connected device. I have chosen the winit project template, everything downloads fine but the build fails when gradle is trying to compile the java dependencies.

፨  cargo android run
Detected connected device: x43-A11 (SM-A115F) with target "armv7-linux-androideabi"
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 13): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 14): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 21): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 25): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 26): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (1, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 20): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 25): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 26): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 32): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (3, 33): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 13): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 15): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (4, 16): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (5, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (6, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (7, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 30): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (8, 31): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (9, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (10, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (11, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (12, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (13, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (15, 24): Unresolved reference: DefaultTask
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (16, 6): Unresolved reference: InputDirectory
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (17, 6): Unresolved reference: PathSensitive
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (17, 20): Unresolved reference: PathSensitivity
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (18, 21): Unresolved reference: File
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (19, 6): Unresolved reference: Input
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (21, 6): Unresolved reference: Input
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (24, 6): Unresolved reference: TaskAction
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (28, 19): Unresolved reference: GradleException
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (32, 19): Unresolved reference: GradleException
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (36, 19): Unresolved reference: GradleException
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (38, 9): Unresolved reference: project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (39, 13): Unresolved reference: workingDir
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (39, 24): Unresolved reference: File
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (39, 29): Unresolved reference: project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (40, 13): Unresolved reference: executable
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (41, 13): Unresolved reference: args
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (42, 17): Unresolved reference: project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (42, 42): Unresolved reference: LogLevel
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (43, 17): Unresolved reference: args
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (44, 24): Unresolved reference: project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (44, 49): Unresolved reference: LogLevel
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (45, 17): Unresolved reference: args
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (48, 17): Unresolved reference: args
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/BuildTask.kt: (50, 13): Unresolved reference: args
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 13): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 14): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 21): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 25): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 26): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 28): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (1, 29): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 20): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 25): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 26): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 32): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (3, 33): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 13): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 15): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (4, 16): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (5, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (6, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (7, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 1): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 8): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 11): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 12): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 18): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 19): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 22): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (8, 23): Expecting a top level declaration
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (18, 25): Unresolved reference: Plugin
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (18, 32): Unresolved reference: Project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (21, 5): 'apply' overrides nothing
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (21, 33): Unresolved reference: Project
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (25, 23): Unresolved reference: GradleException
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (28, 23): Unresolved reference: GradleException
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (31, 95): Unresolved reference: DefaultTask
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (32, 21): Unresolved reference: group
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (33, 21): Unresolved reference: description
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (39, 25): Unresolved reference: group
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (40, 25): Unresolved reference: description
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (41, 25): Unresolved reference: rootDirRel
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (41, 38): Unresolved reference: File
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (42, 25): Unresolved reference: target
e: /home/x43/projects/KeAir/gen/android/ke-air/buildSrc/src/main/kotlin/RustPlugin.kt: (43, 25): Unresolved reference: release

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':buildSrc:compileKotlin'.
> Compilation error. See log for more details

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 4s
error: Failed to assemble APK
    Command "/home/x43/projects/KeAir/gen/android/ke-air/gradlew --project-dir /home/x43/projects/KeAir/gen/android/ke-air assembleArmDebug --warn" didn't complete
    successfully, exiting with code 1.

What could be the issue?

Questions regarding this crate

Hi I have some questions regarding this crate:

  1. Am I able to make full blown Android applications by using this crate and the fltk-rs GUI library crate?
  2. Is it stable or beta/alpha?
  3. Is there a docs page that is similar to the Rust Programming Book?
  4. Is it more difficult to use or easier to use compared to using Android Studio Java?
  5. Am I required to use Android Studio for this? If so then am I required to do some Java programming as well?
  6. If I wanted to do something that is specific to Android, for example list out all the apps installed or to create a lockscreen for the user (this wouldn't work on iOS nor Linux), then would this crate still work? Am I able to call Android APIs in a high level manner just like with Android Studio Java?

Cannot initialize project (Failed to find Apple developer teams)

Hey.

Trying to give cargo mobile init a spin and running into the following:

macOS Catalina 10.5.7 Xcode 12.4

cargo mobile init
Project name (rust-ios):
Stylized name (Rust Ios):
Domain (example.com):
Detected template packs:
  [0] bevy
  [1] bevy-demo
  [2] wgpu
  [3] winit
  Enter an index for a template pack above.
Template pack (0): 2
error: Failed to prompt for `apple` config
    Failed to find Apple developer teams: Missing X509 field: Nid(17)

For context, I haven't used Xcode for much so I may have un-configured Xcode settings that an iOS developer would typically be expected to have.

SwiftUI example

I was very happy to find this tool as I thought about running wgpu on iOS and basically had no idea what would be required. The wgpu and winit examples worked great and the code is minimal such that I feel like I roughly understand whats happing.

At the same time I'm learning about SwiftUI. This is a stark contrast because its very high level and I'm a beginner there so I'm not really sure how I would go about getting a wgpu "view" (for the lack of a better word, meaning just part of a screen) to run in an SwiftUI based app.
My conceptual understanding of the setup would be that I would need to create some kind of Context in SwiftUI(or UIKit, wrapped in SwiftUI) and then pass some kind of handle, which refers to that context, to wgpu but currently I don't see such a thing happening in the code and wgpu just takes over the whole screen.

I assume the first question would be how to do it in a UIKit App and then how to wrap that and maybe if there are further issues which may make this more difficult.
One thing I noticed is that the current setup seems to use a legacy build system of some sort of xcode and default SwiftUI projects don't so this might be one such issue.

If someone has time to respond or even extend the examples that would be highly appreciated 👍

How to add custom platform code?

I'd rather put a few methods in Java rather than put up with the verbosity and overhead of sending objects back and forth between the JVM, especially with the Android system APIs it's really suboptimal.

I only care about android right now, but I will eventually need to do this for both platforms.

In the generated android studio project I can't seem to see any java or Kotlin files with an obvious entry point, so there's some magic going on that I don't understand.

Can you give me some information on how I would for instance add custom java code that I can call using the JNI? I'd like to have most of the "business logic" / meat live in the Rust side for performance and correctness and place all the platform API stuff in Java.

Thank you!

Thought: I wonder if someday a DSL could be implemented via procedural macros to allow you to interact with the JNI more cleanly, almost a 1:1 with the equivalent java code? It could be really neat and tidy too, with platform-guarded modules for each DSL that lets you use the system APIs (Java and Swift/ObjC/Apple JNI equivalent).

Compilation an Iteration Behind

I've noticed that when I make a change to my lib.rs, and then run cargo android run, the old version of my code runs, not the new version. Then upon second invocation the new version runs.

This sounds very similar to what @zeerooth experienced in #2 where the first run fails, but the second run includes the .so library.

I suspect some compilation step lags behind.

Turn `cargo-mobile` into a library

We're interested in using this awesome project as a dependency on the tauri CLI as part of our upcoming mobile support. Currently I think I could run the cargo apple and cargo android commands using exec and Input, but ideally I'd like to have more control like using a different configuration file name, doing something before build starts, using a different project template etc. Would you accept a PR turning this into a library, exposing some existing modules and types? Hopefully the Tauri team can contribute back to this project in the future too, we expect a lot of users to benefit from this.

How to interact with the JNI? [Newbie Question]

Hello, I have limited experience in native android development.

I am targeting the newly released Oculus Quest 2, which is secretly an android device,
and I would like to be able to depend on third-party Java libraries from the rust side of things, which is where
I want to do all of my work if possible.

Is there an easy way to do this from cargo-mobile? What advice might you give?

This is not actually an issue in cargo-mobile, but I think this is the best place to ask and it provides posterity for others.
Thank you.

Gradle Error (org.gradle.wrapper.GradleWrapperMain)

Issue

Hello,

I have installed all the required dependencies (I believe), and have successfully run an example for desktop, on macOS.

When I now run cargo android run I get:

Detected connected device: OnePlus 8 Pro (IN2025) with target "aarch64-linux-android"
Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain
Caused by: java.lang.ClassNotFoundException: org.gradle.wrapper.GradleWrapperMain
error: Failed to assemble APK
    Command "/Users/wbrickner/Documents/Projects/rust-mobile-test/gen/android/testy/gradlew --project-dir
    /Users/wbrickner/Documents/Projects/rust-mobile-test/gen/android/testy assembleArm64Debug --warn" didn't complete
    successfully, exiting with code 1.

Environment

I am running the Bevy example with the present commit of this repo, with rust 1.50 nightly.
I believe my NDK version is 21.3.6528147.

$ gradle --version yields

------------------------------------------------------------
Gradle 5.6.2
------------------------------------------------------------

Build time:   2019-09-05 16:13:54 UTC
Revision:     55a5e53d855db8fc7b0e494412fc624051a8e781

Kotlin:       1.3.41
Groovy:       2.5.4
Ant:          Apache Ant(TM) version 1.9.14 compiled on March 12 2019
JVM:          11.0.8 (AdoptOpenJDK 11.0.8+10)
OS:           Mac OS X 10.16 x86_64

(This gradle output is slightly incorrect in one obvious place, I am actually running macOS Big Sur 11.0.1 w/ Intel ISA).

Hopefully this is enough information to help track down the issue which I assume is internal to the cargo-mobile project generation process.

How to link system-provided shared object file?

Hello,

I am targeting the Oculus Quest 2, and have prepared my own bindings via bindgen for their Mobile SDK.
I have gotten the library to link - the build succeeds.

At runtime (on my android phone, and also on the physical Quest 2), the app launches and immediately crashes, complaining that the primary application my_app.so generated by cargo-mobile depends on my libvrapi.so:

01-06 19:00:02.522  6664  6664 W NativeActivity: NativeActivity LoadNativeLibrary("/data/app/com.willbrickner.power_pilot-gLvP0sExXMtQZk8DzeK19g==/lib/arm64/libpower_pilot.so") failed: dlopen failed: library "libvrapi.so" not found
01-06 19:00:02.523  6664  6664 E AndroidRuntime: Process: com.willbrickner.power_pilot, PID: 6664
01-06 19:00:02.523  6664  6664 E AndroidRuntime: java.lang.UnsatisfiedLinkError: Unable to load native library "/data/app/com.willbrickner.power_pilot-gLvP0sExXMtQZk8DzeK19g==/lib/arm64/libpower_pilot.so": dlopen failed: library "libvrapi.so" not found
01-06 19:00:02.526   996  6584 W ActivityTaskManager:   Force finishing activity com.willbrickner.power_pilot/android.app.NativeActivity

This only partially makes sense, shouldn't the libvrapi.so be on the system? Isn't that the entire point of having a shared library? To have it be shared among all the binaries which make use of it? I never gave any special instructions to include the libvrapi.so literally in the APK bundle, should I have? How would I do that?

Thank you, this project will allow so much technological progress!

Broken winit example on Android?

I recently tried updating cargo-mobile, along with Android NDK and running the winit example, but it seems like it's broken on my device, because no events are being logged at all and whenever I touch the screen I get this in adb logcat:

10-23 21:33:09.704  2053  2560 I InputDispatcher: Dropping event because there is no touchable window or gesture monitor at (449, 853) in display 0.
10-23 21:33:09.933  2053  2560 I InputDispatcher: Dropping event because there is no touchable window or gesture monitor at (537, 907) in display 0.
10-23 21:33:10.182  2053  2560 I InputDispatcher: Dropping event because there is no touchable window or gesture monitor at (588, 953) in display 0.
10-23 21:33:10.389  2053  2560 I InputDispatcher: Dropping event because there is no touchable window or gesture monitor at (640, 950) in display 0.

Here are some startup logs:

10-23 21:32:55.946 22452 16553 I Finsky  : [21232] agax.c(3): Verify: Verification package=com.example.cargo_mobile_winit_test, id=77 response=0
10-23 21:32:56.160  2053  2201 I ActivityManager: Force stopping com.example.cargo_mobile_winit_test appid=10394 user=-1: installPackageLI
10-23 21:32:56.161  2053  2237 I PackageManager: Update package com.example.cargo_mobile_winit_test code path from /data/app/com.example.cargo_mobile_winit_test-uhgxk2lrSV4gcG9LuGa7Fw== to /data/app/com.example.cargo_mobile_winit_test-sCxw4BSvRu7RPVywW1Qudw==; Retain data and using new
10-23 21:32:56.161  2053  2237 I PackageManager: Update package com.example.cargo_mobile_winit_test resource path from /data/app/com.example.cargo_mobile_winit_test-uhgxk2lrSV4gcG9LuGa7Fw== to /data/app/com.example.cargo_mobile_winit_test-sCxw4BSvRu7RPVywW1Qudw==; Retain data and using new
10-23 21:32:56.161  2053  2201 I ActivityManager: Killing 8013:com.example.cargo_mobile_winit_test/u0a394 (adj 910): stop com.example.cargo_mobile_winit_test
10-23 21:32:56.165  2053  2201 D ActivityManager: makeInactive, ProcessRecord{7a9d7a 8013:com.example.cargo_mobile_winit_test/u0a394}, clear holder.state
10-23 21:32:56.166  2053  2201 W ActivityTaskManager: Force removing ActivityRecord{6018162 u0 com.example.cargo_mobile_winit_test/android.app.NativeActivity t22024 f}: app died, no saved state
10-23 21:32:56.563  2053  2237 I ActivityManager: Force stopping com.example.cargo_mobile_winit_test appid=10394 user=0: pkg removed
10-23 21:32:56.598  3650  3650 D MotoSystemServer: receive intent :package:com.example.cargo_mobile_winit_test#Intent;action=android.intent.action.PACKAGE_REMOVED;launchFlags=0x4000010;B.android.intent.extra.REMOVED_FOR_ALL_USERS=true;B.android.intent.extra.DONT_KILL_APP=false;i.android.intent.extra.UID=10394;B.android.intent.extra.DATA_REMOVED=false;B.android.intent.extra.REPLACING=true;i.android.intent.extra.user_handle=0;end
10-23 21:32:56.599  3650  3650 D MotoSystemServer:  packageName = com.example.cargo_mobile_winit_test
10-23 21:32:56.599  3650  3650 D MotoSystemServer: mRemovedPackages add: com.example.cargo_mobile_winit_test
10-23 21:32:56.608 22452 22452 I Finsky  : [2] ttq.n(8): Invalidating cached PackageState for com.example.cargo_mobile_winit_test
10-23 21:32:56.619  3069  3069 I GsaVoiceInteractionSrv: O received Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) }
10-23 21:32:56.623  3650  3650 D MotoSystemServer: receive intent :package:com.example.cargo_mobile_winit_test#Intent;action=android.intent.action.PACKAGE_ADDED;launchFlags=0x4000010;i.android.intent.extra.UID=10394;B.android.intent.extra.REPLACING=true;i.android.intent.extra.user_handle=0;end
10-23 21:32:56.623  3650  3650 D MotoSystemServer:  packageName = com.example.cargo_mobile_winit_test
10-23 21:32:56.624  3650  3650 D MotoSystemServer: #1 mRemovedPackages remove: com.example.cargo_mobile_winit_test
10-23 21:32:56.631  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.android.vending/com.google.android.finsky.packagemanager.impl.PackageMonitorReceiverImpl$RegisteredReceiver
10-23 21:32:56.648  3069  3069 I GsaVoiceInteractionSrv: O received Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) }
10-23 21:32:56.657  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.android.vending/com.google.android.finsky.instantapps.appmanagement.InstantAppRemoveMonitor
10-23 21:32:56.659  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.facebook.services/com.facebook.oxygen.services.fbns.RegisteredMqttSystemBroadcastReceiver
10-23 21:32:56.664  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.maps/com.google.android.libraries.social.peoplekit.thirdparty.viewcontrollers.ThirdPartyReceiver
10-23 21:32:56.665  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.photos/com.google.android.libraries.social.peoplekit.thirdparty.viewcontrollers.ThirdPartyReceiver
10-23 21:32:56.674  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.games.chimera.GamesSystemBroadcastReceiverProxy
10-23 21:32:56.674  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
10-23 21:32:56.674  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.googlequicksearchbox/com.google.android.apps.gsa.googlequicksearchbox.GelStubAppWatcher
10-23 21:32:56.685 22452 22485 I Finsky  : [20471] fvw.a(5): AIM: AppInfoManager-Perf > OnDeviceAppInfo > cacheHitCount=0, cacheMissCount=1. Missed  in cache (limit 10) : [com.example.cargo_mobile_winit_test]
10-23 21:32:56.692  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.facebook.katana/com.facebook.feed.platformads.AppInstallReceiver
10-23 21:32:56.693  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.magazines/com.google.android.libraries.social.peoplekit.thirdparty.viewcontrollers.ThirdPartyReceiver
10-23 21:32:56.693  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.mgoogle.android.gms/org.microg.gms.gcm.UnregisterReceiver
10-23 21:32:56.694  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.packageinstaller/com.android.packageinstaller.PackageInstalledReceiver
10-23 21:32:56.721  3650  3650 D MotoSystemServer: receive intent :package:com.example.cargo_mobile_winit_test#Intent;action=android.intent.action.PACKAGE_REPLACED;launchFlags=0x4000010;i.android.intent.extra.UID=10394;B.android.intent.extra.REPLACING=true;i.android.intent.extra.user_handle=0;end
10-23 21:32:56.721  3650  3650 D MotoSystemServer:  packageName = com.example.cargo_mobile_winit_test
10-23 21:32:56.734  3069  3069 I GsaVoiceInteractionSrv: O received Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) }
10-23 21:32:56.740  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.android.vending/com.google.android.finsky.packagemanager.impl.PackageMonitorReceiverImpl$RegisteredReceiver
10-23 21:32:56.741  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.facebook.appmanager/com.facebook.oxygen.common.packages.event.manifest.ManifestPackageEventReceiver
10-23 21:32:56.741  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.games.chimera.GamesSystemBroadcastReceiverProxy
10-23 21:32:56.742  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.gass.chimera.PackageChangeBroadcastReceiver
10-23 21:32:56.747 22452 22452 I Finsky  : [2] nyr.g(1): Installer: package com.example.cargo_mobile_winit_test was removed. replacing: true
10-23 21:32:56.748 22452 22452 I Finsky  : [2] nyr.P(18): Installer: Notifying status update. package=com.example.cargo_mobile_winit_test, status=UNINSTALLED
10-23 21:32:56.753 22452 22452 I Finsky  : [2] ttq.n(8): Invalidating cached PackageState for com.example.cargo_mobile_winit_test
10-23 21:32:56.757 22452 16577 I Finsky  : [21235] glz.accept(16): Cancelled 0 ongoing asset module downloads for package com.example.cargo_mobile_winit_test due to a concurrent app update.
10-23 21:32:56.797  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
10-23 21:32:56.815  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.googlequicksearchbox/com.google.android.apps.gsa.googlequicksearchbox.GelStubAppWatcher
10-23 21:32:56.816  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.ims/.receivers.RcsAutoStartReceiver
10-23 21:32:56.857 22452 22485 I Finsky  : [20471] fvw.a(5): AIM: AppInfoManager-Perf > OnDeviceAppInfo > cacheHitCount=0, cacheMissCount=1. Missed  in cache (limit 10) : [com.example.cargo_mobile_winit_test]
10-23 21:32:56.861  2053  3009 I ActivityTaskManager: START u0 {flg=0x10000000 cmp=com.example.cargo_mobile_winit_test/android.app.NativeActivity} from uid 2000
10-23 21:32:56.923 22452 16577 I Finsky  : [21235] glz.accept(24): Asset module broadcast after update successful for package com.example.cargo_mobile_winit_test. 0 sessions broadcast.
10-23 21:32:56.948  2942  2942 D ImsResolver: maybeAddedImsService, packageName: com.example.cargo_mobile_winit_test
10-23 21:32:57.047 22452 22452 I Finsky  : [2] ttq.n(8): Invalidating cached PackageState for com.example.cargo_mobile_winit_test
10-23 21:32:57.076 22452 16582 I Finsky  : [21237] ome.G(2): IQ: Notifying installation update. package=com.example.cargo_mobile_winit_test, status=UNINSTALLED
10-23 21:32:57.097 23661 16623 I FontLog : Package com.example.cargo_mobile_winit_test has no metadata [CONTEXT service_id=132 ]
10-23 21:32:57.140 22452 22452 I Finsky  : [2] VerifyInstallTask.mR(6): Verification complete: id=77, package_name=com.example.cargo_mobile_winit_test
10-23 21:32:57.162  2053  7472 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.facebook.katana/com.facebook.feed.platformads.AppInstallReceiver
10-23 21:32:57.180 22452 22452 I Finsky  : [2] ttq.n(8): Invalidating cached PackageState for com.example.cargo_mobile_winit_test
10-23 21:32:57.189  2053  7472 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.facebook.appmanager/com.facebook.oxygen.common.packages.event.manifest.ManifestPackageEventReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.photos/.account.full.FetchAccountPropertiesAppUpgradeBroadcastReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.photos/.account.full.SyncAccountsForLoginBroadcastReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.apps.photos/.notificationchannels.AppUpdateBroadcastReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.gass.chimera.PackageChangeBroadcastReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.googlequicksearchbox/com.google.android.apps.gsa.googlequicksearchbox.GelStubAppWatcher
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.google.android.ims/.receivers.RcsAutoStartReceiver
10-23 21:32:57.191  2053  2201 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.example.cargo_mobile_winit_test flg=0x4000010 (has extras) } to com.motorola.ccc.notification/.gcm.GCMAdminReceiver
10-23 21:32:57.516  2053  2202 I ActivityManager: Start proc 16650:com.example.cargo_mobile_winit_test/u0a394 for activity {com.example.cargo_mobile_winit_test/android.app.NativeActivity}
10-23 21:32:57.739  2053  2172 I WindowManager:   SURFACE show Surface(name=Splash Screen com.example.cargo_mobile_winit_test)/@0xded7294 on display:0: Splash Screen com.example.cargo_mobile_winit_test
10-23 21:32:57.919 16650 16650 V cargo-mobile-winit-test: ndk_glue: Start
10-23 21:32:57.925 16650 16650 V cargo-mobile-winit-test: ndk_glue: Resume
10-23 21:32:57.949 16650 16650 V cargo-mobile-winit-test: ndk_glue: InputQueueCreated
10-23 21:32:57.972  2053  3859 V WindowManager: Changing focus from null to Window{99ca8c4 u0 com.example.cargo_mobile_winit_test/android.app.NativeActivity} displayId=0
10-23 21:32:57.976 16650 16650 V cargo-mobile-winit-test: ndk_glue: WindowCreated
10-23 21:32:57.976 16650 16650 V cargo-mobile-winit-test: ndk_glue: WindowResized
10-23 21:32:57.979 16650 16650 V cargo-mobile-winit-test: ndk_glue: ContentRectChanged
10-23 21:32:57.988 16650 16650 V cargo-mobile-winit-test: ndk_glue: WindowRedrawNeeded
10-23 21:32:57.997 16650 16650 V cargo-mobile-winit-test: ndk_glue: WindowHasFocus
10-23 21:32:58.009  2053  2172 I LaunchCheckinHandler: Displayed com.example.cargo_mobile_winit_test/android.app.NativeActivity,cp,ca,970
10-23 21:32:58.009  2053  2172 I WindowManager: Window drawn AppWindowToken{421b057 token=Token{b8115d6 ActivityRecord{116b5f1 u0 com.example.cargo_mobile_winit_test/android.app.NativeActivity t22028}}}
10-23 21:32:58.010  2053  2172 I WindowManager:   SURFACE show Surface(name=com.example.cargo_mobile_winit_test/android.app.NativeActivity)/@0xd49df2e on display:0: com.example.cargo_mobile_winit_test/android.app.NativeActivity
10-23 21:32:58.628 29565 29802 I DeviceAppInfoWork: remove existing package for update: com.example.cargo_mobile_winit_test
10-23 21:32:58.629 29565 29773 I DeviceAppInfoWork: remove existing package for update: com.example.cargo_mobile_winit_test
10-23 21:32:58.658 29565 29802 I DeviceAppInfoWork: remove existing package for update: com.example.cargo_mobile_winit_test
10-23 21:33:00.207  2053  2189 I ActivityTaskManager: Displayed com.example.cargo_mobile_winit_test/android.app.NativeActivity: +1s150ms

Honestly, I am lost as to why this might be happening, wgpu template seems to be drawn fine for example. I'll try to investigate it futher soon, but any ideas would be really appreciated :)

NDK version: 23.1.7779620
Rust: 1.51.0

No device name for Android STB

While I execute cargo android run, it failed with the following message,

error: Failed to get device name
    Name regex didn't match anything.

It failed because I'm developing for an android STB which often have no bluetooth.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.