Skip to content

Commit

Permalink
released v1.0.9
Browse files Browse the repository at this point in the history
  • Loading branch information
kosh committed Mar 28, 2016
1 parent 29300ce commit 2d7ba01
Show file tree
Hide file tree
Showing 18 changed files with 108 additions and 184 deletions.
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Nexus 10 (L)
# Installation

```
compile 'com.github.k0shk0sh:PermissionHelper:1.0.8'
compile 'com.github.k0shk0sh:PermissionHelper:1.0.9'
```

Usage
Expand Down
3 changes: 1 addition & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ android {

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:appcompat-v7:23.2.1'
compile project(':permission')
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,14 @@

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
findViewById(R.id.badAss).setOnClickListener(this);
findViewById(R.id.pagerActivity).setOnClickListener(this);
}

@Override
public void onClick(View v) {
@Override public void onClick(View v) {
boolean isBadAss = v.getId() == R.id.badAss;
Intent intent;
if (isBadAss) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@ public class SampleActivity extends AppCompatActivity implements OnPermissionCal
Manifest.permission.WRITE_EXTERNAL_STORAGE
};

@Override
protected void onCreate(Bundle savedInstanceState) {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sample);
result = (TextView) findViewById(R.id.result);
Expand All @@ -52,36 +51,30 @@ protected void onCreate(Bundle savedInstanceState) {
* <p/>
* if you never passed the permission this method won't be called.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {
permissionHelper.onActivityForResult(requestCode);
}

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
permissionHelper.onRequestPermissionsResult(requestCode, permissions, grantResults);
}

