Skip to content

Instantly share code, notes, and snippets.

@bullheadandplato
Created July 20, 2017 05:57
Show Gist options
  • Save bullheadandplato/48f4aef2334023bbab85346112350618 to your computer and use it in GitHub Desktop.
Save bullheadandplato/48f4aef2334023bbab85346112350618 to your computer and use it in GitHub Desktop.
package com.downloader.videodownloader;
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Toast;
public class SplashScreen extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (hasPermission()){
startMainActivity();
}else{
getPermissions();
}
}
private void getPermissions() {
ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},100);
}
private boolean hasPermission() {
return ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)== PackageManager.PERMISSION_GRANTED;
}
private boolean isPermissionGranted = false;
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode==100){
if (grantResults.length>0 && grantResults[0]==PackageManager.PERMISSION_GRANTED){
isPermissionGranted=true;
}else{
Toast.makeText(this,"Requires storage permission to continue.",Toast.LENGTH_SHORT).show();
System.exit(0);
}
}
}
@Override
protected void onResume() {
super.onResume();
if (isPermissionGranted){
startMainActivity();
}
}
private void startMainActivity(){
Intent intent=new Intent(this,MainActivity.class);
startActivity(intent);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment