Code

Wally | Android Universal Wallpapers App Template

Wally | Android Universal Wallpapers App Template







iOS and Android versions can share the same database on back4app






25 May 2018
• Accordingly to the new EU GDPR terms, I've updated the 'tou.html' file and Documentation.
IMPORTANT: This means that if a User asks for his/her Account deletion, you must do it within 24 hours, as the GDPR's "Right to be forgotten" Article states (LINK: https://gdpr-info.eu/art-17-gdpr/)
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'

• Edited 'getUserDetailsFromFB()' method in Login.java, this line of code:
    } else { currUser.put(Configs.USER_EMAIL,  facebookID + "@facebook.com"); }
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:)
Jan 20th 2018
• Added this line in the dependencies list of build.gradle (Module: app):
    compile 'com.squareup.okhttp3:okhttp:+'
Nov 2nd 2017
• Updated to Android Studio 3 and buildToolsVersion to '26.0.2' in build.gradle
Oct 7th 2017
• Added a custom 'pd.xml' file in the 'layout' folder and some code into Confgs.java ('showPD()'  and 'hidePD()' methods), which are used to replace the ProgressDialog code in the java files (that's because ProgressDialog is deprecated by API 26 | Android O)
So I've replaced all the:
    pd.dismiss();
    pd.setMessagge(...);
    pd.show();

with the new lines of code to show and hide the custom ProgressDialog, which start with:
   Configs.showPD(...);
   Configs.hidePD();
Aug 27th 2017
• Updated buildToolsVersion to '26.0.1' in build.gradle (Module:app)
• Added this line into 'repositories' in build.gradle (Project:):
        maven { url "https://maven.google.com" }
July 20th 2017
*** MAJOR UPDATE ***

• Added Login and Sign Up activities with Facebook Login, in order for users to sign up and interact with the new features
• Added the following dependencies into build.gradle file:
       compile 'com.facebook.android:facebook-android-sdk:4.+'

• Removed the emailTxt into submit_wallpaper.xml
• Added the following strings in Configs.java:
    public static String WALLPAPERS_LIKES = "likes";
    public static String WALLPAPERS_FAVORITED_BY = "favoritedBy"; // Array
    public static String WALLPAPERS_LIKED_BY = "likedBy"; // Array

• Added a searchTxt (an EditText) in the categories.xml and its relative code in Categories.java
• Edited SubmitWallpaper.java, submit_wallpaper.xml,  WallGrid.java, wall_grid.xml files
• Edited Home.java and home.xml files
• Added an Account activity with its relative java/xml files 
• Added a likes TextView into cell_wallgrid.xml and its code to get likes amount in WallGrid.java
 Added a sort by button in wall_grid.xml and its relative code in WallGrid.java  - you can sort wallpapers by likes amount or latest added
• Increased the height of the cCatThumb ImageView into cell_categories.xml to 80dp
• Added a cell_categories_small.xml file (for the SubmitWallpaper.java's ListView)
• Changed the App icon
• Added a provider_paths.xml file into res/xml | edited the Image picked methods in SubmitWallpaper.java
• Added a <provider> tag into Manifest.xml
• Updated the User Guide
Apr 12th 2017
• Initial release, Android Studio 2.3.1 project, Parse SDK backend hosted on back4app.com


Wally is a Universal app template for wallpapers where users can save them into their photo gallery and then set them as wallpapers to their devices, they can also submit new wallpapers to the admin of the app for approval. You, as the Admin of the app, will just have to switch a isPending variable into False in your own Parse Dashboard or Adminca.com CMS panel to make the new wallpapers visible in the app, it’s super easy!

Since its backend is by Parse Server, 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.

Wally is a native Android Studio project, Universal, Parse SDK hosted on back4app, easy to customize, User Guide and PSD files included in the package.




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?

  1. 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>
    
  2. 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);
    
  3. 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+
  • AdMob banners
  • Works with Parse SDK hosted on back4app
  • Easily submit your own wallpaper for approval via the app, with an intuitive user interface
  • As the owner of the app, approve/deny wallpapers submitted by users
  • Search for Categories
  • Users can Login/Sign Up and add wallpapers to Favorites or like them
  • Update Categories and Wallpapers via Parse Dashboard or Adminca.com CMS panel, so you won’t have to submit an update to the App Store
  • PDF User Guide and PSD graphics included
  • Easy to customize, well commented code


  • 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 valid Google Developer account to submit apps to the Play Store
  • A valid AdMob account to generate your own banner UNIT ID
  • A free account on back4app.com









by
by
by
by
by
by