New file |
| | |
| | | package com.hdl.photovoltaic.other; |
| | | |
| | | import android.content.Context; |
| | | import android.content.Intent; |
| | | import android.net.Uri; |
| | | import android.provider.Settings; |
| | | |
| | | import com.hdl.photovoltaic.R; |
| | | import com.hdl.photovoltaic.widget.ConfirmationCancelDialog; |
| | | |
| | | /** |
| | | * 弹窗逻辑 |
| | | */ |
| | | public class HdlDialogLogic { |
| | | |
| | | private static volatile HdlDialogLogic sHdlDialogLogic; |
| | | |
| | | |
| | | /** |
| | | * 获取当前对象 |
| | | * |
| | | * @return HdlCommonLogic |
| | | */ |
| | | public static synchronized HdlDialogLogic getInstance() { |
| | | if (sHdlDialogLogic == null) { |
| | | synchronized (HdlDialogLogic.class) { |
| | | if (sHdlDialogLogic == null) { |
| | | sHdlDialogLogic = new HdlDialogLogic(); |
| | | } |
| | | } |
| | | |
| | | } |
| | | return sHdlDialogLogic; |
| | | } |
| | | |
| | | /** |
| | | * 跳转到权限详情页设置权限(有的手机厂家只能跳转到设置界面) |
| | | * |
| | | * @param context 上下文 |
| | | */ |
| | | public void showSettingPermissionDialog(Context context) { |
| | | if (context == null) { |
| | | return; |
| | | } |
| | | HdlThreadLogic.runMainThread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | |
| | | ConfirmationCancelDialog dialog = new ConfirmationCancelDialog(context); |
| | | dialog.setTitle(context.getString(R.string.loading_title_tip)); |
| | | dialog.setContent(context.getString(R.string.please_go_set_permissions)); |
| | | dialog.setConfirmation(context.getString(R.string.me_set)); |
| | | dialog.show(); |
| | | dialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() { |
| | | @Override |
| | | public void Confirm() { |
| | | |
| | | Intent intent = new Intent(); |
| | | intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); |
| | | Uri uri = Uri.fromParts("package", context.getPackageName(), null); |
| | | intent.setData(uri); |
| | | context.startActivity(intent); |
| | | dialog.dismiss(); |
| | | } |
| | | }); |
| | | dialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() { |
| | | @Override |
| | | public void Cancel() { |
| | | dialog.dismiss(); |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | | |
| | | } |