【CTA】CTA认证要求打开日历时提示联系人权限确认
国内过CTA认证时,要求打开日历时提示联系人权限确认,这里所说的联系人权限不是系统默认赋予的权限提示,而是需要新加一个权限提示内容,让用户进行确认。
平台:Android P(9.0)
修改代码如下:
vendor/mediatek/proprietary/packages/apps/Calendar/res/values-zh-rCN/strings.xml
--- a/alps/vendor/mediatek/proprietary/packages/apps/Calendar/res/values-zh-rCN/strings.xml
+++ b/alps/vendor/mediatek/proprietary/packages/apps/Calendar/res/values-zh-rCN/strings.xml
@@ -280,4 +280,11 @@<string name="monthly_on_day_count">"每月(每月的<xliff:g id="ORDINAL_NUMBER">%1$s</xliff:g><xliff:g id="DAY_OF_WEEK">%2$s</xliff:g>)"</string>
+ <!-- CTA Monkey.20200410 -->
+ <string name="confirm_dialog_msg">"日历会尝试取得您的联系人权限以供功能正常运行"</string>
+ <string name="confirm_dialog_allow_button">"允许"</string>
+ <string name="confirm_dialog_deny_button">"拒绝"</string>
+ <string name="deny_toast_msg">"读取联系人权限失败,拒绝访问日历"</string>
+ <!-- END --></resources>
vendor/mediatek/proprietary/packages/apps/Calendar/src/com/android/calendar/AllInOneActivity.java
--- a/alps/vendor/mediatek/proprietary/packages/apps/Calendar/src/com/android/calendar/AllInOneActivity.java
+++ b/alps/vendor/mediatek/proprietary/packages/apps/Calendar/src/com/android/calendar/AllInOneActivity.java
@@ -95,6 +95,12 @@ import java.util.TimeZone;import java.util.Arrays;import java.util.ArrayList;+//Monkey.20200410 CTA
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.DialogInterface;
+//END
+import static android.provider.CalendarContract.Attendees.ATTENDEE_STATUS;import static android.provider.CalendarContract.EXTRA_EVENT_ALL_DAY;import static android.provider.CalendarContract.EXTRA_EVENT_BEGIN_TIME;
@@ -116,6 +122,11 @@ public class AllInOneActivity extends AbstractCalendarActivity implements EventH// @}private static final int HANDLER_KEY = 0;private static float mScale = 0;
+
+ //Monkey.20200410 CTA
+ private final String CALENDAR_CONFIRM_PREF_NAME = "ConfirmPrefFile";
+ private final String CONFIRM_VALUE_KEY = "mtk_calendar_confirmed";
+ //END// Indices of buttons for the drop down menu (tabs replacement)// Must match the strings in the array buttons_list in arrays.xml and the
@@ -634,6 +645,10 @@ public class AllInOneActivity extends AbstractCalendarActivity implements EventH"AllInOneActivity.onCreate.restoreState");mBundleIcicleOncreate = icicle;
+
+ //Monkey.20200410 CTA
+ buildAndShowConfirmDialog();
+ //ENDif (!checkAndRequestPermission(CALENDAR_ONCREATE_PERMISSIONS_REQUEST_CODE)){
@@ -1878,4 +1893,48 @@ public class AllInOneActivity extends AbstractCalendarActivity implements EventHmSearchMenu.expandActionView();}}
+
+ /**
+ * Monkey.20200410
+ * CTA Dialog
+ */
+ private void setConfirmed() {
+ SharedPreferences settings = getSharedPreferences(CALENDAR_CONFIRM_PREF_NAME, 0);
+ SharedPreferences.Editor editor = settings.edit();
+ editor.putBoolean(CONFIRM_VALUE_KEY, true);
+ editor.commit();
+ }
+
+ private boolean getConfirmed() {
+ SharedPreferences settings = getSharedPreferences(CALENDAR_CONFIRM_PREF_NAME, 0);
+ return settings.getBoolean(CONFIRM_VALUE_KEY, false);
+ }
+
+ private void buildAndShowConfirmDialog() {
+ if (!getConfirmed()) {
+ Log.d(TAG, "buildAndShowConfirmDialog()");
+ Dialog dialog = new AlertDialog.Builder(this)
+ .setMessage(R.string.confirm_dialog_msg)
+ .setPositiveButton(R.string.confirm_dialog_allow_button,
+ new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int whichButton) {
+ setConfirmed();
+ }
+ })
+ .setNegativeButton(R.string.confirm_dialog_deny_button,
+ new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int whichButton) {
+ Toast toast = Toast.makeText(getApplicationContext(), R.string.deny_toast_msg,
+ Toast.LENGTH_LONG);
+ toast.show();
+ finish();
+ }
+ })
+ .create();
+ dialog.setCanceledOnTouchOutside(false);
+ dialog.setCancelable(false);
+ dialog.show();
+ }
+ }}
【CTA】CTA认证要求打开日历时提示联系人权限确认相关推荐
- win10计算机怎么开权限访问不了,手把手教您win10系统打开共享文件时提示没有权限的教程...
今天和大家分享一下win10系统打开共享文件时提示没有权限问题的解决方法,在使用win10系统的过程中经常不知道如何去解决win10系统打开共享文件时提示没有权限的问题,有什么好的办法去解决win10 ...
- 创建或打开解决方案时提示“DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86“错误的解决方案
创建或打开解决方案时提示"DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86"错误的解决方案 参考文章: (1)创建或打开解决方案时提示& ...
- php怎么关联默认打开程序,win10系统打开文件时提示“请在默认程序控制面板中创建关联”如何解决...
近日有win10系统用户反映说在打开文件的时候,突然遇到了"请在默认程序控制面板中创建关联"的提示,导致无法打开文件,这该怎么办呢,本教程就给大家带来win10系统打开文件时提示& ...
- 打开access文件 提示文件名无效_分享在PS软件打开图像时提示无效的JPEG的解决方法...
网页美工培训专业同学经常问老师在Photoshop打开图像时提示无效的JPEG错误怎么解决?现在网页美工培训老师就整理了一些在Photoshop中打开图像时经常发生的错误: •无法完成您的请求,因为它 ...
- 计算机无法打开这个应用,Windows10打开软件时提示“无法打开这个应用”怎么解决?...
Windows10打开软件时提示"无法打开这个应用"怎么办?很多用户升级Windows10系统后,只要打开Windows应用,系统就会出现提示"无法打开这个应用 无法使用 ...
- 打开word时提示需要安装包gaozhi.msi
打开word时提示需要安装包gaozhi.msi, 重新安装也没用图文详细解决方案 最近在维护校内局域网电脑终端时发现多台机器在更新后word 2003出现异常,打开word出现提示需要安装包gaoz ...
- qq打开网页时提示用浏览器打开html,微信QQ打开网页时提示用浏览器打开
微信QQ打开网页时提示用浏览器打开 一,需求分析 1.1,使用微信或QQ打开网址时,无法在微信或QQ内打开常用下载软件,手机APP等.故此需要在微信qq里提示 二,功能实现 2.1 html实现 请点 ...
- 【PB】pb打开pbw时提示Attempt to open datawindow failed错误解决办法
今天用PB9打开pbw时提示"Attempt to open datawindow failed"的错误信息,经研究发现是pb9程序指向的打印语句有问题. 原有的指向路径: Win ...
- wps打开共享文件时提示另一用户正在编辑中
wps打开共享文件时提示另一用户正在编辑中 使用环境 中标麒麟V7 samba服务端 中标麒麟V7 客户端 wps软件 故障现象 在中标麒麟V7客户端上打开samba服务器共享出来的一个文件,提示另一 ...
最新文章
- php lang无效,详解 Go 中的不可变类型
- http 301 和 302的区别
- ACE入门---很好的文章
- RAC RMAN 通道配置 RMAN-12001 RMAN-12001 RMAN-10008 RMAN-10003 ORA-01017 错误
- 【职场建议】开发转算法,我们应该如何准备(过来人的肺腑之言)
- Sqlplus导出excel文件
- php静态属性获取$_get,php - PHP的静态属性的Magic __get getter - SO中文参考 - www.soinside.com...
- 飞畅科技-千兆/百兆/核心/PoE/光纤交换机选型指南
- python画正方体_python绘制立方体的方法
- Linux下修改系统时间的简单方法
- 使用脚本控制网页Table的显示隐藏(全代码)_AX
- excel模板 基金账本_专项基金拨款记录EXCEL图表
- JavaScript格式化时间与日期
- 第三阶段应用层——1.7 数码相册—电子书(4)—select支持多输入
- java文件转二进制
- HDU 4417 Super Mario(线段树||树状数组+离线操作 之线段树篇)
- 配置 sysctl.conf 系统参数详解
- python将数据导出为csv文件时,出现PermissionError: [Errno 13] Permission denied:问题
- JAVAEE面试指导
- 自动化爬虫爬取腾讯招聘信息