Making and testing the Android build from source?

I tested that build on a few of my phones (runs, but the New dialog getting cut off doesn’t let me do much:), but not on my Chromebook.

Chromebooks had to be switched to dev mode to install APKs, which is an astonishing amount of hassle :expressionless: Instead, I’ve been waiting for ChromeOS 80 which lets us do so much more easily. It should land this month, and Krita is the first thing I’ll test!

1 Like

We’ll want to release Krita 4.2.9 on fdroid, not sure if that helps your case somehow? (I have no idea what a create Chromebook is, I’ve never even seen one, I just know it’s some kind of a hybrid of everything :wink: )

3 Likes

Can’t wait!

Unfortunately, FDroid itself has to be installed and install any further apps on it “manually” as far as a Chromebook is concerned.

My Chromebook is a lovely little 10" tablet with built in Wacom EMR support which can run Android apps (and as such fit the tablet environment) and a “full” desktop browser, which is exactly what I wanted. But Google being Google, Android app support, while robust, is kinda gated behind the Play Store, which is the only way to install Android apps on ChromeOS without dev mode right now.

That changes with 80, but I’d still have to install the Krita APK directly myself.

Hearing that Krita is coming to F-Droid just rekindled my excitement, oh man! @tiar do you know how soon that could happen?

To chime back in with an update since it’s been a while, I’ve got a few drawing tablets for various reasons:

Wacom Cintiq companion Hybrid- Will likely never run Krita on its own, because Wacom is a less-than-supportive company.

Samsung Galaxy Tab S3- as of right now, this is the only Android device I have that will run Krita for Android, but it’s still running the original build from sh-zam that was posted earlier in this thread. Downloading the latest unsigned Nightly APK takes a long time, spends just as long “staging app”, then fails to install.

Acer Chromebook Spin 11- This one is having the worst luck of them all. I have Krita (Linux) installed through Steam, and the canvas flickers unusably every frame I try to draw on the canvas. Krita (Android) just won’t install, it is having the same issue as the Tab S3 above with the nightly build of Krita. Linux for ChromeOS is yet still in beta, and Krita for Android is still in an Alpha kind of state, so unless I see a request for me to start posting bug reports somewhere, I think I’ll let this one keep waiting.

2 Likes

Most likely with our next release which would 4.2.9, Krita would appear in F-Droid. And fir reporting bugs you can use our current bug tracker, bugs.kde.org just make sure that you select you Operating System as Android, :upside_down_face:

1 Like

A belated report: I managed to install Sharaf’s build shared by hellozee on my ARM64 ChromeOS tablet and ran it just fine! Nothing crashed or errored out during my testing. :raised_hands:

The only issue I noticed was that stylus tilt does not work (which other Android painting apps on the tablet can work with), but pressure does. I’m not sure if tilt is supposed to work on this build on not.

And, of course, that the app is pretty sluggish, but part of that is because my tablet (Asus CT100P) is a bit on the weaker side.

Well, that build is pretty old :slight_smile:

Current master does support tilt.
Sluggishness might be the reason of Krita using QPainter rather than OpenGL ES, which was also fixed.

You can get the apk from binary factory, but you will have to sign it yourself. You can also wait for few days, I will upload the signed one and post the link here.

6 Likes

The APKs are ready. I have built, signed and uploaded the APKs:
Krita-x86-signed.apk
Krita-arm64-signed.apk
Krita-arm32-signed.apk

I am sorry, it took me quite a while to upload this. Unfortunately, before giving out APKs I wanted to make a patch to hide that hideously big Menu Bar forever. I tried to wrestle Qt to make it happen and it did kind of happen, but in a very ugly and non-deterministic way. So, I guess it will take some more time before it is ready :frowning:

Thank you for testing!

PS: I noticed, when you start Krita for the first time (after freshly installing the app). It takes time to load resources (arm64 about 30 seconds, arm32 about a minute). I am assuming this has something to do with the latest resource rewrite being done on master.

7 Likes

I’m afraid I failed to install it with the following message:
failed to install <filepath>: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]

This is on the same ARM64 Chromebook tablet I installed that very old build on. I uninstalled it first, tried to install the new 64bit APK, and it failed. The old version still installs, which I checked just in case.

Googling your device, it does implement ARM-v8 instruction set. I am not sure why it failed with that error.

Give me an hour, I will build and upload an APK for ARMv7 as well and update the above comment.

I hope you downloaded the Krita-arm64-signed.apk, not the x86 one!

1 Like

Yeah, I definitely got the arm64 one. It’d’ve given me an architecture mismatch error immediately after running adb install if I hadn’t, I’ve done that before :smiley:

I wonder if I can get you more detailed logs. Checking.

