loading...
Cover image for Announcing DEV for Android
The DEV Team

Announcing DEV for Android

maestromac profile image Mac Siri ・1 min read

The wait is over! We are excited to announce the DEV Community app for Android. Similar to our approach with iOS, we heavily leveraged native shell/web views and will include more native code over time. There are a few known issues but we're excited to have a starting point for future enhancements!

We're also on Product Hunt today. 😊


Get it on Google Play

Please let us know your feedback and suggestions as you start to try out the app. And just like our web app and iOS app, the Android app is open-source!

Contributions by way of issues and PRs are very very welcomed:

GitHub logo thepracticaldev / DEV-Android

DEV Community Android App

DEV Android πŸ’

This is the official repository for the dev.to's Android app.

Get it on Google Play

Design ethos

DEV Android is an WebView based application. This application is inspired by Basecamp's approach. We will grow to include more native code over time.

By leveraging webviews as much as possible, we can smoothly sync up with our web dev work. And where it makes sense, we can re-implement certain things fully native, or build entirely native features. Life's a journey, not a destination.

Contributions

We expect contributors to abide by our underlying code of conduct. All conversations and discussions on GitHub (issues, pull requests) and across dev.to must be respectful and harassment-free.

System Requirements

You will need to have Android Studio 3.5 or up installed.

Usage

$ ./gradlew tasks --group=custom
------------------------------------------------------------
Tasks runnable from root project
------------------------------------------------------------
Custom tasks
------------
androidTest - Run android instrumentation tests
hello - Hello World task
…

GitHub logo thepracticaldev / DEV-ios

DEV Community iOS App

Build Status GitHub License Language Maintainability Test Coverage

DEV iOS πŸ’–

This is the repo for the dev.to iOS app.

Status:

Released first version, more info: https://twitter.com/bendhalpern/status/1061323718058786822

Design ethos

We will grow to include more native code over time, but for now we are taking the approach of native shell/web views. This approach lost favor early in iOS days, but I believe it is a very valid approach these days. It is inspired by how Basecamp does things. Our tech stack is a bit different, but the ideas are the same.

https://m.signalvnoise.com/basecamp-3-for-ios-hybrid-architecture-afc071589c25

https://signalvnoise.com/posts/3743-hybrid-sweet-spot-native-navigation-web-content

https://signalvnoise.com/posts/3766-hybrid-how-we-took-basecamp-multi-platform-with-a-tiny-team

https://www.youtube.com/watch?v=SWEts0rlezA

By leveraging wkwebviews as much as possible, I think we can make this all pretty awesome and sync up with our web dev work pretty smoothly. And where it makes sense, we can re-implement certain things fully native, or build entirely native features. Life's a journey, not a destination.

Contributing

  1. Fork and clone the project.
  2. Install Carthage. If you use Homebrew…

You can still install the app as PWA and we will continue to support various installation paths of DEV.

Happy Coding ❀️

Posted on by:

maestromac profile

Mac Siri

@maestromac

I'm a refactor-loving developer and I promise you I have nothing to do with Apple's Siri.

The DEV Team

The team behind this very platform. πŸ˜„

Discussion

markdown guide
 

We have more features to implement but we wanted to get this up as soon as it was a solid, usable solution.

Speaking of installable instances of DEV, did you know you can install our site as a desktop PWA? There are some definite gotchas to the current state of desktop PWA but it's an interesting possible future.

 

The PWA is awesome. I have been using it most of the time on phone. It works pretty well. 😎

 

what are you finding lacking in current state of PWAs that you need for dev.to?

 

Specifically for desktop, there are just a few unanswered questions about how certain functionality would be delivered. It's just early and some of the features we might want to use are not yet shipped.

On mobile, especially Android, it's been really nice. But we wanted to get into the native realm because certain APIs may never ship to PWA and getting into native is important to ensure the best longterm user experience.

By mostly relying on webviews, it's not that hard to ship to as many platforms as possible.

But we wanted to get into the native realm because certain APIs may never ship to PWA and getting into native is important to ensure the best longterm user experience.

Can you show us what APIs ? πŸ€“

Curious to learn what specific APIs too myself.

I'm all for the iOS, Android apps as options, however, I doubt there's anything that'll be implemented in the natives that isn't supported in the browser at the moment.

The web API support has advanced interestingly.

Anyway kudos to the team behind the platform apps. Enjoying the PWA

 

Was React Native used to develop the app ? If so, What UI kit was used to give the app the same web ui feel ? This app is really cool like its PWA sibling.

 

I took a look at the source code on github and it looks like that it's a native Android app, but it uses a webview that contains the website. But I don't know that for sure...

It would be cool if this was developed using React Native. I would want to contribute :)

 

Is there an API that allows posting on dev.to?

 

I was not able to figure it out. I was browsing thorough the code for an hour and couldn't figure out how to login using the API.

 

Is there any beta program one can sign up for??

 

I tried to login via twitter/github using the app. It redirects me to my mobile browser and asks me to login with twitter, but when I do I only get logged in my Dev account in the browser not in the app.

 

Sorry everybody. As stated, having Chrome as the default browser is the temporary work around. We will address this in the upcoming hot fix.

 

I have had the same issue before I removed the PWA version of the app. Try removing it and then logging in again :) worked for me.

 

Ahh perfect! I was having the same issue but this seemed to fix it! Thank you!

