Awesome-looking customizable splash screen

Related tags

App AwesomeSplash
Overview

AwesomeSplash

Android Arsenal

Awesome-looking customizable splash screen

Splash screens have been around for quite a while. It's the first thing the users see when they run your app, so make it simple yet eventful and impressionable. This library does exactly that, provides you with beautiful template screen, with wide range of customizations to fit your concept of the splash screen. To be noted, with the last acknowledgement form google that splash screens got, having a library that tackles this issue is kind of necessity.

Ready to see implementation details? Let's scroll.

Demo

What the library is capable of is shown in this youtube video:

ScreenShot

You can download the demo app [here] (https://github.com/ViksaaSkool/AwesomeSplash/blob/master/rdme/awesome_splash_demo.apk?raw=true)

Prerequisites/Credits

This library is based and utilizes 3 great libraries:

So before diving into AwesomeSplash library, look into the libraries. Especially make sure you understand the concept of SVG path and look deeply on how to create you custom svg (and get the string values needed for AwesomeSplash).

Usage

Add this to your settings.gradle:

	repositories {
	    //...
            maven { url "https://jitpack.io" }
    }

and then in dependencies:

	dependencies {
	        implementation 'com.github.ViksaaSkool:AwesomeSplash:v1.0.0'
	}

Here is how you utilize the library in your Kotlin code:

//extends AwesomeSplash!
class YourActivity : AwesomeSplash() {

	//DO NOT OVERRIDE onCreate()!
	//if you need to start some services do it in initSplash()!

	override fun initSplash(configSplash: ConfigSplash?) {

        /* you don't have to override every property */

        configSplash?.let {
            //Customize Circular Reveal
            it.backgroundColor = R.color.purple_500 //any color you want from colors.xml
            it.animCircularRevealDuration = 2000 //int ms
            it.revealFlagX = Flags.REVEAL_RIGHT  //or Flags.REVEAL_LEFT
            it.revealFlagY = Flags.REVEAL_BOTTOM //or Flags.REVEAL_TOP

            //Choose LOGO OR PATH; if you don't provide String value for path it's logo by default

            //Customize Logo
            it.logoSplash = R.mipmap.ic_launcher //or any other drawable
            it.animLogoSplashDuration = 3000 //int ms
            it.animLogoSplashTechnique = Techniques.Bounce //choose one form Techniques (ref: https://github.com/daimajia/AndroidViewAnimations)

            //Customize Path
            it.pathSplash = Constants.DROID_LOGO //set path String
            it.originalHeight = 400 //in relation to your svg (path) resource
            it.originalWidth = 400 //in relation to your svg (path) resource
            it.animPathStrokeDrawingDuration = 3000
            it.pathSplashStrokeSize = 3 //I advise value be <5
            it.pathSplashStrokeColor = R.color.teal_200 //any color you want from colors.xml
            it.animPathFillingDuration = 3000
            it.pathSplashFillColor = R.color.white //path object filling color

            //Customize Title
            it.titleSplash = "My Awesome App"
            it.titleTextColor = R.color.white
            it.titleTextSize = 30f //float value
            it.animTitleDuration = 3000
            it.animTitleTechnique = Techniques.Bounce
            it.titleFont = "fonts/myfont.ttf" //provide string to your font located in assets/fonts/
        }

    }

    override fun animationsFinished() {
        //transit to another activity here
        //or do whatever you want
    }
    
}

Here is how you utilize the library in your Java code:

//extends AwesomeSplash!
public class YourActivity extends AwesomeSplash {

	//DO NOT OVERRIDE onCreate()!
	//if you need to start some services do it in initSplash()!

	@Override
	public void initSplash(ConfigSplash configSplash) {

		/* you don't have to override every property */

		//Customize Circular Reveal
		configSplash.setBackgroundColor(R.color.purple_500); //any color you want form colors.xml
		configSplash.setAnimCircularRevealDuration(2000); //int ms
		configSplash.setRevealFlagX(Flags.REVEAL_RIGHT);  //or Flags.REVEAL_LEFT
		configSplash.setRevealFlagY(Flags.REVEAL_BOTTOM); //or Flags.REVEAL_TOP

		//Choose LOGO OR PATH; if you don't provide String value for path it's logo by default

		//Customize Logo
		configSplash.setLogoSplash(R.mipmap.ic_launcher); //or any other drawable
		configSplash.setAnimLogoSplashDuration(2000); //int ms
		configSplash.setAnimLogoSplashTechnique(Techniques.Bounce); //choose one form Techniques (ref: https://github.com/daimajia/AndroidViewAnimations)

		//Customize Path
		configSplash.setPathSplash(Constants.DROID_LOGO); //set path String
		configSplash.setOriginalHeight(400); //in relation to your svg (path) resource
		configSplash.setOriginalWidth(400); //in relation to your svg (path) resource
		configSplash.setAnimPathStrokeDrawingDuration(3000);
		configSplash.setPathSplashStrokeSize(3); //I advise value be <5
		configSplash.setPathSplashStrokeColor(R.color.accent); //any color you want form colors.xml
		configSplash.setAnimPathFillingDuration(3000);
		configSplash.setPathSplashFillColor(R.color.Wheat); //path object filling color

		//Customize Title
		configSplash.setTitleSplash("My Awesome App");
		configSplash.setTitleTextColor(R.color.white);
		configSplash.setTitleTextSize(30f); //float value
		configSplash.setAnimTitleDuration(3000);
		configSplash.setAnimTitleTechnique(Techniques.FlipInX);
		configSplash.setTitleFont("fonts/myfont.ttf"); //provide string to your font located in assets/fonts/

	}

	@Override
	public void animationsFinished() {
		//transit to another activity here
		//or do whatever you want
	}
}

Implemented in

Reiseuhu




CliniShift




If you implement the library in your app(s) and you upload it on Google Play, let me know.

License

The MIT License (MIT)

Copyright (c) 2015 Viktor Arsovski

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

Developed By

Viktor Arsovski
Add me to Linkedin

Comments
  • Update readme

    Update readme

    In new Android versions there is no "All projects" section in the "build.gradle" file, so all you have to do is to open "settings.gradle" file inside the gradle scripts, and add your maven { url "https://jitpack.io" } like this

    dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() jcenter() // Warning: this repository is going to shut down soon maven { url "https://jitpack.io" } } }

    opened by AhmedMaad 2
  • title animation does not disappear

    title animation does not disappear

    hi, I just have this issue that title animation does not disappear even though I set configSplash.setAnimTitleDuration(0); like you've suggested.

    the slash title is still there but with no animation...please help

    opened by meeftah 2
  • Change

    Change "compile" to "implementation" to support new Android Studio Versions.

    compile is deprecated; replace with implementation

    Change compile 'com.github.ViksaaSkool:AwesomeSplash:v1.0.0' To implementation 'com.github.ViksaaSkool:AwesomeSplash:v1.0.0'

    opened by AhmedMaad 1
  • is it possible to show icon & svg image both?

    is it possible to show icon & svg image both?

    i use ur library. but if I want to use icon & svg image both. it,s only show svg image & icon size not customizable. Only few anim ar work in icon. and I don't have any access to control svg image like if I want to hidden svg image after anim then show a icon then text it should be more better. Thanks :)

    opened by mhemon 1
  • Path not working

    Path not working

    I tried using path animation using validated SVG Path

    "M 25.892,0c-7.646,0-13.845,6.198-13.845,13.845c0,1.494,0.244,2.929,0.68,4.274c0.981,3.461,12.292,33.668,12.292,33.668 s12.014-27.703,13.83-33.096c0.565-1.511,0.891-3.14,0.891-4.848C39.738,6.199,33.539,0,25.892,0z s12.014-27.703,13.83-33.096c0.565-1.511,0.891-3.14,0.891-4.848C39.738,6.199,33.539,0,25.892,0z M 25.892,24.761 c-6,0-10.865-4.867-10.865-10.865c0-6.003,4.865-10.868,10.865-10.868c6.003,0,10.866,4.865,10.866,10.868 C36.758,19.894,31.895,24.761,25.892,24.761z"

    but it is not drawing

    opened by JobsJr 1
  • Project Build Succesfully But not Deploying

    Project Build Succesfully But not Deploying

    Unable to deploy giving this error..

    Error:Execution failed for task ':app:dexDebug'.

    com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_20\bin\java.exe'' finished with non-zero exit value 2

    opened by lanrehnics 0
  •    Could not find com.github.ViksaaSkool:AwesomeSplash:v1.0.0.

    Could not find com.github.ViksaaSkool:AwesomeSplash:v1.0.0.

    Execution failed for task ':app:checkDebugAarMetadata'.

    Could not resolve all files for configuration ':app:debugRuntimeClasspath'. Could not find com.github.ViksaaSkool:AwesomeSplash:v1.0.0. Searched in the following locations: - https://dl.google.com/dl/android/maven2/com/github/ViksaaSkool/AwesomeSplash/v1.0.0/AwesomeSplash-v1.0.0.pom - https://repo.maven.apache.org/maven2/com/github/ViksaaSkool/AwesomeSplash/v1.0.0/AwesomeSplash-v1.0.0.pom - https://jcenter.bintray.com/com/github/ViksaaSkool/AwesomeSplash/v1.0.0/AwesomeSplash-v1.0.0.pom Required by: project :app

    opened by mohammed3296 0
  • Provide support for the latest API level

    Provide support for the latest API level

    Hello, We are currently using your library in one of our application. Actually we need a favour from your side. According to the Google Play Policy, all apps have to provide support for at least API level 26 which is not satisfied in your case. We are targeting API level 28. So can you please provide us support for API level 28 in your current repository?

    opened by ebghrimtech 3
  • Continuing animation rather than restarting

    Continuing animation rather than restarting

    When the device changes orientation, the animation is restarted. I've tried to get some values to help me with continuing the animation but there is nothing I can receive the know the current state of the animation, or start the animation in a certain state.

    opened by dovahkiin98 0
  • Util package not found / Constants.DROID_LOGO

    Util package not found / Constants.DROID_LOGO

    I want to "import com.viksaa.sssplash.util.Constants;" but there is no util package, the other imports are found. is there a problem with the version of the app, because I used two version and none of them is working. I am using Android Studio 3.

    opened by elhammoumi 1
Owner
ViksaaSkool
home: #android | learning: #python | trying to get into: #dataScience
 ViksaaSkool
This Android application demonstrates new splash screen API launched by Google last year.

This Android application demonstrates new splash screen API launched by Google last year.

Mohit Rajput 1 Feb 22, 2022
☁️🌤🌧☀ Weather Android application that gives you the weather information of your saved location or any region you are looking for☁️🌤🌧☀

☁️????☀ Weather Android application that gives you the weather information of your saved location or any region you are looking for☁️????☀

Nisa Efendioğlu 4 Apr 6, 2022
My CS 4th semester homework: simple Android app for looking up cocktails using an open API

CocktailApp My CS 4th semester homework: simple Android app for looking up cocktails using an open API A simple Android app that uses the free api of

null 2 May 18, 2022
Proof of concept of custom widgets and apps running on the Z Flip3 cover screen. Adds a widget to Z Flip3 cover screen that lets you launch a web browser-like app on the cover.

SubUI-browser Proof of concept of custom widgets and apps running on the Z Flip3 cover screen. Adds a widget to Z Flip3 cover screen that lets you lau

null 35 Dec 24, 2022
LeeCo is an awesome app for (including unlock) problems, solutions, discuss(from leetcode) and comments.

LeeCo LeeCo is an awesome app for algorithem problems(including unlock), solutions, discuss(from leetcode) and comments. #中文文档 README-ZH.md #Download

Nightonke 487 Nov 25, 2022
An android client application for the awesome kanji learning website wanikani.com

End of Life This project has reached EOL status. It will no longer be updated, patched, or supported. If you are interested in continuing the work, fe

İhsan Işık 507 Nov 12, 2022
Awesome Kid's Drawing App. It has a click and draws feature.

CanvaKids Overview It's a kid's drawing app which is build for android users. It is built in Kotlin with some very good practices involved.

null 9 Oct 30, 2021
Create an awesome About Page for your Android App in 2 minutes

Android About Page Create an awesome About Page for your Android App in 2 minutes This library allows to generate beautiful About Pages with less effo

Mehdi Sakout 2k Dec 30, 2022
An Android app to stream and download your media stored in Google Drive in an Awesome way !!

⚡ Thunder : An Android app to stream and download your media stored in Google Drive in an Awesome way !! (Just Movies for now) ?? Getting Started : Le

null 278 Jan 5, 2023
Android samples built using Jetpack Window Manager for foldable and dual-screen devices like Microsoft Surface Duo.

Jetpack Window Manager samples for dual-screen and foldable devices like Microsoft Surface Duo Android app samples that use Jetpack Window Manager to

Microsoft 45 Dec 19, 2022
See a pretty error screen when your Android app crashes

WhatTheStack WhatTheStack is a library to make your debugging experience on Android better. It shows you a pretty error screen when your Android App c

Kshitij Chauhan 241 Nov 11, 2022
Happy-Birthday - Design and implement a single screen app that displays information

Happy Birthday Android App | Android Basics in Kotlin Course Solution code for t

Anas Tariq 1 Feb 6, 2022
An Android mobile app for viewing device screen in your web browser

Screen Stream over HTTP An Android mobile app for viewing device screen in your web browser. Developed by Dmitriy Krivoruchko · If there are any issue

Dmitriy Krivoruchko 1.1k Dec 31, 2022
Turtle Graphics 🐢 implementation for Android Platform with Code Editor, Preview Screen and packages

Turtle Graphics Download Turtle is an Android Application inspired from the original Turtle Graphics and Logo, Logo is an educational programming lang

Amr Hesham 15 Dec 30, 2022
Android cutout screen support Android P. Android O support huawei, xiaomi, oppo and vivo.

CutoutScreenSupport Android cutout screen support Android P. Android O support huawei, xiaomi, oppo and vivo. Usage whether the mobile phone is cutout

hacket 5 Nov 3, 2022
Quick photo and video camera with a flash, customizable resolution and no ads.

Simple Camera A camera with flash, zoom and no ads. The camera is usable for both photo taking and video recording. You can switch between front and r

Simple Mobile Tools 644 Dec 26, 2022
A simple calendar with events, customizable widgets and no ads.

Simple Calendar A simple calendar with events and a customizable widget. A simple calendar with optional CalDAV synchronization. You can easily create

Simple Mobile Tools 3k Jan 3, 2023
⏲ A highly customizable interval timer app for Android

TimeR Machine A highly customizable interval timer app for Android Structure The app uses the Navigation component. Modules whose names start with app

null 51 Dec 7, 2022
QuizApp - App for using (opentdb.com) API for making quizzes with customizable options

Quiz-App App for using (opentdb.com) API for making quizzes with customizable op

Uptech 0 Nov 22, 2021