整理:工具类代码
parent
64f6ec1369
commit
e6cafa521a
@ -1,39 +1,44 @@
|
|||||||
package com.idormy.sms.forwarder.utils;
|
package com.idormy.sms.forwarder.utils;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.ResolveInfo;
|
import android.content.pm.ResolveInfo;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.PowerManager;
|
import android.os.Build;
|
||||||
import android.provider.Settings;
|
import android.os.PowerManager;
|
||||||
import android.widget.Toast;
|
import android.provider.Settings;
|
||||||
|
import android.widget.Toast;
|
||||||
import com.idormy.sms.forwarder.R;
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
public class KeepAliveUtils {
|
|
||||||
|
import com.idormy.sms.forwarder.R;
|
||||||
public static boolean isIgnoreBatteryOptimization(Activity activity) {
|
|
||||||
PowerManager powerManager = (PowerManager) activity.getSystemService(Context.POWER_SERVICE);
|
public class KeepAliveUtils {
|
||||||
if (powerManager != null) {
|
|
||||||
return powerManager.isIgnoringBatteryOptimizations(activity.getPackageName());
|
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||||
} else {
|
public static boolean isIgnoreBatteryOptimization(Activity activity) {
|
||||||
return true;
|
PowerManager powerManager = (PowerManager) activity.getSystemService(Context.POWER_SERVICE);
|
||||||
}
|
if (powerManager != null) {
|
||||||
}
|
return powerManager.isIgnoringBatteryOptimizations(activity.getPackageName());
|
||||||
|
} else {
|
||||||
public static void ignoreBatteryOptimization(Activity activity) {
|
return true;
|
||||||
if (isIgnoreBatteryOptimization(activity)) {
|
}
|
||||||
return;
|
}
|
||||||
}
|
|
||||||
@SuppressLint("BatteryLife") Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
|
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||||
intent.setData(Uri.parse("package:" + activity.getPackageName()));
|
public static void ignoreBatteryOptimization(Activity activity) {
|
||||||
ResolveInfo resolveInfo = activity.getPackageManager().resolveActivity(intent, 0);
|
if (isIgnoreBatteryOptimization(activity)) {
|
||||||
if (resolveInfo != null) {
|
return;
|
||||||
activity.startActivity(intent);
|
}
|
||||||
} else {
|
@SuppressLint("BatteryLife") Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
|
||||||
Toast.makeText(activity, R.string.unsupport, Toast.LENGTH_SHORT).show();
|
intent.setData(Uri.parse("package:" + activity.getPackageName()));
|
||||||
}
|
ResolveInfo resolveInfo = activity.getPackageManager().resolveActivity(intent, 0);
|
||||||
}
|
if (resolveInfo != null) {
|
||||||
}
|
activity.startActivity(intent);
|
||||||
|
} else {
|
||||||
|
Toast.makeText(activity, R.string.unsupport, Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue