package br.com.livrowebservices.carros.activity;
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import br.com.livrowebservices.carros.R;
import br.com.livrowebservices.carros.utils.AlertUtils;
import br.com.livrowebservices.carros.utils.PermissionUtils;
/**
* Splash para listar as permissões.
*/
public class SplashActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
// Valida lista de permissões.
String permissions[] = new String[]{
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.CAMERA,
};
boolean ok = PermissionUtils.validate(this,0, permissions);
if(ok) {
// Tudo OK, pode entrar.
startActivity(new Intent(this,MainActivity.class));
finish();
}
}
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
for (int result: grantResults) {
if(result == PackageManager.PERMISSION_DENIED) {
// Negou a permissão. Mostra alerta e fecha.
AlertUtils.show(getContext(), R.string.app_name, R.string.msg_alerta_permissao, new Runnable() {
@Override
public void run() {
finish();
}
});
return;
}
}
// ~Permissões concedidas, pode entrar.
startActivity(new Intent(this,MainActivity.class));
finish();
}
}