Anxiety free news reader for Android - developed using Kotlin

Overview

Android River is a modern Android 2.2 news app. It's now version 1.15.

Android River has the following features:

  • Read RSS 1.0, RSS 2.0 and ATOM 1.0.
  • Create your own custom River of News out of feeds.
  • Read RiverJs format.
  • Read OPML and display them in an outline.
  • Download and play Podcast with a custom made podcast player.
  • Create RSS feeds out of Google News, Kayak.com deals and Craigslist.
  • Feature a frequently updated sources of feeds to subscribe to.
  • There is no login required to use any of the functionality.
  • There are no ads.
  • It is super fast.
  • It is efficient with data/battery usage.
  • It has the awesome Holo theme applied even from Android 2.2.
  • Tweets links easily or read articles for later (great integration with Pocket)

The website for this project is at http://rivers.silverkeytech.com. Android River can be downloaded at Google Store http://goo.gl/kShgp.

This code is licensed under GPL version 3. Please read license.txt.

I develop Android Rivers using Kotlin programming language version M8. It might not be obvious that this is Kotlin project since there are a lot of Java code in the project. Most of these Java code are open source libraries that Android Rivers include in source form by necessity. Most of the Kotlin code is located at NewsEngine module and com.silverkeytech.android_rivers package at the main project.

By reading Android Rivers source code, you will learn about:

  • Using SQLite database.
  • High performance XML parsing.
  • High performance JSON parsing.
  • Implementing a media player.
  • Writing Android Service.
  • Accessing Android Clipboard.
  • Fragments.
  • Implementing Holo theme in Android 2.2 above.
  • Using Library modules.
  • First class Outliner UI support.
  • Asynchronous operations.
  • Managing file system.
  • Creating custom dialogs.
  • Implementing Sliding Menu.
  • Asynchronous HTTP calls.
  • Integrating Android Java library.
  • Implementing Arabic language support.
  • Implement EventBus.

Open Source Library used:

Comments
  • Fix nullability issues after updating Android annotations in Kotlin

    Fix nullability issues after updating Android annotations in Kotlin

    We infered new annotations for Android sdk (build 0.6.2000) and I removed some warnings and errros from your project. Note that in some places I added !! (not null assertion): I don't now what the application should do in these cases.

    opened by NataliaUkhorskaya 1
  • Add search term for CraigList subscription

    Add search term for CraigList subscription

    Right now CraigList subscription only rely on location and category. Allow user to add a search term within a category and bookmark this subscription.

    enhancement 
    opened by dodyg 1
  • Fix float literals (changed in Kotlin M6.2)

    Fix float literals (changed in Kotlin M6.2)

    In Kotlin M6.2 we changed resolve for constants with floating point: now when you write 1.0 - it's double and if you want to have a float you should add 'f' of 'F' suffix

    opened by NataliaUkhorskaya 0
  • Fixed compilation for 'assignment in an expression context'

    Fixed compilation for 'assignment in an expression context'

    We prohibit things like val a = while(b) { ... } val b: Unit = c = 1 when statement appears in an expression context.

    For function not block body it has worked so far (it was a bug actually). This commit fixes a compilation.

    opened by svtk 0
  • kt files

    kt files

    hi what is .kt files?

    file AndroidRivers1\newsEngine\src\main\java\com\silverkeytech\news_engine\syndications\rss\Item.java not compiling because not avaliable import com.silverkeytech.news_engine.syndications.ParsedDateFormat; import com.silverkeytech.news_engine.syndications.RssDate; import com.silverkeytech.news_engine.syndications.SyndicationsPackage;

    opened by boomsya 1
  • Add support for dynamic OPML subscription

    Add support for dynamic OPML subscription

    1. Subscribe to an OPML list
    2. Show them as rivers
    3. Check daily if the opml list is changed. If it's changed, download it. To detect the change, do ETAG comparison or simply by brute hash.
    enhancement 
    opened by dodyg 0
Owner
Dody Gunawinata
I develop primarily using ASP.NET Core, Flutter and Vue.js.
Dody Gunawinata
Free and open source manga reader for Android.

Build Stable Weekly Preview Contribute Support Server Tachiyomi Tachiyomi is a free and open source manga reader for Android 5.0 and above. Features F