I bet the PWA service worker is being a bit too aggressive in what requests it captures and tries to handle, but that's really just a shot in the dark lol!

 
 

What's your default browser? There's a bug authenticating with Firefox as default browser. I switched my default to Chrome and tried again; logged into the app with no problems.

Thanks for this. I was also using firefox as my default browser. I switched to chrome as my default browser, but the app still opened firefox for the login. I had to uninstall firefox first, now I've successfully logged into the app with chrome.

 

My default browser is chrome, but this still happens to me. I had to uninstall it and get back to the PWA.

 

Super excited about this announcement. Awesome job and hat-tip to @maestromac who led the charge here!

We now have apps for Android, iOS, PWAs, and even some (community-built) CLI tools. Of course, all of the above are open-source, and are ready to be improved with the community's help.

 

Neat! Any advantage to the Android app over the PWA? Been using the PWA for a while now and it's great! Better than most native apps I've used.

 
 
 

Last time I checked the repo there was nothing there, I was planning on working on a poc version and making a PR to open a discussion.
I guess work was being done in private πŸ˜‰

Congrats on the Android release!

 

This is probably a known issue already, but although I'm able to login with GitHub, I have to login again every time I kill the app. The login flow itself (i.e., having to open the browser) could use some work as well. Other than that, it's a great start! It's already faster and smoother than the PWA version, so well done!

 
 

Haha, just tried it again, and now it works :P my session gets restored. They probably updated the website to persist the session token or something.

 

I have both Firefox and Chrome installed in my phone (running Android 5.1). I managed to login using Chrome and I was successful in this... but the App never loads my avatar and my feed. I see only the first article and the following ones keeps loading.
I tried the process (erasing data, performing the login with Chrome) several time with always the same result.
Is there something I can do to correctly login or is it better waiting for an update?

Thank you for the good work!

 

A new version was just released. Can you please try it out and let me know if the problem still persists?

 

I'm still in the same situation and I cannot figure why.
I erased the data and I log in via github (the login process is now inside app).
That's a screenshot of what I got:
still loading...
(hope this helps)

Thank you!

Sorry to you that you are still expericing this. I'll create an issue on your behalf.

This is the issue. Can you please tell me your phone's specs?

 

Excited to see this. And happy to say that this is my first data entry from aforementioned app. πŸ™ŒπŸŽ‰πŸ’―

Just installed bit and it is super responsive! Look forward to using it more.

 

Great work on this, y'all. I'm super pumped to have a native dev.to app on my phone, at long last! The PWA was doing the trick for quite a while, but a full app is πŸŽ‰

This is quickly becoming one of my favorite places to learn and discuss the world I work in. Thank you for that. πŸ™

(An authoring question: how does one embed github repo cards in posts like you've done?)

 

It's our liquid tags. 😊

{% github https://github.com/thepracticaldev/your-repo-url-here %}
 

Sweet! Ah goodness there's so many of these. Wow!

 

@dev.to team - Kudos to you for releasing an Android app to enable everyone access content right on their fingertips.

Like it's been already pointed out, could there be a feature to include Github auth within the app itself than opening a browser?

PS: Comments work flawlessly πŸ˜„

 

Woo, dark theme works in the app πŸŽ‰ Now to go bookmark another 1000 articles because it's so easy

 

Oh well, I just uninstalled the app after trying to use it for a month. In the end the killer non-feature was the inability to easily Share an item to email. As I'd keep finding myself copying the URL to clipboard and going to Firefox anyway, I've replaced the app with a home page link for Firefox.

Trying to use the URL pasted straight into an email was a fail as it seems impossible to then clip the title text from the app.

For context, I use Firefox across all platforms, albeit with no Apple platforms in the set.

 

Thanks for this. We'll make improvement in that front in the upcoming version.

 
 

Downloaded and install. It is Awesome.
Thanks Dev.

 

CongratsπŸ‘πŸΌπŸ€© the app is super fast and neat!
I'll check and follow the repo for sure

 

Replying from the android app and it's awesome

 

Just got it! This is exactly what I was looking for! β™₯️

 
 

It gives error when you try to login. I tried to login with github, it opens the auth link in browser but when you login on the github, it says csrf error.

 

Great! It's a good start, sure it will improve over time with the community's contributions!

Just to know, will you post somewhere what do you want to add or improve to the app?

 

Thanks for the feedback! Following our repo is the best way to stay up to date with our plans.

 
 

I'm following, so I'll take a look. I suppose you'll post desired features too, so if I want to contribute I can see what would you like to be implemented.

 

I'm using it! I must say, with Xiaomi,that the login throws cors error and fails with the default MUI's SO browser. Using Chrome as default browser allowed me to successfully login. Good job!

 

Has the team thought about using flutter to create an app for both platforms? Only one code base to maintain.

 

Finally! πŸ₯³πŸ₯³πŸ₯³ I've been waiting for this. Thank you, guys! Keep up the good work!

I'm just sad that I couldn't download it because my phone runs Android 4.1... ☹

 

When will the Sailfish one be released? :D

 
 

Congrats! This is so exciting! :D Definitely starring and following the repo. Please let me know if I can ever help. :)

 
 

Side note: Love your Foster's home profile pic!!!

 

Nice interface... I think it is time for official API. It would make creating dev.to clients easier.

 

Only thing I am missing on PWA is dark mode. :( I wonder if there is a monkeyscript web browser for Android.