Edit: nothing is showing up on logcat :[

1 Like

I have updated my previous comment. It now includes arm 32-bit version as well :slight_smile:

1 Like

I just tested on a Chromebook, and there it worked, too: https://twitter.com/Krita_Painting/status/1242799866553778176 – had to enable developer mode, though.

3 Likes

I must confess I’m kinda jealous now.

Can we get an armeabi-v7a build like before please, @sh-zam? :pleading_face:

Edit: This tablet definitely is ARMv8 though, I just checked /proc/cpuinfo too. Why won’t it install :sob:

I’m afraid, that arm32 is armeabi-v7a build.

What version of android is your tablet running?

1 Like

Oops, I didn’t realize I could install the 32bit build too. :man_facepalming:

I just tried it, it works!! :partying_face: Thank you, and sorry for postering. I’ll go test the actual app now!

Also, my tablet is currently running ChromeOS 81 (beta) with Android 9 (March 5 security patch, which is certainly better than my phone can do):

Installed it on my phone. It does take time to load.
Can’t create a new file but it seems fine :ok_hand:t5:

Notes after running the 32bit build on a ChromeOS running Android 9 (on a CPU that claims it’s ARM64v8, but can’t install the ARM64 build.)

  • It took me 2 minutes and around 10 seconds for the app to first launch.
    • My machine is pretty weak.
  • After creating the first file, the app didn’t actually “refresh” the display.
    • It didn’t freeze up, but clicking on any buttons or anything didn’t register since the screen wasn’t updating.
    • This lasted several minutes until I accessed the three-dot menu to create a new file again, and then the pop-up window made it refresh the display underneath, at first around the fringes with some unclean redraws, and then fully revealing the canvas with marks I had made before without realizing.
    • Thereafter, it kept rendering just fine.
      • I have not yet restarted the app.
    • Subsequent restarts of the app didn’t repeat this issue.
      • This issue repeats sometime after a restart, but not every time.
  • It performs SO much better now!
    • There is still some noticeable latency to the cursor with large brushes, but I can absolutely draw with it now!
      • The smallest brushes, like c) Pencil-1 Hard probably perform as fast as the fastest input latency I’ve observed on this device to date!
      • Whereas moving up to b) Basic-5 Size Opacity makes the latency too much to sketch with, but still usable for painting.
    • I can’t quite eyeball if the cursor itself lags behind the stylus with large brushes or just the mark.
      • Which also means that even with the latency of large brushes, it’s not that slow!
    • This is compared to the old build where everything was too slow to even let me form circles.
      • Canvas Graphics Acceleration with OpenGL ES enabled by default, which I hadn’t checked if it was on the last build but apparently was not?
  • Brush tilt registers.
    • But the angle is offset by 90° on my device.
      • The brush preset c) Pencil-5 Tilted only works as expected—with the lead lengthening towards the tilted stylus as opposed to at an oblique angle—once I edit the preset’s Brush Tip rotation to 90° down from the 180° it has by default.
  • Long-press to right-click emulation isn’t in yet?
    • I just learned today that layer clear function is under Edit and not Layer :]
  • The three-dot menu opens the first level to the right, as expected, but subsequent menu levels render to the very left of the display.
  • No on-screen keyboard pops-up for text-fields.
  • Closing and restarting the app makes it crash every time.
    • But then the second restart after the first crash opens just fine.
  • That titlebar sure is thicc with a surplus of C’s…
    • Wouldn’t say no to the menu being accessible with pointing devices elsewhere within the app and using the whole thing in full-screen mode by default.
2 Likes

If that problem of dialogues being bigger than the screen could be solved somehow, that would help desktop Krita as well. Lot’s of people have that issue on desktop when the HDPI setting is wrong, and then they can’t access the Save button in the settings…

1 Like

I just now got a chance to test this out on my devices, and MAN this runs way smoother now!

Samsung Galaxy Tab S3:
-This still does not display the top bar that contains the options like File, Edit, View…", but they are accessible via their keyboard shortcuts. otherwise, runs mostly great, barely any slowdown.
-occasionally erasing something does not erase it, but then when I try drawing over it that section of the canvas will refresh and what I erased is actually gone.
-certain tasks like moving taskbars would be practically impossible were it not for the wacom stylus being so precise, the UI spot you click to drag them around is so small.
-likely due to the screen resolution being so high.

Motorola G6:
-loaded just fine, but the UI did not scale well at all, I could not start a new canvas without getting creative. Didn’t bother drawing, this has no stylus.

Acer Chromebook Spin 11:
-Was able to install this without Developer mode. I’m running the Unstable branch, and one of the upcoming features in ChromeOS 82 is being able to use ADB in Linux to develop Android apps. I enabled that, opened up a linux terminal and was able to adb install the 32 bit version just fine.
-somehow ran just as well as the Samsung Tab S3, despite being a weaker device.
-lower resolution of the display fixes the issues with UI scaling.

Overall, after messing around for an hour or two, this is almost 100% usable for all my drawing/painting needs (after a bit of setup, of course). What’s getting in the way now is that certain keyboard shortcuts can’t be implemented, such as holding down shift while resizing something to keep proportions.

It might be a good feature request to add optional taskbar buttons for the missing functions, like to toggle shift or ctrl, or right click to toggle the radial menu.

3 Likes