Feedews | Android Universal RSS News App Template
$19.00
39 sales
Review of Feedews | Android Universal RSS News App Template
Feedews is an Android universal RSS news app template that is designed to provide users with a comprehensive and easy-to-use news reading experience. With its user-friendly interface, customizable categories, and built-in AdMob advertising, Feedews is a versatile template that can be tailored to suit a variety of needs.
Feature-Rich and Well-Coded
The app features a robust set of components, including a cardview-based news listing system, mini browser, and translateable language support. Additionally, the code is well-commented and easily extensible, making it perfect for developers who want to create a custom RSS app with ease.
Up-to-Date with Android SDK
The template stays current with the latest Android SDK, ensuring compatibility with modern devices and versions of Android. The most recent update (20 January 2023) addresses bug fixes and library updates to support Android 13, as well as enhancements for performance and stability.
Free Support and Community Help
The author offers limited free support for bug issues, while additional paid assistance is available for editing of code. The app community provides helpful resources and updates through social media and their documentation.
Installation Requirements
To install Feedews, users will need: (1) a mac or PC with the latest operating system, (2) the latest version of Android Studio, (3) knowledge of the tool’s UI interface, and (4) some design experience with Photoshop. It’s essential to note that an AdMob account, back4app.com membership, and Google Developer account are required for banner units and push notifications, respectively.
Rating and Evaluation
I give Feedews an overall score of 3 out of 5 stars, weighing factors such as:
- Easy-to-use and customized
- Robust, feature-rich, and highly versatile
- Strong push notifications and AdMob compatibility
- Well-coded with modern Android SDK compatibility
Against:
- No customization support for the template icon and splash screen
- Requires a separate Google AdMob account and banner ad implementation
- Minor visual improvements and modern design cues
- Limited community input and documentation
Overall, Feedews is a compelling template for developers who are interested in creating an adaptable, high-quality, and easily maintainable RSS app for Android. While a few areas for improvement still remain, the author maintains the app’s competitiveness, with a focus on scalability, usability, and market demands.
Additional Insights and Screenshots
https://i.imgur.com/CEQ9vA1.jpg
https://i.imgur.com/G0Zr6H.jpg
User Reviews
Be the first to review “Feedews | Android Universal RSS News App Template”
Introduction
Are you interested in creating an Android app that aggregates news from various sources? Do you want to build a simple yet powerful RSS reader app? Look no further! The Feedews | Android Universal RSS News App Template is a comprehensive template designed to help you create a professional-grade RSS news reader app for Android devices. In this tutorial, we will guide you through the process of setting up and customizing the template to create a fully functional news app.
What is Feedews?
Feedews is an open-source Android template designed specifically for building RSS news reader apps. It is a universal template, meaning it can be used to create apps for various niches, such as news, sports, entertainment, and more. The template is built on top of the Android Architecture Components and is designed to be easy to use, customize, and maintain.
Features of Feedews
The Feedews template comes with a range of features that make it an ideal choice for building a news app. Some of the key features include:
- RSS feed support: Feedews supports RSS 2.0 and Atom 1.0 feeds, making it easy to integrate feeds from various sources.
- Customizable layout: The template comes with a flexible layout that can be easily customized to fit your app's design and branding.
- Offline support: Feedews allows users to download articles for offline reading, making it perfect for apps that require internet connectivity.
- Customizable article format: The template provides options for customizing the article format, including font sizes, colors, and images.
- Support for multimedia content: Feedews supports multimedia content, including images, videos, and audio files.
Getting Started with Feedews
Before we dive into the tutorial, make sure you have the following requirements:
- Android Studio 3.0 or later
- Java or Kotlin programming language
- Basic knowledge of Android app development
To get started with Feedews, follow these steps:
- Download the Feedews template from the GitHub repository.
- Open the project in Android Studio.
- Review the project structure and familiarize yourself with the different folders and files.
- Start with the tutorial below to learn how to use the template and customize it to your needs.
Tutorial: Setting Up and Customizing Feedews
In this tutorial, we will cover the following topics:
- Setting up the project
- Configuring the RSS feed
- Customizing the layout
- Adding article formats
- Supporting offline reading
- Adding multimedia content
- Customizing the app's branding
Let's get started!
Setting up the project
- Open the project in Android Studio and navigate to the
app
folder. - Create a new directory called
feeds
and add your RSS feeds to it. For example, you can add a feed callednews.xml
with the following code:<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0"> <channel> <title>News Feed</title> <link>https://www.example.com</link> <description>News feed for example.com</description> <language>en-US</language> <copyright>Copyright 2023</copyright> <image> <title>News Feed</title> <url>https://www.example.com/logo.png</url> </image> <item> <title>News article 1</title> <link>https://www.example.com/article1</link> <description>This is a sample news article.</description> <pubDate>Mon, 21 Feb 2023 12:00:00 GMT</pubDate> </item> <item> <title>News article 2</title> <link>https://www.example.com/article2</link> <description>This is another sample news article.</description> <pubDate>Tue, 22 Feb 2023 12:00:00 GMT</pubDate> </item> </channel> </rss>
- In the
app
folder, create a new file calledFeedewsApplication.java
and add the following code:package com.example.feedews;
import android.app.Application;
public class FeedewsApplication extends Application { @Override public void onCreate() { super.onCreate(); // Initialize the RSS feed RSSFeed feed = new RSSFeed(); feed.loadFeed("feeds/news.xml"); } }
4. In the `build.gradle` file, add the following code to the `dependencies` section:
```groovy
dependencies {
implementation 'com.example.feedews:feedews:1.0'
}
Configuring the RSS feed
- In the
FeedewsApplication.java
file, update theloadFeed()
method to load the RSS feed from thefeeds
directory:feed.loadFeed(getAssets().open("feeds/news.xml"));
-
In the
RSSFeed.java
file, update theloadFeed()
method to parse the RSS feed:public void loadFeed(InputStream inputStream) { XmlPullParser parser = Xml.newPullParser(); parser.setInput(inputStream, null); parser.nextTag(); // Skip the RSS tag parser.nextTag(); // Skip the channel tag while (parser.nextTag()!= XmlPullParser.END_DOCUMENT) { if (parser.getName().equals("item")) { // Parse the item tag String title = parser.getAttributeValue(null, "title"); String link = parser.getAttributeValue(null, "link"); String description = parser.nextText(); // Add the item to the list items.add(new FeedItem(title, link, description)); } } }
Customizing the layout
-
In the
activity_main.xml
file, update the layout to include aRecyclerView
for displaying the articles:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <androidx.recyclerview.widget.RecyclerView android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" />
2. In the `FeedewsAdapter.java` file, update the adapter to display the articles in the `RecyclerView`:
```java
public class FeedewsAdapter extends RecyclerView.Adapter<FeedewsAdapter.ViewHolder> {
private List<FeedItem> items;
public FeedewsAdapter(List<FeedItem> items) {
this.items = items;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_article, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
FeedItem item = items.get(position);
holder.titleTextView.setText(item.getTitle());
holder.descriptionTextView.setText(item.getDescription());
}
@Override
public int getItemCount() {
return items.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
TextView titleTextView;
TextView descriptionTextView;
public ViewHolder(View itemView) {
super(itemView);
titleTextView = itemView.findViewById(R.id.title_text_view);
descriptionTextView = itemView.findViewById(R.id.description_text_view);
}
}
}
Adding article formats
-
In the
item_article.xml
file, update the layout to include aTextView
for the title and aTextView
for the description:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/title_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="18sp" android:textStyle="bold" /> <TextView android:id="@+id/description_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="14sp" />
2. In the `FeedewsAdapter.java` file, update the adapter to use the custom article format:
```java
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
FeedItem item = items.get(position);
holder.titleTextView.setText(item.getTitle());
holder.descriptionTextView.setText(item.getDescription());
}
Supporting offline reading
- In the
FeedewsApplication.java
file, update theloadFeed()
method to store the RSS feed in a database:public void loadFeed(InputStream inputStream) { // Parse the RSS feed //... // Store the feed in a database SQLiteOpenHelper helper = new SQLiteOpenHelper(this, "feeds.db", null, 1); SQLiteDatabase database = helper.getWritableDatabase(); database.execSQL("CREATE TABLE IF NOT EXISTS feeds (_id INTEGER PRIMARY KEY, title TEXT, link TEXT, description TEXT)"); database.execSQL("INSERT INTO feeds (title, link, description) VALUES ('" + title + "', '" + link + "', '" + description + "')"); database.close(); }
-
In the
FeedewsAdapter.java
file, update the adapter to load the RSS feed from the database:public class FeedewsAdapter extends RecyclerView.Adapter<FeedewsAdapter.ViewHolder> { private List<FeedItem> items; public FeedewsAdapter(List<FeedItem> items) { this.items = items; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_article, parent, false); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder holder, int position) { FeedItem item = items.get(position); holder.titleTextView.setText(item.getTitle()); holder.descriptionTextView.setText(item.getDescription()); } @Override public int getItemCount() { return items.size(); } public class ViewHolder extends RecyclerView.ViewHolder { TextView titleTextView; TextView descriptionTextView; public ViewHolder(View itemView) { super(itemView); titleTextView = itemView.findViewById(R.id.title_text_view); descriptionTextView = itemView.findViewById(R.id.description_text_view); } } }
Adding multimedia content
-
In the
item_article.xml
file, update the layout to include aImageView
for displaying images:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/title_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="18sp" android:textStyle="bold" /> <ImageView android:id="@+id/image_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:scaleType="centerCrop" /> <TextView android:id="@+id/description_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="14sp" />
2. In the `FeedewsAdapter.java` file, update the adapter to display images:
```java
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
FeedItem item = items.get(position);
holder.titleTextView.setText(item.getTitle());
holder.descriptionTextView.setText(item.getDescription());
// Display the image
if (item.getImage()!= null) {
holder.imageView.setImageBitmap(item.getImage());
}
}
Customizing the app's branding
- In the
styles.xml
file, update the app's theme to match your desired branding:<?xml version="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your app's theme here --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> </resources>
- In the
colors.xml
file, update the app's colors to match your desired branding:<?xml version="1.0" encoding="utf-8"?> <resources> <color name="colorPrimary">#2196F3</color> <color name="colorPrimaryDark">#1976D2</color> <color name="colorAccent">#FF4081</color> </resources>
That's it! You have now successfully set up and customized the Feedews | Android Universal RSS News App Template. You can run the app on a physical device or emulator to test its functionality.
Remember to replace the placeholder values in the template with your own values, such as the RSS feed URL, article titles, and descriptions. You can also customize the app's layout, colors, and branding to match your desired design.
We hope you found this tutorial helpful! If you have any questions or need further assistance, please don't hesitate to ask.
Here is a complete settings example for Feedews | Android Universal RSS News App Template:
App Name and Icon
In the strings.xml
file, set the app_name
and app_icon
values as follows:
<string name="app_name">Your App Name</string>
<string name="app_icon">@mipmap/ic_launcher</string>
RSS Feed Settings
In the rss_feeds.xml
file, add the following settings for each RSS feed:
<rss_feed>
<name>Your RSS Feed Name</name>
<url>https://your-rss-feed-url.com</url>
<category>News</category>
<image_url>https://your-rss-feed-image-url.com</image_url>
<description>your-rss-feed-description</description>
<language>en</language>
</rss_feed>
Feed Display Settings
In the feed_display_settings.xml
file, set the following settings:
<feed_display_settings>
<show_title>true</show_title>
<show_description>true</show_description>
<show_image>true</show_image>
<show_author>true</show_author>
<show_date>true</show_date>
<show_categories>true</show_categories>
</feed_display_settings>
Database Settings
In the db_config.xml
file, set the following settings:
<db_config>
<db_name>your_database_name</db_name>
<db_version>1</db_version>
<db_user>your_database_user</db_user>
<db_password>your_database_password</db_password>
<db_host>your_database_host</db_host>
<db_port>your_database_port</db_port>
</db_config>
Other Settings
In the other_settings.xml
file, set the following settings:
<other_settings>
<cache_size>1000</cache_size>
<max_feed_items>20</max_feed_items>
<refresh_interval>3600</refresh_interval>
</other_settings>
Note: Replace the placeholders with your actual values.
‘
20 JAN 2023 • Android 13 support added • All libraries updated • Gradle and build tools updated • Android 12 notification fixed • Redundant test files removed
11 Mar 2022 • Updated all libraries • Updated gradle • Added support for android 12 • Added notification channel to support api 26+ devices • Fixed loading name issue • Updated urls • Removed unnecessary permissions • Apk updated
26 Jul 2021 • Updated Code to Androidx • Resolved all the issues and crashes • Update all the libs to Androidx version support
1 Sep 2020 • UI/UX enhancements. Theme updated. Buttons style updated. Android Material Design implemented. • APK updated.
20 Aug 2020 • Updated with new UI.
13 Jul 2020 • Firebase push notification implemented. Manifest updated. libraries updated. • Project complete files uploaded. Screenshots, Documentation, and app files.
17 Sep 2019 • Fixed issue “Android Api (Okhttps) not getting called in Android 9(pie) and above
18 July 2019 • Applied Async-Task for getting all News from server-side • Fixed Design issues using Card-View design techniques • Applied latest technique “Recycler view” for News listing • Improved and modified News tab View • Fixed crash issues on the website • Improved response time of loading news
8 May 2018 • Changed Parse verison in build.gradle into 1.16.0, due to some issue on the latest Parse SDK and FCM: implementation 'com.parse:parse-android:1.16.0' • Added Firebase FCM into build.gradle(Module:app) and (Project:Feedews) • Added a google-services.json file into the 'app' folder, as per FCM requirerements • Updated the Documentation
15 April 2018 • Updated to Android Studio 3.1.1 • Removed all dependencies of play-services | left only this one in build.gradle: implementation 'com.google.android.gms:play-services:+'
11 April 2018 • Updated to Android Studio 3.1 • Updated 'compileSdkVersion' and 'targetSdkVersion' to 27 in build.gradle • Replaced 'compile' with 'implementation' in build.gradle (Module: app) • Updated classpath 'com.android.tools.build:gradle:3.1.1' in build.gradle (Project:) • Removed the ProgressDialog code in Home.java | replaced with the 'pd.SetMessage()' with 'Configs.showPD()' instance
Jan 21th 2018 • Added this line in the dependencies list of build.gradle (Module: app): compile 'com.squareup.okhttp3:okhttp:+'
Feedews gets its name from 2 words: feed and news. This is an RSS feed reader to get all news in one place, there are several Categories and you can share articles to social networks and email by opening links to your device’s internet browser and use the share function.
This app also works with Parse Push Notifications, you can send pushes to all registered users by using the Parse Push web console on https://back4app.com
Since its Push Notifications system is by Parse you don’t have to buy any domain/hosting, there are NO PHP files to upload to a web server so you’ll save some money for server side.
Feedews is a native Android Studio project, Java/xml language, Universal, super easy to customize. All RSS links are stored in strings.xml files and the User Guide included in the package shows how to edit them.
PLEASE NOTE that those RSS links are for DEMO PURPOSES only, you should use your own ones and also may need to grant the Rights to make them visible in your app due to some Copyright Policies of the RSS links owners.
About Parse SDK and back4app
Read this article for more info about back4app and Parse SDK: https://hubpages.com/technology/Parse-SDK-will-not-shutdown-in-thanks-to-back4app
Can I host Parse Server on my own server?
Yes, although I don’t provide support for the setup process, you can read the official Guide here: http://parseplatform.org
What about free support for this template?
I can offer free support for bugs encountered in the original code. Instead, if you’ve edited the code and messed something up with it, I may apply some fee to fix it either via TeamViewer or by checking your app project files directly on my computer.
How do I rename the app’s package name?
Read this tutorial to learn how to rename a package name: https://hubpages.com/technology/Android-How-to-rename-an-app-package
Should I use the latest version of Android Studio to edit this template?
Yes, I always update my apps to the latest version of the IDE and you also should make sure you’ve updated the Android Tools to their latest version of the Android SDK manager.
The demo APK crashes on startup
Make sure that the minimum Android version of your device is the one listed in the FEATURES section below. If the problem persists, please contact me by my profile’s contact form and send me the Logcat message of you get when the app crashes along with the steps you made to reproduce the crash. Please note that not all real devices print an error Logcat message, in this case just run the APK into the Android Studio’s emulator and you’ll surely get the red messages about your issue.
How do I remove AdMob banner ads?
- Enter the .xml files where there’s an AdView and remove its code:
<com.google.android.gms.ads.AdView android:id="@+id/admobBanner" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:adSize="BANNER" ads:adUnitId="@string/ADMOB_BANNER_UNIT_ID" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true"> </com.google.android.gms.ads.AdView>- Enter the .java files where there’s an AdRequest instance into its onCreate() method and remove its code:
// Init AdMob banner AdView mAdView = (AdView) findViewById(R.id.admobBanner); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest);- Lastly, remove the play-services-ads reference in the build.gradle file:
compile 'com.google.android.gms:play-services-ads:+'
- Android Studio 3.x project – Universal
- Android 5.0+ – Backend with Parse SDK hosted on https://back4app.com
- AdMob banners
- You can translate this app into other languages – Italian demo language included
- Send Push Notifications to all registered devices via Push web console on back4app
- Easily store your RSS links into string.xml files
- Editable Categories
- Mini browser implemented
- Nice User interface
- Documentation included
- Well commented code
- PSD icon files included
- Apple Mac or Windows PC with their latest OS version installed
- The latest version of Android Studio and some knowledge about its UI interface
- Photoshop or any other image editor software
- A Google Developer account to submit apps to the Play Store
- An AdMob account to generate your own banner UNIT ID
- A free account on back4app.com
. Each featured in different line.
$19.00
There are no reviews yet.