-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
What version of android is the APK file for? #172
Comments
I'm not sure which version. I'll have a look in a bit. It works on my phone, which is Android 14. The ndk target version is all over the place in the build. I'll look into getting that down to the lowest possible version. Note that qTox really doesn't work very well on android even when it does work, it's currently more of an experiment. |
this is a very useful experiment! |
Can you try the apk from #173? https://github.com/TokTok/qTox/actions/runs/12100028404/job/33738195300?pr=173#step:5:22 |
Also, which CPU does your phone have? If you don't know, then which manufacturer/model is your phone? We're currently only building arm64, but Android 7 is possibly running on 32 bit ARM. |
ASUS zc550kl, Qualcomm Snapdragon 615 MSM8939 -- arm64 v8a is just right for my processor. |
If you can run |
The new version also crashes, but now the word QTOX has time to appear on the screen. I'm currently learning how to use debugging via USB. |
logcat.txt |
I think this is the error. I'm not sure how to fix that. There's still #173. I don't know if that'll help at all.
|
It does move into _ZN5Nexus9showLoginERK7QString+284. I need to get the .so to see what's happening at offset 284 in that method. |
do you need any library from my phone? libart.so? |
No, I don't think so. I don't really have a clue what is going wrong there. I'll have a look at our binary in a bit. |
I found it strange that qtox does not require permissions to access files, camera, microphone, etc... |
It does require it, but doesn't ask for it yet, so it won't get access from Android to those things. I need to add those requests to the Android manifest so the OS can know we need them. |
https://github.com/TokTok/qTox/actions/runs/12110087957/job/33759961201?pr=182#step:5:24 <- here is a debug build. Maybe it'll give us more information about what's going wrong. https://github.com/TokTok/qTox/releases/download/nightly/qTox-nightly-arm64-v8a-debug.apk is always the most up-to-date one (currently the same as above). |
when installing i get "error parsing package" |
#185 try the release APK in this PR build. Also run |
run adb logcat while installing |
Can you tell me around what time you tried installing it? There are a bunch of things in that log about qtox, one of them is the |
downloaded both files from the links above
|
I see the manifest is wrong:
We need #173. |
new nightly builds are being installed |
Interesting, so what I see is:
Line 156 in a646758
qTox/src/widget/loginscreen.cpp Line 55 in a646758
qTox/src/widget/loginscreen.cpp Line 73 in a646758
Then a bunch of things happen inside Qt:
From here, it gets a bit difficult, because that code is inlined, but it's roughly here: https://github.com/qt/qtbase/blob/9cb0d48aae81c5436bda783b64721d0b77bc3f6c/src/corelib/kernel/qobject.cpp#L4224. The rest of the stack trace (which doesn't have symbols, but I checked with objdump):
So there's a At this point it's pretty difficult to figure out why that's happening unless we somehow manage to get an One idea I'd have is to try to build the Qt library fully static (avoiding PLT lookups). I don't know whether that can work at all, but it's something we can try. |
if i had gdbserver i could copy it to the device |
Building a fully static Qt for Android is basically impossible. I just tried it, and Qt-for-Android is really not made for that. It does things when the JVM loads the shared objects. It would be a significant amount of work on Qt core stuff to make that work. |
I've never debugged a native app on Android. This stackoverflow answer explains how. It crashes too quickly to attach a gdbserver, but I can add something to This is definitely outside the realm of things I've done before on Android :P. I don't think I can assist very much in that debugging, but I'll make a PR with the busy-wait bool in case you want to try that. |
do you have a gdbserver that i could copy to the device for debugging later? |
#188 <- this will produce an apk in the android builds with that infinite loop in it. If you manage to attach a gdbserver, this will let you continue the program by setting the global variable to true. https://gist.github.com/sekkr1/6adf2741ed3bc741b53ab276d35fd047 seems to explain how to get a gdbserver onto your device. This is the lldb-server I got from my NDK: lldb-server.gz. You'll need to attach |
I downloaded the file "qTox-nightly.arm64-v8a.apk" on my phone with android v7.1.2,
but when I try to install it I get the message "error parsing package".
Is it possible to lower the minimum requirements for the android version if this is the reason?
The text was updated successfully, but these errors were encountered: