Introducing the Dtube Mobile App (Unofficial Android App)

in utopian-io •  2 years ago  (edited)

Yes! A dtube Android app

I'm very happy to announce the first release of the Dtube unofficial app! I am confident that every dtube user will love this!

Introduction

I really loved YouTube and the YouTube mobile app but as the madness of YouTube continued, I wondered. Could there be a better alternative? That's when I discovered d.tube, the decentralized video platform where you can earn money without ads. Sounds like a dream come true... I loved this site for what it was but it was also clearly in it's early stages as it even is now. I wanted this platform to really work and I knew one very important aspect of a website like this would be a mobile app. Being an experienced mobile app developer and seeing that none existed, I sought out to make my own. When I began I didn't even know anything about the Steemit API's and I began in the worst way possible. I began by downloading the whole dtube website HTML and parsing it for information. While I got a lot done this way in short time, I knew this was not ideal. First of all it was slow loading and secondly I didn't want to waste dtube's server power on my app. That's when I discovered the steem-js API. I began replacing small parts using this API where before I was parsing html. Eventually I replaced everything completely with the steem-js API for getting content. Everything loaded super fast now. While this app does use javascript for getting content, it is not a web-based app in the traditional sense such as apps that use Cordova or whatnot. That means UI is not rendered from the web languages which would often slow down apps significantly. This app is fast and looks great.

Why use this App as opposed to the Website?

Essentially for the same reasons you would have used the mobile YouTube App. It's buttery smooth, it requires a lot less http requests, uses less data, requires less rendering power. It's beautiful. Much of the content required for web request calls are already locally loaded in the app. For example the steem-js script is locally inside the app as well as the embedded-video player created by d.tube. This allows for less fetching of content for faster loading.

Features

  • Sync app with your Steemit account
    • Subscriptions sync
    • Subscribers count sync
    • Subscription feed sync
    • Comment/reply to comments/like/dislike/subscribe using your account
  • Secure login
    • This app stores your password securely using AndroidKeyStore and RSA encryption
  • Privacy
    • This app is completely free from tracking of any sort!
  • Search Steemit database for videos using the asksteem API
  • A beautiful & fast UI
  • Feeds
    • Subscription feed
    • Hot videos feed
    • Trending videos feed
    • New videos feed
    • Watch again feed (with removable history)
  • Over the air updates to app using github repo
  • it's a small 3mb app
  • Much more and much more to come as development continues

Ok! Enough with all the Details Already. How do I get it?

Glad you asked! The app can be downloaded as an APK (Android Package). This is a standard application package format than many of you already know about. I will eventually be putting this app on places like XDA Labs and Aptoide. Currently you can find the app on the Github Release Page . Just download the app-release.apk to your phone. Next make sure you have Unknown Sources enabled on your phone. Go to your phone settings > Lock Screen and Security (or just Security depending on your phone firmware) > Check the box that says Unknown Sources. This will allow you to install apps outside the Play Store. Now you can press on the downloaded app in your status bar and it should prompt you to install the app. Let me know if you have any problems and I can help. Press the install button and the app will be installed in a couple moments. Now the app should show up in your app drawer as D.tube.

Getting Started

Now that you got the app installed let's explore! When you open the app, you will be shown a screen like this presenting you with the hot videos feed

Notice that if you click on your subscription feed or the recently watched tab that it will be completely blank. This is because you are not logged in and you have not watched any videos yet. I would start by logging in. This will unlock many of the features that makes Steemit & Dtube awesome. Press the account icon in the to right of the screen and you will be prompted to a login

Now enter your username and your Steemit posting key. To get your posting key, log into steemit, click your profile icon in the top right, choose "change password", select "permissions tab", press "show private key" besides the posting key, copy that key to your phone. What I do is store a file on my phone with that private key so I can go back to it anytime. You could also email it to yourself. Then just paste that private key into the posting password box and press login. As discussed earlier, your password is safely stored and encrypted inside the app.

After logged in, your subscription feed will begin to populate and you will have your subscriptions in the right sidebar of the app as shown below

Now I just encourage you to explore the app! Play some videos, comment on a video, subscribe to a channel, and like videos. I am sure you will love this app!

Screenshots

Known Issues

There are some things I am still trying to work out completely. One is the formatting of video descriptions and comments. I'm using a very poor parsing method for this as found here in the method getFormattedText. Basically it needs to format it into normal HTML but it doesn't do very well as links are often fragmented and markdown is not properly processed. This is something I will have fixed soon in upcoming releases. Apart from that issue, one other one is that the app will freeze upon launch very rarely. I am not aware of what is causing this at the moment. Consider this release a beta build. More features and fixes are soon to come!

Libraries used

I did not reinvent wheels. I am very appreciative of all those devs who make this work!

Download

Just in case you missed the download link mentioned in the article.
Download Here

Proof of ownership

Utopian IO requires proof of ownership. Here is a screenshot of me logged into github as powerpoint45 while pushing to my repo. Also see line #119 here that links back to this post in the app. I have early videos showing the early stages of development on this app as seen by this post and on my YouTube. Notice that the YouTube video is unlisted which was done so I could feature it in one of my posts. As for the alias difference between this account and my Github. I use multiple alias's online. My discord is also powerpoint45 (you may have seen me around), just like my github, XDA(Check my donate link) and Play Developers Account.



Posted on Utopian.io - Rewarding Open Source Contributors

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hi. Thank formyour gret work. I'm asking if it possible to download video too? Tks

Thank you sir...

Most welcome sir..

  ·  2 years ago Reveal Comment

Omg awesome any plans on a iOS app

Not right now as I am not an IOS developer but I hear the official Dtube team may be creating an IOS app in the future.

Really nice app. Good work!

Hey @immawake I am @utopian-io. I have just upvoted you at 17% Power!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Thank you for your contribution.
We are happy to accept this once you provide proof of work, as in confirmation that the github work/account belongs to you, along with relevant pull requests.

Please edit your contribution accordingly to reapply for approval.
See the Utopian Rules.
You can contact us on Discord.
[utopian-moderator]

  ·  2 years ago (edited)

I added a Proof of ownership section in my article (at the bottom). README.md links to my Steemit acccount. I wasn't sure what you meant by " relevant pull requests" as I have never been too good with git. I just asked on Utopian discord about it. Oh and my discord is also powerpoint45 just like my github, XDA and Play Developers Account. I hope this is enough proof for you...

Thank you, yes that looks good now.
Contribution approved :)

Hey there, how can I contact you? I've already cloned and looked at the project, I can definitely see some room for improvement and some things I think would be pretty cool to add.

Do you have a discord? powerpoint45#0582

Totally awesome. I’m so glad there are people who can help me figure out how this system works. Just quick suggestion if I may. Can you please make it like the older version of YouTube that constantly gave you recommendations based off of what you are watching at that moment. Example.. when I’m in a fiat currency rabbit hole; don’t recommend a cute kitten video, or something about what the president did or didn’t do. Just give me a recommendation for what I’m into at that moment. At least until I close the app.
Sorry. That was kind of long winded, but I hope I can somewhat contribute to helping you.
B.

Thanks! Ya that sounds like a great idea. And plus i'll be adding a settings page soon and that could be an option. Basically the reason I did it the way I did (where the reccomended videos are just other videos from the current author), is because that is the way d.tube currently does it. Plus it was quicker to implement since I wanted to get it ready for a release :D

Congratulations @immawake, this post is the forth most rewarded post (based on pending payouts) in the last 12 hours written by a Dust account holder (accounts that hold between 0 and 0.01 Mega Vests). The total number of posts by Dust account holders during this period was 2917 and the total pending payments to posts in this category was $458.56. To see the full list of highest paid posts across all accounts categories, click here.

If you do not wish to receive these messages in future, please reply stop to this comment.

Can you upload to d tube using your phone ?

Did you ever find out? I can't find anything

Terima kasih banyak,karena sangat membatu sahabat di steemit

Hi. Is there any way to keep the video (sound) playing when the phone locks?

Hey thanks for the really good sounding work!
But I have a problem with logging into my account.. I tried it a few times with my correct account data (username + posting key). The form is loading a really short time but then nothing happens.
I am using Samsung galaxy s7 edge with android 7.
Could you please help me?

Short question. I am a software developer and would like to use the dtube logo in my app (there would be "share on dtube" or "visit my dtube" icon. Can I use it?

sure that's fine.

Nice that there's an DTube app now. However I would hold off there is an official app from DTube unless DTube officially acquires this app

I've talked with the Devs. I may be helping with the official app at some point.

Nice app!
The only thing stopping me from using it right now is the apparent lack in Chromecast support. Are there any plans to add that feature?

What about for apple(iOS) me wanty too

If I get he app will dtube find all my missing videos. 4 months of daily videos gone. Blockchain isn't permanent like they say. I was told it's a bug. I think it's censorship.

How can I retrieve mp4's directly with the DTube API? (https://github.com/dtube)

I'm building an Android app to discover and organize crypto tech news across, text, audio, and video and creating a customized suggestion engine. Currently I am using YouTube's API. I would like to explore integrating with Dtube.

Thanks for this. I have been waiting for the mobile app for a bit. I have installed it on my Samsung Galaxy S5 and it works OK. I can't get it on my Samsung tablet though. Is it only suitable for later Android versions?

It only works on Android 4.4+. Check system settings/about on your tablet to see if you are running Android 4.4+.

Thanks for getting back. My tablet is Android 5.1.1 and my phone is Android 6.0.1.