Tachiyomi 20.2k Dec 30, 2022
Kotatsu is a free and open source manga reader for Android platform

Kotatsu is a free and open source manga reader for Android platform. Supports a lot of online catalogues on different languages with filters and search, offline reading from local storage, favourites, bookmarks, new chapters notifications and more features.

null 7 Dec 19, 2022
A complete Kotlin application built to demonstrate the use of Modern development tools with best practices implementation using multi-module architecture developed using SOLID principles

This repository serves as template and demo for building android applications for scale. It is suited for large teams where individuals can work independently on feature wise and layer wise reducing the dependency on each other.

Devrath 11 Oct 21, 2022
Plannr is an organizational platform developed using Java, in the form of an Android app, that helps university students coordinate their everyday routine.

Plannr Plannr is an organizational platform developed using Java, in the form of an Android app, that helps university students coordinate their every

Dana Al Shekerchi 2 Sep 8, 2022
NFC NDEF Reader and Writer. there are two separate activities for reading and writing.

kotlin-nfc-sample NFC NDEF Reader and Writer. there are two separate activities for reading and writing. Steps Clone the Project Open with Android Stu

null 2 Oct 1, 2022
TimeTrackerApp Android - Time Tracker App developed in kotlin

Time Tracker App (Android) It is a simple android app developed in kotlin progra

null 0 Feb 18, 2022
Mobile client for official Nextcloud News App written as Kotlin Multiplatform Project

Newsout Android and iOS mobile client for Nextcloud news App. The Android client is already available to download in the Play Store. F-Droid and Apple

Simon Schubert 118 Oct 3, 2022
Aggregated Android news, articles, podcasts and conferences about Android Development

DroidFeed Curated news feed for Android Developers! Stay up to date with the latest Android Development news. Built for the Android developer communit

Dogan Gulcan 183 Dec 2, 2022
An Android application for browsing video games and checking the latest gaming news from around the world.

Gamedge An Android application for browsing video games and checking the latest gaming news from around the world. Built entirely using the Jetpack Co

Paul Rybitskyi 602 Dec 25, 2022
News app sample with Retrof't

Android App Sample (ViewModel + LiveData + Kotlin + Retrofit + Dependency Injection (Hilt) + Coroutine) - News App Project Description In this project

Mouaz Kaadan 6 Sep 13, 2022
A simple App which fetches data from NewYork times api and show news to the user

Stay-TheNewsApp This is a simple java app, which fetches data from NewYork times api and show news to the user, News can be seen from various categori

Gautam Garg 0 Dec 7, 2021
Free and open source Android app to manage qBittorrent remotely.

qBitController qBitController is a free and open source app for managing qBittorrent remotely. Please note that qBitController is in alpha version. Us

Bartu Özen 12 Dec 25, 2022
A media player, currently only for Android, that allows you to play songs in background for free

Just Listen A music player currently only for android. It is using Audius public APIs to display and get the playlists/songs. Available on google play

null 68 Dec 27, 2022
push note is a free Android app that you can keep your notes in the notification bar in seconds.

push note - notification notes push note is a free Android app that you can keep your notes in the notification bar in seconds. Features ?? Super quic

Cafer Mert Ceyhan 56 Dec 10, 2022
Quizzify - Play unlimited quizzes with your friends for free🔥.

Quizzify - Play unlimited quizzes with your friends for free??. Quizzify is built using Kotlin and follows all modern android Development practices and hence is a good learning resource for beginners

Vaibhav Jaiswal 35 Jan 3, 2023
This is a sample app to demonstrate the power of using EventSourced models and the ease with which these can be modelled using Kotlin.

Lego 4 Rent This is a sample app to demonstrate the power of using EventSourced models and the ease with which these can be modelled using Kotlin. To

Nico Krijnen 4 Jul 28, 2022
Mocking for Kotlin/Native and Kotlin Multiplatform using the Kotlin Symbol Processing API (KSP)

Mockative Mocking for Kotlin/Native and Kotlin Multiplatform using the Kotlin Symbol Processing API (KSP). Installation Mockative uses KSP to generate

Mockative 121 Dec 26, 2022
Screencast using Minecraft blocks using Minestom

BlockScreen ??️ Usage Note: This can only be used locally, servers generally don't have capturable screens First, download the latest jar, then to sta

emortal 3 May 4, 2022