radioo | Android Universal Multi Radio Stations App Template

[cm_ad_changer campaign_id="16"]

[ad_1]
LIVE PREVIEWBUY FOR $20


radioo |  Android Universal Multi Radio Stations App Template - 1


radioo |  Android Universal Multi Radio Stations App Template - 2


radioo |  Android Universal Multi Radio Stations App Template - 3


radioo |  Android Universal Multi Radio Stations App Template - 4


radioo |  Android Universal Multi Radio Stations App Template - 5


radioo |  Android Universal Multi Radio Stations App Template - 6


radioo |  Android Universal Multi Radio Stations App Template - 7


radioo |  Android Universal Multi Radio Stations App Template - 8


radioo |  Android Universal Multi Radio Stations App Template - 9


Both iOS and Android version share the same database on back4app


radioo |  Android Universal Multi Radio Stations App Template - 10


radioo |  Android Universal Multi Radio Stations App Template - 11

radioo |  Android Universal Multi Radio Stations App Template - 12

18 November 2021
• Updated to Android 12
• Updated all libraries
• Updated manifest to support android 12 and Admob
• Gradle updated
• Updated firebase service
• Added notification channel for api 28+ devices

9 May 2020
• FCM firebase cloud messaging implemented.
• Google libraries updated.
• Gradle files updated.
21 Aug 2019
• Fixed issue "App crash while Preparing Audio" on Ui Thread, now Resource intensive task is done
In the background thread using AsyncTask
• While loading Audio resource from server Progress Dialog is shown. 
• Fixed Crash "java.lang.IndexOutOfBoundsException: Index: 4, Size: 4 at java.util.ArrayList.get(ArrayList.java:437)" 
• Updated Home.Java class by using recycler View, previously List view was implemented
• Improved Home screen list items design by using Card View.
• Fixed Back Stack issue from the entire application 
• Updated Login, Signup UIs designs and enhance the user experience 
• Improved the layout and alignments of the Account screen. 
• Updated Favouritescreen  UI designs      
• Applied Camel Notation in Edit Text Fields Hints.    
• Updated 'compileSdkVersion' and 'targetSdkVersion' to 28 in build.gradle
8 May 2018
• Changed Parse version 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'

• Edited 'getUserDetailsFromFB()' method in Login.java, this line of code:
    } else { currUser.put(Configs.USER_EMAIL,  facebookID + "@facebook.com"); }
18 April 2018
*** MAJOR UPDATE ***
• Replaced AdMob banners code with Interstitial ads in Home.java, Stations.java, and Favorites.java
• Completely reskinned the app with a new fresh and modern design
• Added a new 'font' folder with Quicksand fonts in the 'assets' folder | changed the default fonts in the java files with '.setTypeface()' instances
• Created a "Stations" new class in the Parse Dashboard, so now you don't need to create any class for the music genres, all radio stations must be stored into the Stations class
• Edited all java and xml files (compare your old files with the updated ones and perform the code/design changes)
• Added these lines in Configs.java:
   public static String  STATIONS_CLASS_NAME = "Stations"; 
   public static String  STATIONS_GENRE = "genre";
   public static String  STATIONS_FAVORITED_BY = "favoritedBy";
    public static String  FAVORITES_STATION_POINTER = "stationPointer"; 

*** IMPORTANT: IF THIS IS AN UPDATE FOR YOU, then you should uncomment 'createGenresAndFirstGenreClassesAndRows()' from onCreate() in Home.java, run the app once and let it create a demo radio station and the "Stations" new class in your Parse Dashboard
After that, you need to create all your new rows for radio stations in the "Stations" class, you can copy URL and Name of your old radio stations from their classes, and the genre name of the cells of the 'genre' column must match the genre names you've inserted in the "Genres_" class. 
Once you're done, you can remove all music genre classes you've previously created (like Rock, Ambient, Jazz, etc.)
One more thing, you need to add a radio station to Favorites, then check the "Favorites" class in your Parse Dashboard, it'll have a new column called "stationPointer". This value is just the objectId of the favorited station from the "Stations" class, so if you have other rows in the "Favorites" class, they'll have the cells of the 'stationPointer' column empty [undefined]. You have to copy the objectId's of those radio stations and paste them in their relative cells, so the Favorites system will work smoothly.
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:)

radio is a universal app template that stores free online radio stations in a flexible Parse Dashboard database hosted on http://back4app.com, all .m3u file links from SHOUTcast.com. You have to download the M3U files and extract the streaming URL, then just paste them into your own Parse Dashboard to create playlists.
You can play radio stations anywhere with a 3G or Wi-Fi connection, add radios to favorites (login/login required) and select your radio stations by genre, and share the radio you’re listening to with the world.

Since the backend is Parse Server, you don’t need to buy a domain/hosting, there are NO PHP files to upload to a web server, so you save some money for the server side.

You can also use the adminca.com, a free CMS panel for Parse SDK as a great alternative to insert/edit data in your Parse Dashboard, after you create your app on back4app, create a free account on http://adminca.com and create a new panel, choose Self-hosted Parse Server and paste your Host link, Application ID and Master Key into the relative fields (you can find them in Core Settings of your back4app dashboard).

radioo |  Android Universal Multi Radio Stations App Template - 13

radio is very easy to customize, native Android Studio project, Parse SDK backend.

radioo |  Android Universal Multi Radio Stations App Template - 14

radioo |  Android Universal Multi Radio Stations App Template - 15

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 support the installation process, you can read the official guide here: http://parseplatform.org

What about free support for this template?

I can provide free support for bugs found in the original code. Instead, if you’ve edited the code and messed up with it, I can charge a fee to fix it through 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

Do I need to 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 should also make sure that you have updated the Android Tools to the latest version of the Android SDK manager.

The demo APK crashes on startup

Make sure your device’s minimum Android version is the one listed in the FEATURES section below. If the problem persists, please contact me through the contact form on my profile and send me the Logcat message you get when the app crashes, along with the steps you took to reproduce the crash. Note that not all genuine devices will print a Logcat error message. In this case, run the APK in the Android Studio emulator and you will definitely get red messages about your problem.

How do I remove AdMob banner ads?

  1. Enter the .xml files where there is a Ad Display and delete the 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>
    
  2. Enter the .Java files where there is a Advertisement Request instance in its onCreate() method and delete the code:
            // Init AdMob banner
            AdView mAdView = (AdView) findViewById(R.id.admobBanner);
            AdRequest adRequest = new AdRequest.Builder().build();
            mAdView.loadAd(adRequest);
    
  3. Finally, remove the play services ads reference in the build.gradle File:
        compile 'com.google.android.gms:play-services-ads:+'
    


radioo |  Android Universal Multi Radio Stations App Template - 16

radioo |  Android Universal Multi Radio Stations App Template - 17

  • Android Studio 3.x Project – Universal – Android 5.0+
  • AdMob Banners
  • Works with Parse SDK hosted on back4app
  • Easily update your radio stations through your Parse Dashboard, no need to update the app in the Play Store
  • PDF user manual included
  • PSD graphics included
  • Easy to edit, well commented code

radioo |  Android Universal Multi Radio Stations App Template - 18

  • Apple Mac or Windows PC with the latest OS version installed
  • The latest version of Android Studio and some knowledge about the UI interface
  • Photoshop or other image editing 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


radioo |  Android Universal Multi Radio Stations App Template - 19


radioo |  Android Universal Multi Radio Stations App Template - 20


radioo |  Android Universal Multi Radio Stations App Template - 21


radioo |  Android Universal Multi Radio Stations App Template - 22

[ad_2]
Source

[cm_ad_changer campaign_id="1"]