Oddbean new post about | logout
 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 

https://primal.net/downloads  
 LFG v1.0! 🌊 
 Finally. 🚀  
 Pretty slick, I dig it so far. First time that I've ventured outside of Amethyst for a while.

nostr:note162s5xqkta00h4vd7j8txe4fpys38nvp6ffcrvaqs5jk3gz6jjavqx4xgay 
 Primal is impressive af on iOS, looking forward to checking it out on droid! 
 I beg to differ 
 Date ? 
 I use #Primal because:

- Solid implementation and team.
- Works in the #Librewolf browser.
- Works on #GrapheneOS.
- Open source; no license traps.

nostr:note162s5xqkta00h4vd7j8txe4fpys38nvp6ffcrvaqs5jk3gz6jjavqx4xgay 
 I wanna switch to primal too 😎 
 love Primal
but more features in Amethyst 
 set up a LNURL so users can zap you ⚡️ 
 not until there are better noncustodial options. 
 I think over time we're going to realize more is not always better. I prefer stability and minimalism. Primal still missing critical features, but I think they're less likely to overshoot like Amethyst has. 
 I haven't experienced any instability in Amethyst.
nor does it seem particularly cluttered although its true I dont use most of the "features." 
 💯 agree 
 Nice work, congrats! 
 Didn't Primal used to be available on the F-Droid App store?

How about an F-Droid repo for us true FOSS advocates. The Play Store is irrelevant on my phones as I run DeGoogled OSes. 
 How come your Primal team doesn't answer questions directed @primal and or in DM's? 
 Congratulations on the release! 
 I can’t wait more for the v1.0 🔥 

When the next TestFlight version ??? 
 👀👀👀👀⚡⚡⚡⚡💪💪💪💪💜🧡💜🧡
nostr:nevent1qqsd9g2rqt97hhm6kxlfr4nv65sjggnekqay5upkwsg2ftg5pdffwkqpp4mhxue69uhkummn9ekx7mqzyrtp7w79k045gq80mtnpdxjuzl9t7vjxk52rv80f888y5xsd5mh55qcyqqqqqqgfr8x58 
 Fantastic job! Congrats miljan 🫂 
 IDEMO 
 👌👌 
 How do I Bookmark in Primal ?
 
 This is awesome, thanks! Wen localizations? Happy to help with Spanish if needed. 
 Use this URL in Obtainium on Android to download the most recent APK:


https://github.com/PrimalHQ/primal-android-app/releases

nostr:nevent1qqsd9g2rqt97hhm6kxlfr4nv65sjggnekqay5upkwsg2ftg5pdffwkqpp4mhxue69uhkummn9ekx7mqzyrtp7w79k045gq80mtnpdxjuzl9t7vjxk52rv80f888y5xsd5mh55qcyqqqqqqgfr8x58 
 Testing it with this reply, looks and feels slick ☺️
PV 🫂 
 Thank you! 

I'll continue using obtainium to pull it but grateful for the work y'all are doing. 
 As Tina Turner would say: You're simply the best (client) 🙌⚡ 
 Boooom - awesome news 💥✨🤘!

Primal for mobile & desktop ...
Aaaand ...
With an App in the Appstore it's a great opportunity to onramp people 🧡🫂🤙!

And if "they" decide to ban it, fortunately there are other options such as Obtainium hehe 😁!

Freedom of speech!

https://media.tenor.com/OigfSw7_HmMAAAAC/explosion-boom.gif 
 When push notifications? 
 Does anyone use Primal along side Amethyst? Is it working well?
I remember using Iris at some early point at the same time as Amethyst and that would regularly break both (as far as I remember...) 
 🤙🏾🤙🏾🤙🏾 
 Lets go
To the moon 🫂🫂🫂🫂 
 Great work, miljan 💪🏻 I am really looking forward to Primal's future. I absolutely honor that you develop for both iOS AND Android. Primal becomes more and more a serious daily driver, not only eye-candy 👌🏻 
 You forgot one
