Thread

Primal for Android is now available on Google Play Store in open testing mode. Starting with today’s release, we will offer Play Store, APK, and source code downloads for each release. Please note: due to the way Play Store app signing works, upgrades will only work if you use the same install method. This is a big milestone for us, as we march towards the full v1.0 release in the coming weeks. πŸ’ͺ New Features - Feed: link previews - Feed: image media gallery - Feed: video thumbnail previews - LUD-06 support Fixes - Improved CDN handling - Removed shimmer from avatars when loading - Fixed highlight color in note content - Various small fixes

Replies (47)

hey @miljan, getting a pretty consistent crash when zapping and reacting to notes on GrapheneOS: ``` type: crash osVersion: google/husky/husky:14/UD1A.231105.004/2023111500:user/release-keys package: net.primal.android:56 process: net.primal.android processUptime: 65287 + 282 ms installer: dev.imranr.obtainium android.os.NetworkOnMainThreadException at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1675) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:874) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at xd.d.F(Unknown Source:101) at xd.d.F(Unknown Source:22) at xd.c0.F(Unknown Source:34) at qd.b.F(Unknown Source:9) at qd.e.F(Unknown Source:35) at od.d.F(Unknown Source:15) at xd.i.d0(Unknown Source:7) at xd.c0.T(Unknown Source:4) at kd.m0.h(Unknown Source:27) at gd.e.b(Unknown Source:99) at gd.c.k(Unknown Source:12) at p6.a.s(Unknown Source:8) at g7.e0.run(Unknown Source:107) at android.os.Handler.handleCallback(Handler.java:958) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:205) at android.os.Looper.loop(Looper.java:294) at android.app.ActivityThread.main(ActivityThread.java:8199) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552) at com.android.internal.os.ExecInit.main(ExecInit.java:49) at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:359) Suppressed: android.os.NetworkOnMainThreadException at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1675) at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:436) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:874) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:862) at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:835) at xd.d.F(Unknown Source:101) at xd.d.F(Unknown Source:22) at xd.c0.F(Unknown Source:34) at qd.b.F(Unknown Source:9) at qd.e.F(Unknown Source:35) at ld.b.t(Unknown Source:64) at ld.b.g(Unknown Source:12) at qd.e.close(Unknown Source:15) at xd.q.close(Unknown Source:2) at od.d.close(Unknown Source:8) at xd.c0.close(Unknown Source:9) at j6.n.i0(Unknown Source:8) at kd.m0.h(Unknown Source:38) ... 14 more Suppressed: l7.f: [p1{Cancelling}@2fcef3d, Dispatchers.Main.immediate] ```