Comments (22)
Another app experiencing the same issue has worked around it by resizing an image asset: uazo/cromite@1a8ef38. The workaround has been confirmed to work: uazo/cromite#595 (comment)
I have reported the issue also on the GrapheneOS forum at https://discuss.grapheneos.org/d/9645-javalangruntimeexception-could-not-copy-bitmap-to-parcel-blob as suggested in #2026 (comment).
from syncthing-android.
Just in case it helps anyone else that wants to upgrade syncthing before Google fixes this, I was able to download the apk from f-droid (be sure to validate the signature), and install it with adb install
. It installed on my Pixel 7 Pro without any obvious issues so far, despite still refusing to install from the f-droid app. Because the apk from f-droid's website is identical to the one that the app tries to install, f-droid will still detect it as having been installed from f-droid, and it should not wipe the app's data.
from syncthing-android.
I'm not sure that this is just GrapheneOS, because I can't get 1.27.0 and 1.27.1 to install from F-Droid on either a Pixel 7 Pro or a Pixel Tablet, both running the latest stock operating system (December 2023). Other F-Droid apps install without problem. I'll check my logs later today to make sure whether it's the same error or not.
from syncthing-android.
If it helps anything, both of my devices are currently running 1.26.1, installed prior to the December 2023 android update
from syncthing-android.
I'm guessing it has something to do with some changes to Package Installer in Android 14 QPR1. See here:
from syncthing-android.
As far as I can tell, the stock pixel rom hasn't released an update yet for this, but it appears to be in the beta changelog, so hopefully they push it in the January update, but that's still almost a month away
from syncthing-android.
As far as I can tell, the stock pixel rom hasn't released an update yet for this, but it appears to be in the beta changelog, so hopefully they push it in the January update, but that's still almost a month away
I can confirm that I had the issue and was completely unable to install Syncthing, and that when I opted into the Pixel beta and got the newer firmware out was resolved.
So the next firmware update should fix it for everyone.
from syncthing-android.
To be clear, the Android installer crashes here. This shouldn't happen no matter what we do on our end.
Did you try to contact the GrapheneOS devs?
from syncthing-android.
Yep, it appears to be the same error message on my Pixel 7 Pro, Stock OS, December 2023 update:
Stack Trace
Process: com.google.android.packageinstaller
java.lang.RuntimeException: Could not copy bitmap to parcel blob.
at android.graphics.Bitmap.nativeWriteToParcel(Native Method)
at android.graphics.Bitmap.writeToParcel(Bitmap.java:2271)
at android.os.Parcel.writeParcelable(Parcel.java:2584)
at com.android.packageinstaller.PackageUtil$AppSnippet.writeToParcel(PackageUtil.java:151)
at android.os.Parcel.writeParcelable(Parcel.java:2584)
at android.os.Parcel.writeValue(Parcel.java:2485)
at android.os.Parcel.writeValue(Parcel.java:2362)
at android.os.Parcel.writeArrayMapInternal(Parcel.java:1298)
at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1843)
at android.os.Bundle.writeToParcel(Bundle.java:1389)
at android.os.Parcel.writeBundle(Parcel.java:1367)
at android.content.Intent.writeToParcel(Intent.java:11807)
at android.os.Parcel.writeTypedObject(Parcel.java:2203)
at android.app.IActivityTaskManager$Stub$Proxy.startActivity(IActivityTaskManager.java:2077)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1873)
at android.app.Activity.startActivityForResult(Activity.java:5615)
at android.app.Activity.startActivityForResult(Activity.java:5573)
at android.app.Activity.startActivity(Activity.java:6071)
at android.app.Activity.startActivity(Activity.java:6038)
at com.android.packageinstaller.PackageInstallerActivity.startInstall(PackageInstallerActivity.java:701)
at com.android.packageinstaller.PackageInstallerActivity.lambda$bindUi$0(PackageInstallerActivity.java:479)
at com.android.packageinstaller.PackageInstallerActivity.$r8$lambda$RCIm8wl1VPqdfQgkgmrBIDbuvOQ(PackageInstallerActivity.java:0)
at com.android.packageinstaller.PackageInstallerActivity$$ExternalSyntheticLambda0.onClick(R8$$SyntheticClass:0)
at com.android.packageinstaller.AlertController$ButtonHandler.handleMessage(AlertController.java:144)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:205)
at android.os.Looper.loop(Looper.java:294)
at android.app.ActivityThread.main(ActivityThread.java:8194)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
from syncthing-android.
I'm running the fork version v1.27.0.1 installed via F-Droid on my Pixel 4a 5G without problems.
Edit: just installed the regular app via F-Droid. Everything working as intended. I'm using Droid-ify as my f-droid client and running vanilla Android 14.
from syncthing-android.
If it helps anything, both of my devices are currently running 1.26.1, installed prior to the December 2023 android update
This is my situation as well - one of my 6a devices never had it installed, I can no longer install it on that device as of today (all the 14 updates applied etc.) The other with 1.26.1 installed pre-14 upgrades is working just fine, but will not upgrade to the latest from F-Droid as of today. https://forum.f-droid.org/t/syncthing-1-27-0-1-wont-update-install-on-2x-pixel-6a/24552
from syncthing-android.
The reply in the grapheneos thread linked above suggests to me that this is an aosp (android) issue that was fixed, and system updates may not have rolled out to everyone affected:
Hello, the fix for this is on the latest version release. Please update your system.
So I suggest to upgrade your system if you are affected, as soon as you can.
from syncthing-android.
Reporting the same issue on Pixel 8 Pro after update to Android 14 UQ1A.231205.015 with the latest F-Droid version.
Really unfortunate, since I've uninstalled the app while trying to troubleshoot the upgrade. Google Play version of the app works though, so will continue using that till the fix is out.
from syncthing-android.
It installed on my Pixel 7 Pro without any obvious issues so far, despite still refusing to install from the f-droid app.
It fails for me on 2x different Pixel 6a w/December updates (one with the app already installed previously, one without) using a direct download; it's the system level Android APK installer failing, not the F-Droid client app.
from syncthing-android.
Well yeah, clearly not our bug - closing.
from syncthing-android.
So the next firmware update should fix it for everyone.
The brand new 2024-01-05 security update applied to my Pixel 6a devices does not solve the problem, still crashes.
Well yeah, clearly not our bug - closing.
It may not directly be, but it sure would be nice if the community was able to use this OPEN issue as a focal point until the actual problem is resolved. As it stands, the syncthing-android package (via F-Droid) is the one and only application out of everything on my devices which can't upgrade.
Tangentially it is our (syncthing) issue in the sense of there are workarounds which could be applied; other projects (linked above) have done workaround to avoid the bug, the syncthing-android packagers could possibly do the same but choose not to at this time.
from syncthing-android.
I've tried to limit the vector path length of our drawables in #2035. Could you test if the app is installable with these changes?
The debug apk can be downloaded for this build: https://github.com/syncthing/syncthing-android/actions/runs/7424933082
from syncthing-android.
I've tried to limit the vector path length of our drawables in #2035. Could you test if the app is installable with these changes?
Thank you - alas, it sadly seems to crash the same in my test on a stock 6a. I'm using my one device which has never been syncthing-installed ("clean") and it appears to crash the on-device APK installer app in the same way as the releases.
from syncthing-android.
It may not directly be, but it sure would be nice if the community was able to use this OPEN issue as a focal point until the actual problem is resolved. As it stands, the syncthing-android package (via F-Droid) is the one and only application out of everything on my devices which can't upgrade.
Sadly same thing for me. The last two versions of syncthing via F-Droid do not install for me.
from syncthing-android.
If someone is able to figure out what exactly triggers the crash, I could try to patch that.
from syncthing-android.
If someone is able to figure out what exactly triggers the crash, I could try to patch that.
Disclaimer: I'm not a programmer. :) Looking at how the other linked project solved it, it boils down to this:
chrome/android/java/res_chromium_base/drawable/themed_app_icon.xml
- android:width="900dp"
- android:height="900dp"
- android:viewportWidth="900"
- android:viewportHeight="900">
+ android:width="90dp"
+ android:height="90dp"
+ android:viewportWidth="90"
+ android:viewportHeight="90">
Using that as an idea, I started digging around in the code and found two "these are not int
values in the viewport declarations" anomalies:
- https://github.com/syncthing/syncthing-android/blob/main/app/src/main/res/drawable/ic_tag_text_outline_24dp.xml
- https://github.com/syncthing/syncthing-android/blob/main/app/src/main/res/drawable/ic_zipbox_24dp.xml
I found two others which had a "high" (non-24) viewport specified:
- https://github.com/syncthing/syncthing-android/blob/main/app/src/main/res/drawable/ic_qrcode_24dp.xml
- https://github.com/syncthing/syncthing-android/blob/main/app/src/main/res/drawable/ic_monochrome.xml
I tried to backtrace the Android API reference (VectorDrawable
-> Drawable
-> Rect
) and while I could be wrong, I think that everything that queries the viewport is expecting an int
in return based on my read of the Rect object, which just so happens to be a member of android.os.Parcelable where our crash is being reported in the stack trace:
My thought is "what if we make those values proper ints? and should they just be generically 24?" ; I have no idea what these things actually are to the code, the next person can maybe pick up my idea from here...
from syncthing-android.
I've tried to limit the vector path length of our drawables in #2035. Could you test if the app is installable with these changes?
The debug apk can be downloaded for this build: https://github.com/syncthing/syncthing-android/actions/runs/7424933082
I had the same initial problem on my Pixel 7a (with 5. Jan. updates) but I was able to install the provided debug apk via adb install
without any error messages. So far I couldn't find any problems with it.
from syncthing-android.
Related Issues (20)
- Broken Bountysource link in README HOT 1
- App keeps crashing after setting fswatcher delay to 0.1 sec HOT 8
- Could not access device ID + Disconnection
- Syncthing loading forever (Android 5.0) HOT 33
- FileUriExposedException on editing ignores HOT 2
- Typo error in welcome screen
- App not working despite phone is connected to wifi HOT 1
- Expecting binder but got null! HOT 2
- Syncthing stops running after a few weeks HOT 4
- Support for Android SAF HOT 4
- status about android10 (sony xperia XZ2 phone) and syncthing not being able to write in sdcard folder (DCIM one...) HOT 2
- Explanation for slow sync on Android w/lots of files + request for fix HOT 2
- No way to back out of subfolder HOT 1
- Unable to run in background -- unable to set battery usage to Unrestricted HOT 4
- Not running every hour HOT 10
- "Override Changes" button MUST WARN PEOPLE WHAT IT DOES. HOT 1
- Info: No releases on google play for now HOT 5
- Custom https-cert causes infinite hang at startup HOT 2
- "Run on specified Wi-Fi networks" gives specious error on app opening HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from syncthing-android.