-Still Shadowbanning. 
 are you shadow banned?  
 Great success 
Congratulations miljan 💗💗 
 New Primal APK just dropped. Blazing fast. DMs working for me now. Looks like the complete package. 
nostr:nevent1qqsd9g2rqt97hhm6kxlfr4nv65sjggnekqay5upkwsg2ftg5pdffwkqprfmhxue69uhhyetvv9ujumn0wd68yurvv438xtnrdaksygxkruautvltgsqwlkhxz6d9c972hueyddg5xcw7jwwwfgdqmfh0fgpsgqqqqqqsalrp8u 
 Congratulations 🎉🚀✨💪!
A new player in the house hehe.
Looking good ...
https://image.nostr.build/0c2e1c1e8be3482288f8667f326c90eff423db294101610c650a72aaca70eb29.jpg 
 Congratulations guys! Hard work always pays off! LFG! 💜🍀🫂🌱 
 where is relay setting on Android app? 
 Fuck Primal. 
 I'm trying this out as of now. And I have to admit: Primal is fking gorgeous.

I'm used to the great great Amethyst, that sometimes is a bit buggy. Primal seems really smooth. 
 I'm trying this out as of now. And I have to admit: Primal is fking gorgeous 
 Can you add ~10px margin between text & images on posts 🙏https://m.primal.net/HRae.png 
 It's very smooth and quick. Some issues with search results and some user stats that appear to resolve when you close and reopen the app.  
 ? 
 Works smoothly for me, but can't find the relay settings page in it... Future addition perhaps? 
 Proud to witness how well you build 💪 
 great news. apk all the way. pv 🤙🏻💜
nostr:nevent1qqsd9g2rqt97hhm6kxlfr4nv65sjggnekqay5upkwsg2ftg5pdffwkqpzpmhxue69uhkummnw3ezuamfdejsygxkruautvltgsqwlkhxz6d9c972hueyddg5xcw7jwwwfgdqmfh0fgpsgqqqqqqs0l455m 
 trying it 
 tried it. so far so good. my only complain is nsfw is not auto hidden 
 not sure if it is a bug but messages are not viewable 
 Bravo, upgrade to v0.21.4 super smooth and without problems. 
 So the upgrade appeared in Aurora Store and although I had the previous version installed as direct download, the update through Aurora Store just worked (though I had to log in like with a fresh installation). 
 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]

``` 
 Used for some minutes

I like it

One feedback:

Need a button to know views count.

 
 what is primal? 
 Congratulations...keep it going!
I'm currently trying out the Primal iOS beta version.
I look forward to an approved  iOS app soon! 
 Nice work! Looking forward to using Primal more and more. 
 Estou testando. 👍🏽 
 @miljan any thoughts of adding nostr.build as an upload option? Many of your users have a nostr.build account that supports nip98 and nip96, it would be a nice feature 🤙 
 What about the ability to upload to one's own nostr.build account on @damus? Do you know if this is coming? 
 It’s here! If you have a nostr.build account it auto-downloads your media from Damus, Amethyst, Snort/Iris, NoStrudel, or Coracle.
Make sure it’s set to nostr.build in settings. 
 Ser, what is this sourcery? I thought it only uploaded to the free version of nostr.build (I was never asked to log in) so I've been uploading images to my account manually and copying links. I've now tested it and it uploaded the image to my account 🤯

Very impressive! 
 Nip98 
 Are there any issuees zapping on Android with Alby?  Can't seem to get it to work.  Works fine on PC browser but on mobile I get "Unable to zap, check your wallet connection". 
 I haven't tested each one for #GrapheneOS compatibility.

Any app that uses Google Play APIs is a bad experience on #GrapheneOS.

Teams that test on #GrapheneOS know that their apps will also work on stock Android. 
 Amethyst F-droid release is free of Google Play API. 
 💯
Can also be downloaded from Obtainium/Github. 
 Okay. 
 Amethyst F-droid release is free of Google Play API. 
 💯
Can also be downloaded from Obtainium/Github. 
 Okay. 
 Okay.