@Override
public void onPermissionGranted(String[] permissionName) {
@Override public void onPermissionGranted(@NonNull String[] permissionName) {
result.setText("Permission(s) " + Arrays.toString(permissionName) + " Granted");
Log.i("onPermissionGranted", "Permission(s) " + Arrays.toString(permissionName) + " Granted");
}

@Override
public void onPermissionDeclined(String[] permissionName) {
@Override public void onPermissionDeclined(@NonNull String[] permissionName) {
result.setText("Permission(s) " + Arrays.toString(permissionName) + " Declined");
Log.i("onPermissionDeclined", "Permission(s) " + Arrays.toString(permissionName) + " Declined");
}

@Override
public void onPermissionPreGranted(String permissionsName) {
@Override public void onPermissionPreGranted(@NonNull String permissionsName) {
result.setText("Permission( " + permissionsName + " ) preGranted");
Log.i("onPermissionPreGranted", "Permission( " + permissionsName + " ) preGranted");
}

@Override
public void onPermissionNeedExplanation(String permissionName) {
@Override public void onPermissionNeedExplanation(@NonNull String permissionName) {
Log.i("NeedExplanation", "Permission( " + permissionName + " ) needs Explanation");
if (!isSingle) {
neededPermission = PermissionHelper.declinedPermissions(this, MULTI_PERMISSIONS);
Expand All @@ -102,21 +95,18 @@ public void onPermissionNeedExplanation(String permissionName) {
}
}

@Override
public void onPermissionReallyDeclined(String permissionName) {
@Override public void onPermissionReallyDeclined(@NonNull String permissionName) {
result.setText("Permission " + permissionName + " can only be granted from SettingsScreen");
Log.i("ReallyDeclined", "Permission " + permissionName + " can only be granted from settingsScreen");
/** you can call {@link PermissionHelper#openSettingsScreen(Context)} to open the settings screen */
}

@Override
public void onNoPermissionNeeded() {
@Override public void onNoPermissionNeeded() {
result.setText("Permission(s) not needed");
Log.i("onNoPermissionNeeded", "Permission(s) not needed");
}

@Override
public void onClick(View v) {
@Override public void onClick(View v) {
if (v.getId() == R.id.single || v.getId() == R.id.multi) {
isSingle = v.getId() == R.id.single;
permissionHelper
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@

public class SamplePagerActivity extends BasePermissionActivity {

@NonNull
@Override
protected List<PermissionModel> permissions() {
@NonNull @Override protected List<PermissionModel> permissions() {
List<PermissionModel> permissions = new ArrayList<>();
permissions.add(PermissionModelBuilder.withContext(this)
.withCanSkip(true)
Expand Down Expand Up @@ -71,38 +69,30 @@ protected List<PermissionModel> permissions() {
return permissions;
}

@Override
protected int theme() {
@Override protected int theme() {
return R.style.noActionBar;
}

@Override
protected void onIntroFinished() {
@Override protected void onIntroFinished() {
Log.i("onIntroFinished", "Intro has finished");
// do whatever you like!
finish();
}

@Nullable
@Override
protected ViewPager.PageTransformer pagerTransformer() {
@Nullable @Override protected ViewPager.PageTransformer pagerTransformer() {
return null;//use default
}

@NonNull
@Override
protected boolean backPressIsEnabled() {
@Override protected boolean backPressIsEnabled() {
return false;
}

@Override
protected void permissionIsPermanentlyDenied(String permissionName) {
@Override protected void permissionIsPermanentlyDenied(String permissionName) {
Log.e("DANGER", "Permission ( " + permissionName + " ) is permanentlyDenied and can only be granted via settings screen");
/** {@link com.fastaccess.permission.base.PermissionHelper#openSettingsScreen(Context)} can help you to open it if you like */
}

@Override
protected void onUserDeclinePermission(String permissionName) {
@Override protected void onUserDeclinePermission(String permissionName) {
Log.w("Warning", "Permission ( " + permissionName + " ) is skipped you can request it again by calling doing such\n " +
"if (permissionHelper.isExplanationNeeded(permissionName)) {\n" +
" permissionHelper.requestAfterExplanation(permissionName);\n" +
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ buildscript {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'com.android.tools.build:gradle:2.1.0-alpha3'

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
Expand Down
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
VERSION_NAME=1.0.8
VERSION_CODE=8
VERSION_NAME=1.0.9
VERSION_CODE=9
GROUP=com.github.k0shk0sh
POM_DESCRIPTION=A Library that simplify Android Runtime Permissions
POM_URL=https://github.com/k0shk0sh/PermissionHelper
Expand Down
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Wed Oct 21 11:34:03 PDT 2015
#Mon Mar 28 22:21:48 MYT 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
6 changes: 3 additions & 3 deletions permission/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ android {
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
versionCode 8
versionName "1.0.8"
versionCode 9
versionName "1.0.0"
}
buildTypes {
release {
Expand All @@ -21,5 +21,5 @@ android {

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:appcompat-v7:23.2.1'
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.fastaccess.permission.base;

import android.Manifest;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
Expand Down Expand Up @@ -51,8 +50,7 @@ public static PermissionHelper getInstance(@NonNull Activity context, @NonNull O
return new PermissionHelper(context, permissionCallback);
}

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
if (requestCode == REQUEST_PERMISSIONS) {
if (verifyPermissions(grantResults)) {
permissionCallback.onPermissionGranted(permissions);
Expand Down Expand Up @@ -131,6 +129,8 @@ public void requestSystemAlertPermission() {
if (!isSystemAlertGranted()) {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + context.getPackageName()));
context.startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
} else {
permissionCallback.onPermissionPreGranted(Manifest.permission.SYSTEM_ALERT_WINDOW);
}
} catch (Exception e) {
Log.e("SystemAlertPermission", "Failed. How? god only know", e);
Expand Down Expand Up @@ -195,19 +195,16 @@ public void requestAfterExplanation(@NonNull String permissionName) {
* to be called when explanation is presented to the user
*/
public void requestAfterExplanation(@NonNull String[] permissions) {

ArrayList<String> permissionsToRequest = new ArrayList<>();

for (String permissionName : permissions) {
if (isPermissionDeclined(permissionName)) {
permissionsToRequest.add(permissionName); // add permission to request
} else {
permissionCallback.onPermissionPreGranted(permissionName); // do not request, since it is already granted
}
}

if (permissionsToRequest.isEmpty()) return;
permissions = permissionsToRequest.toArray(new String[permissionsToRequest.size()]);

ActivityCompat.requestPermissions(context, permissions, REQUEST_PERMISSIONS);
}

Expand Down Expand Up @@ -276,11 +273,13 @@ public boolean permissionExists(@NonNull String permissionName) {
}

/**
* @return true if {@link android.Manifest.permission#SYSTEM_ALERT_WINDOW} is granted
* @return true if {@link Manifest.permission#SYSTEM_ALERT_WINDOW} is granted
*/
@TargetApi(Build.VERSION_CODES.M)
public boolean isSystemAlertGranted() {
return Settings.canDrawOverlays(context);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
return Settings.canDrawOverlays(context);
}
return true;
}

/**
Expand Down Expand Up @@ -388,9 +387,11 @@ public static boolean permissionExists(@NonNull Context context, @NonNull String
/**
* @return true if {@link android.Manifest.permission#SYSTEM_ALERT_WINDOW} is granted
*/
@TargetApi(Build.VERSION_CODES.M)
public static boolean isSystemAlertGranted(@NonNull Context context) {
return Settings.canDrawOverlays(context);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
return Settings.canDrawOverlays(context);
}
return true;
}

}
Loading

0 comments on commit 2d7ba01

Please sign in to comment.