安全控件UI调整

Signed-off-by: fanchenxuan <fanchenxuan@huawei.com>
This commit is contained in:
fanchenxuan 2024-04-08 17:02:11 +08:00
parent 91c101e0b8
commit 52d010b427
11 changed files with 124 additions and 94 deletions

View File

@ -16,5 +16,10 @@
import AbilityStage from '@ohos.app.ability.AbilityStage';
export default class MyAbilityStage extends AbilityStage {
onCreate(): void {}
// PermissionManager AbilityStage
onCreate(): void {
}
}

View File

@ -24,15 +24,6 @@ export default class Constants {
public static BACKBAR_IMAGE_WIDTH = 24;
public static BACKBAR_MARGIN_RIGHT = 4;
// dialog
public static DIALOG_BORDER_RADIUS = 24;
public static DIALOG_HEIGHT = 70;
public static DIALOG_WIDTH = 336;
// text of dialog
public static DIALOG_TEXT_FONT_SIZE = 20;
public static DIALOG_TEXT_MARGIN_TOP = 25;
// search textInput
public static TEXTINPUT_PADDING_LEFT = 36;
public static TEXTINPUT_BORDER_RADIUS = 20;
@ -81,6 +72,7 @@ export default class Constants {
public static TEXT_SMALL_FONT_SIZE = 14;
public static TEXT_SMALLER_FONT_SIZE = 12;
public static TEXT_LINE_HEIGHT = 22;
public static TEXT_LINE_HEIGHT_27 = 27;
public static TEXT_BIG_LINE_HEIGHT = 28;
public static TEXT_SMALL_LINE_HEIGHT = 19;
public static CONSTRAINTSIZE_MINHEIGHT = 48;
@ -100,6 +92,8 @@ export default class Constants {
public static IMAGE_WIDTH_RECORD = 24;
public static IMAGE_HEIGHT_RECORD_APPLICATION = 16;
public static IMAGE_WIDTH_RECORD_APPLICATION = 16;
public static IMAGE_POSITION_28 = 28;
public static BORDER_WIDTH_1 = 1;
public static TITLE_MARGIN_BOTTOM = 16;
public static SUBTITLE_MIN_HEIGHT = 48;
public static SUBTITLE_LINE_HEIGHT = 24;
@ -110,6 +104,7 @@ export default class Constants {
public static TAB_INNER_PADDING = 8;
public static TAB_DECORATION_HEIGHT = 2;
public static TAB_DECORATION_POSITION_Y = 6;
public static PADDING_10 = 10;
public static DEFAULT_PADDING_START = 12;
public static DEFAULT_PADDING_END = 12;
public static DEFAULT_PADDING_TOP = 12;
@ -270,8 +265,8 @@ export default class Constants {
// icon
public static SECURITY_ICON_MARGIN_TOP = 24;
public static SECURITY_ICON_MARGIN_BOTTOM = 16;
public static SECURITY_ICON_WIDTH = 24;
public static SECURITY_ICON_HEIGHT = 24;
public static SECURITY_ICON_WIDTH = 48;
public static SECURITY_ICON_HEIGHT = 48;
// content-descriptor
public static SECURITY_DESCRIPTOR_DEVIDER_MARGIN_TOP = 8;

View File

@ -205,10 +205,12 @@ export class AppInfoSimple {
export class Param {
public icon: Resource
public label: Resource
public description: string
constructor(icon: Resource, label: Resource) {
constructor(icon: Resource, label: Resource, description: string) {
this.icon = icon
this.label = label
this.description = description
}
};

View File

@ -276,7 +276,7 @@ struct PermissionDialog {
}
}.margin({ left: this.isBottomPopover ? Constants.DIALOG_MARGIN_VERTICAL : Constants.DIALOG_MARGIN,
right: this.isBottomPopover ? Constants.DIALOG_MARGIN_VERTICAL : Constants.DIALOG_MARGIN,
bottom: this.isBottomPopover ? this.naviHeight + "px" : 0})
bottom: this.isBottomPopover ? this.naviHeight + 'px' : 0})
}
showTitle(): ResourceStr {

View File

@ -569,11 +569,8 @@ struct permissionRecordPage {
}
getInfo(record: privacyManager.BundleUsedRecord, sortFlag: boolean) {
bundleManager.getBundleInfo(
record.bundleName,
bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION |
bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION
).then(async (info): Promise<boolean> => {
bundleManager.getBundleInfo(record.bundleName, bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION |
bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION).then(async (info): Promise<boolean> => {
let appInfo: AppRecordInfo = new AppRecordInfo('', '', '', 0, 0, [], [], [], [], 0);
let reqPermissions: Permissions[] = [];
let groupIds: number[] = [];
@ -597,14 +594,12 @@ struct permissionRecordPage {
groupIds.push(groupId);
}
}
this.allBundleInfo.forEach(bundleInfo => {
if (bundleInfo.bundleName === info.name) {
appInfo.groupName = bundleInfo.label;
appInfo.icon = bundleInfo.icon;
}
})
appInfo.name = info.name;
appInfo.api = info.targetVersion;
appInfo.accessTokenId = info.appInfo.accessTokenId;

View File

@ -70,8 +70,12 @@ struct CustomSecurityDialog {
@State naviHeight: number = 0
securityParams : Array<Param> = [
new Param($r('app.media.ic_public_gps'), $r('app.string.location_desc')),
new Param($r('app.media.ic_public_folder'), $r('app.string.media_files_desc'))
new Param(
$r('app.media.ic_location'), $r('app.string.SecurityTitle_location'), 'app.string.SecurityDescription_location'
),
new Param(
$r('app.media.file'), $r('app.string.SecurityTitle_mediaFiles'), 'app.string.SecurityDescription_mediaFiles'
)
]
GetAppName() {
@ -141,36 +145,40 @@ struct CustomSecurityDialog {
}) {
Row() {
Column() {
Image(this.securityParams[this.index].icon) // icon
.width(Constants.SECURITY_ICON_WIDTH)
.height(Constants.SECURITY_ICON_HEIGHT)
.fillColor($r('sys.color.ohos_id_color_text_primary'))
.margin({
top: Constants.SECURITY_ICON_MARGIN_TOP,
bottom: Constants.SECURITY_ICON_MARGIN_BOTTOM
})
Column() {
Image($r('app.media.ic_public_privacy')) // icon
.width(Constants.SECURITY_ICON_WIDTH)
.height(Constants.SECURITY_ICON_HEIGHT)
.fillColor($r('sys.color.ohos_id_color_component_activated'))
.border({
width: Constants.BORDER_WIDTH_1,
color: $r('sys.color.ohos_id_color_button_normal'),
radius: $r('sys.float.ohos_id_corner_radius_default_m')
})
.padding(Constants.PADDING_10)
Image(this.securityParams[this.index].icon)
.width(Constants.IMAGE_LENGTH_20)
.height(Constants.IMAGE_LENGTH_20)
.position({ x: Constants.IMAGE_POSITION_28, y: Constants.IMAGE_POSITION_28 })
}
.backgroundColor($r('sys.color.ohos_id_color_background'))
.margin({
top: Constants.SECURITY_ICON_MARGIN_TOP,
bottom: Constants.SECURITY_ICON_MARGIN_BOTTOM
})
Column() { // content
Text() {
Span($r('app.string.Temporarily_authorize'))
Span(this.appName)
Span($r('app.string.To_access'))
Span(this.securityParams[this.index].label)
}
Text(this.securityParams[this.index].label)
.textAlign(TextAlign.Center)
.fontColor($r('sys.color.ohos_id_color_text_primary'))
.fontSize($r('sys.float.ohos_id_text_size_body1'))
.fontSize($r('sys.float.ohos_id_text_size_headline8'))
.fontWeight(FontWeight.Medium)
.lineHeight(Constants.TEXT_LINE_HEIGHT_27)
Text() {
Span($r('app.string.location_button_desc'))
Span($r('app.string.only_can_desc'))
Span(this.securityParams[this.index].label)
Span($r('app.string.only_after_desc'))
Span($r('app.string.prevent_desc'))
}
Text($r(this.securityParams[this.index].description, this.appName))
.textAlign(TextAlign.Center)
.fontColor($r('sys.color.ohos_id_color_text_secondary'))
.fontSize($r('sys.float.ohos_id_text_size_body2'))
.lineHeight(Constants.TEXT_SMALL_LINE_HEIGHT)
.margin({
top: Constants.SECURITY_DESCRIPTOR_DEVIDER_MARGIN_TOP,
})
@ -202,7 +210,7 @@ struct CustomSecurityDialog {
}
}.margin({ left: this.isBottomPopover ? Constants.DIALOG_MARGIN_VERTICAL : Constants.DIALOG_MARGIN,
right: this.isBottomPopover ? Constants.DIALOG_MARGIN_VERTICAL : Constants.DIALOG_MARGIN,
bottom: this.isBottomPopover ? this.naviHeight : 0})
bottom: this.isBottomPopover ? this.naviHeight + 'px' : 0})
}
aboutToAppear() {

View File

@ -605,36 +605,20 @@
"value": "Permission manager"
},
{
"name": "Temporarily_authorize",
"value": "Temporarily authorize \""
"name": "SecurityTitle_location",
"value": "Secure access to location information"
},
{
"name": "To_access",
"value": "\" to access "
"name": "SecurityTitle_mediaFiles",
"value": "Secure access to media and files"
},
{
"name": "location_desc",
"value": "location information"
"name": "SecurityDescription_location",
"value": "This button is certified by the system security and only allows \"%s\" temporary access to location information when you click this button, in order to reduce the continuous access of your private data by applications."
},
{
"name": "media_files_desc",
"value": "media and files"
},
{
"name": "location_button_desc",
"value": "This button has passed the system security authentication. "
},
{
"name": "only_can_desc",
"value": "The app is allowed to temporarily access your "
},
{
"name": "only_after_desc",
"value": " only after you touch this button. "
},
{
"name": "prevent_desc",
"value": "This prevents your private data from being continuously obtained by the app."
"name": "SecurityDescription_mediaFiles",
"value": "This button is certified by the system security and only allows \"%s\" temporary access to media and files when you click this button, in order to reduce the continuous access of your private data by applications."
},
{
"name": "Got_it",

View File

@ -0,0 +1 @@
<svg height="192" viewBox="0 0 192 192" width="192" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><linearGradient id="a" x1="50.000135%" x2="50.000135%" y1="100%" y2="-.000169%"><stop offset="0" stop-color="#ffaa1a"/><stop offset="1" stop-color="#f4a828"/></linearGradient><linearGradient id="b" x1="50.000144%" x2="50.000144%" y1=".000009%" y2="100%"><stop offset="0" stop-color="#ffd146"/><stop offset="1" stop-color="#fbc644"/></linearGradient><linearGradient id="c" x1="49.999807%" x2="49.999807%" y1=".000012%" y2="100.000799%"><stop offset="0" stop-color="#fff" stop-opacity=".4"/><stop offset="1" stop-color="#fff" stop-opacity="0"/></linearGradient><filter id="d" height="130.2%" width="119.3%" x="-9.7%" y="-15.1%"><feGaussianBlur in="SourceGraphic" stdDeviation="4"/></filter><g fill="none" fill-rule="evenodd"><path d="m58.434 9.989c-35.333 0-48.256 12.923-48.256 48.254v75.503c0 35.331 12.923 48.254 48.255 48.254h75.447c35.332 0 48.279-12.923 48.279-48.254v-75.503c0-35.331-12.924-48.254-48.255-48.254z" fill="url(#a)"/><path d="m10.178 74.01v59.736c0 35.331 12.923 48.254 48.255 48.254h75.447c35.332 0 48.279-12.923 48.279-48.254v-35.646h-67.437c-5.801 0-11.245-2.801-14.621-7.522l-6.467-9.046c-3.375-4.721-8.82-7.522-14.621-7.522z" fill="url(#b)"/><path d="m34.158 74.01v62.44c0 5.89.605 8.025 1.741 10.178 1.137 2.154 2.806 3.843 4.93 4.995 2.126 1.151 4.235 1.764 10.049 1.764h90.646c5.814 0 7.922-.613 10.048-1.764 2.125-1.152 3.793-2.841 4.93-4.995 1.137-2.153 1.742-4.288 1.742-10.178v-38.35h-43.522c-5.801 0-11.245-2.801-14.621-7.522l-6.467-9.046c-3.375-4.721-8.82-7.522-14.621-7.522z" fill="url(#c)" filter="url(#d)"/><path d="m135.6073 36c5.814 0 7.922.613 10.048 1.765 2.125 1.151 3.793 2.841 4.93 4.994s1.742 4.289 1.742 10.178l-.0003 45.412-37.605.001-.386186-.00414c-5.655748-.121297-10.933836-2.9017711-14.234814-7.51786l-6.467-9.046-.2280479-.3118792c-3.3891279-4.5322265-8.7208632-7.2101208-14.3929521-7.2101208l-38.939-.001.0003-21.322c0-5.889.605-8.025 1.742-10.178s2.805-3.843 4.93-4.994c2.126-1.152 4.234-1.765 10.048-1.765z" fill="#fff" fill-opacity=".4"/><path d="m141.5236 45.0667c5.814 0 7.923.613 10.048 1.765 2.126 1.151 3.794 2.841 4.93 4.994 1.137 2.153 1.742 4.289 1.742 10.178l-.0006 36.346-43.521.0003-.386186-.00414c-5.655748-.121297-10.933836-2.9017711-14.234814-7.51786l-6.467-9.046-.2280479-.3118792c-3.3891279-4.5322265-8.7208632-7.2101208-14.3929521-7.2101208l-44.856-.0003.0006-12.256c0-5.889.605-8.025 1.742-10.178s2.805-3.843 4.93-4.994c2.126-1.152 4.234-1.765 10.048-1.765z" fill="#fff"/><path d="m119.3516 79.3106c.007.38-.027.752-.101 1.116 1.268-1.179 2.472-2.602 3.653-4.264 1.102-1.549 4.001-6.279 4.3-6.716 1.275-1.861 3.105-3.349 5.221-4.205.473-.191 1.026-.344 1.662-.46-1.809-3.092-5.15-5.085-8.867-5.085-5.139 0-9.397 3.777-10.151 8.709.261 2.311.994 4.275 2.196 5.906 1.323 1.796 2.057 3.37 2.087 4.999m21.032-10.85c-.043-.07-.098-.134-.164-.19-1.408-1.188-3.073-1.869-4.774-2.06-1.019.102-1.827.277-2.42.517-1.822.737-3.403 2.021-4.501 3.625-.265.388-3.175 5.134-4.316 6.739-1.914 2.694-3.909 4.816-6.144 6.341.557-.071 1.146-.138 1.755-.195 2.061-.195 4.008-.254 5.675-.126.901.069 1.808.181 3.825.459 2.852.393 3.992.523 5.066.5200506 4.951 0 8.959-4.0120506 8.959-8.9680506 0-2.643-1.143-5.02-2.961-6.662m-26.801.897c-3.122.832-5.422 3.68-5.422 7.066 0 3.636 2.652 6.651 6.126 7.216.269-.106.535-.221.797-.344 3.495-2.264 3.375-4.663.892-8.033-1.236-1.676-2.033-3.648-2.393-5.905" fill="#f4a929"/></g></svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="20px" height="20px" viewBox="0 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>ic_location</title>
<defs>
<path d="M7.6916556,-3.10752092e-16 L12.3083444,3.10752092e-16 C14.9829006,-1.80555915e-16 15.9527593,0.278476833 16.9305371,0.801398111 C17.9083149,1.32431939 18.6756806,2.09168511 19.1986019,3.06946289 C19.7215232,4.04724067 20,5.01709938 20,7.6916556 L20,12.3083444 C20,14.9829006 19.7215232,15.9527593 19.1986019,16.9305371 C18.6756806,17.9083149 17.9083149,18.6756806 16.9305371,19.1986019 C15.9527593,19.7215232 14.9829006,20 12.3083444,20 L7.6916556,20 C5.01709938,20 4.04724067,19.7215232 3.06946289,19.1986019 C2.09168511,18.6756806 1.32431939,17.9083149 0.801398111,16.9305371 C0.278476833,15.9527593 1.2037061e-16,14.9829006 -2.07168062e-16,12.3083444 L2.07168062e-16,7.6916556 C-1.2037061e-16,5.01709938 0.278476833,4.04724067 0.801398111,3.06946289 C1.32431939,2.09168511 2.09168511,1.32431939 3.06946289,0.801398111 C4.04724067,0.278476833 5.01709938,1.80555915e-16 7.6916556,-3.10752092e-16 Z" id="path-1"></path>
<pattern id="pattern-3" patternUnits="objectBoundingBox" x="0%" width="100%" height="100%">
<use xlink:href="#image-4" transform="scale(0.5,0.5)"></use>
</pattern>
<image id="image-4" width="40" height="40" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAABGdBTUEAALGOfPtRkwAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAKKADAAQAAAABAAAAKAAAAAB65masAAADc0lEQVRYCe2X6ZKiMBRGo4L7vpTv/1a+gpQr4oKKDufqraHscSwC4/jDVKWDkOXku0vShclkcjUfXIofzCZoX8CsFvoq+FUwqwJZx7/NBwuFghXrWwAvl4vZ7/efCYhy5/PZ7HY7Y6PimxS8mmLRbinHSvcUg1ANE5dKpR8KXq+vrwH/BFBNKaaNfW+7DUwURSYMQ4F0XddUKhWp9P0baO6ALHg8Ho3v++J353MU631TSkHoQ61Wq6bdbptGox5D/tks1oAsQNFFdfrVamWomPUGwpeCcRzHdLtdgSZgKEQ2tdPpmF6v98MFGG8FCBQKJc0E0Gw2N0GwuYP9znv0bzQaAsgYoHinm9QNDYdDAec97sEaVoBMwEJBEEhtNpsy2WazeRqtqLb212a/u8EJSfwHUNSlMi+/qfP5QjZrBcjk+A8Vx5/NZtI+SyUsfDqdjDf1hEtBaFutlpgXQJQlgHgfhgdprQHVREyGOWgBxNTPCn1UoVqtJiav1+uyOc/zxBr442AwEEWZ1xpQIdbrtQC2mi2Z2N/4ZrlcCrD20Ra4crksYLhFdIlEfVxDg4rnZqwqATWdTu0BUQOz6RHmuI5xy64AKJC2gJGoSSkohNIEAJtjDuaiUgBdxRscj8fSN5OC5DsSMJOzcxbjnS6mboBapBHUY0MofDgcBEj7yo/4D7/ps91uTb/ft1eQCfERLeycSVkAMApBBBj+djodxWT0UXAd+9jyndTDuEwKKoguoHBEIqbEpIAvFgtRWNV+VE3Ha8t3LDGfz7MBJtMKsPgZaQM4njE7fqZmfwWmgNqSZzMpiFJaOCkwJwl8Fyfj1coTP3tlTh3/rLUGZGGcngAAjlaS8T2fKVha1R5BrQGZCBOPRiNxeiKT1KFJOyuYgloDAoBKFIIAXwM4LzAFtLuHx6Mxp0Ylx1UyYHTyPNrUCqIaipHPKEQsxxI+SNT+VwVZHDB8jfyGgvgetxAimBtJ3iW1iZOnh/ohkMChpvplXqCpATm+kmbkmXMVVUnSpJ48IVMBsjDnI3kvCQEkZyfv8Mc8SypAXbjT6cpRpr9pMT2phmBhE8kNJPulfU4NyMKVSlkuAkkIVMTMnLtck/JKO6kBUQAwbirib/f/eXkvl83Y1JzHKJncAN9tihUgC5Wc280lwSfBw2UzPIYS0Xmo+AvCLA6DEie+JwAAAABJRU5ErkJggg=="></image>
<path d="M5.25,0.463772742 C7.90908891,0.463772742 10.0677083,2.58158666 10.0677083,5.19781043 C10.0677083,6.21668395 9.75908848,7.21224626 9.1862649,8.21844029 C8.74404848,8.99521613 8.19128554,9.71564989 7.40039068,10.6090882 C7.10172632,10.9464759 6.70672008,11.3288439 6.21452825,11.7578037 L6.21452825,11.7578037 L6.07125677,11.8816328 C5.6167307,12.2713127 4.94842551,12.2834176 4.47362918,11.907077 L4.47362918,11.907077 L4.43659049,11.8762043 L4.26424991,11.7259029 C3.81143164,11.3287851 3.48132306,11.0208414 3.26812257,10.7952968 L3.26812257,10.7952968 L3.21919612,10.7427446 L3.0984068,10.6079633 C1.36508011,8.65831898 0.432291667,7.00511042 0.432291667,5.19781043 C0.432291667,2.60074195 2.49370358,0.506012003 5.11117112,0.464366977 L5.11117112,0.464366977 Z M5.25229167,3.46377274 C4.24713342,3.46377274 3.43229167,4.2786145 3.43229167,5.28377274 C3.43229167,6.28893099 4.24713342,7.10377274 5.25229167,7.10377274 C6.25744991,7.10377274 7.07229167,6.28893099 7.07229167,5.28377274 C7.07229167,4.2786145 6.25744991,3.46377274 5.25229167,3.46377274 Z" id="path-5"></path>
</defs>
<g id="保存控件" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="控件使用告知" transform="translate(-184.000000, -577.000000)">
<g id="Permissiondialog" transform="translate(40.000000, 542.000000)">
<g id="app" transform="translate(116.000000, 7.000000)">
<g id="ic_location" transform="translate(28.000000, 28.000000)">
<mask id="mask-2" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<g id="Rectangle-Copy-6">
<use fill="url(#pattern-3)" xlink:href="#path-1"></use>
<path stroke="#EEEEEE" stroke-width="1" d="M7.6916556,0.5 L12.3083444,0.5 C14.841302,0.5 15.7668409,0.746060066 16.6947377,1.24230471 C17.5840924,1.71793682 18.2820632,2.4159076 18.7576953,3.30526232 C19.2539399,4.23315913 19.5,5.15869799 19.5,7.6916556 L19.5,7.6916556 L19.5,12.3083444 C19.5,14.841302 19.2539399,15.7668409 18.7576953,16.6947377 C18.2820632,17.5840924 17.5840924,18.2820632 16.6947377,18.7576953 C15.7668409,19.2539399 14.841302,19.5 12.3083444,19.5 L12.3083444,19.5 L7.6916556,19.5 C5.15869799,19.5 4.23315913,19.2539399 3.30526232,18.7576953 C2.4159076,18.2820632 1.71793682,17.5840924 1.24230471,16.6947377 C0.746060066,15.7668409 0.5,14.841302 0.5,12.3083444 L0.5,12.3083444 L0.5,7.6916556 C0.5,5.15869799 0.746060066,4.23315913 1.24230471,3.30526232 C1.71793682,2.4159076 2.4159076,1.71793682 3.30526232,1.24230471 C4.23315913,0.746060066 5.15869799,0.5 7.6916556,0.5 L7.6916556,0.5 Z" stroke-linejoin="square" fill="#FCFCFC"></path>
</g>
<g id="Public/ic_folder" mask="url(#mask-2)">
<rect id="矩形" fill="#3194F7" x="0" y="0" width="20" height="20"></rect>
<g id="Public/ic_public_music" transform="translate(4.750000, 3.750000)">
<mask id="mask-6" fill="white">
<use xlink:href="#path-5"></use>
</mask>
<g id="路径" fill-rule="nonzero"></g>
<g id="编组" mask="url(#mask-6)">
<g transform="translate(-1.000000, 0.000000)" id="Symbol/color-light/colorPrimary">
<rect id="color/#000000" fill="#FFFFFF" x="0" y="0" width="12.5" height="12.5"></rect>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.6 KiB

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Public/ic_public_Privacy</title>
<defs>
<path d="M10.6911795,1.30107415 C11.5177131,0.900330583 12.4822869,0.900330583 13.3088205,1.30107415 L13.3088205,1.30107415 L19.7316154,4.41515652 C20.5073719,4.79128086 21,5.57760856 21,6.43973826 L21,6.43973826 L21,11.25 C21,16.5158971 17.6459225,21.1101108 12.7508862,22.7973636 C12.7379871,22.8018097 12.7161694,22.8089491 12.685433,22.8187818 C12.2393172,22.9614959 11.759784,22.9614277 11.3137088,22.8185866 L11.3137088,22.8185866 L11.2767569,22.806645 L11.2767569,22.806645 L11.2519921,22.7983767 C6.35549222,21.1121681 3,16.5172142 3,11.25 L3,11.25 L3,6.43973826 C3,5.57760856 3.49262814,4.79128086 4.26838461,4.41515652 L4.26838461,4.41515652 Z M12.6544103,2.65079531 C12.2411435,2.45042353 11.7588565,2.45042353 11.3455897,2.65079531 L11.3455897,2.65079531 L4.92279487,5.76487768 C4.66420938,5.89025246 4.5,6.15236169 4.5,6.43973826 L4.5,6.43973826 L4.5,11.25 C4.5,13.306318 5.08294865,15.2457214 6.10883718,16.8954286 C6.16805226,16.5722513 6.25148905,16.3022524 6.3591187,16.0833333 C6.77029622,15.2469969 7.83866878,12.75 12.0017996,12.75 C16.1649304,12.75 17.2514993,15.2469969 17.6444805,16.0833333 C17.7479928,16.3036266 17.8289012,16.575643 17.8872059,16.8993825 C18.892194,15.287859 19.4730678,13.3972004 19.4990866,11.3909195 L19.4990866,11.3909195 L19.5,11.25 L19.5,6.43973826 C19.5,6.15236169 19.3357906,5.89025246 19.0772051,5.76487768 L19.0772051,5.76487768 Z M11.875,6.12 C13.5346157,6.12 14.88,7.46538433 14.88,9.125 C14.88,10.7846157 13.5346157,12.13 11.875,12.13 C10.2153843,12.13 8.87,10.7846157 8.87,9.125 C8.87,7.46538433 10.2153843,6.12 11.875,6.12 Z" id="path-1"></path>
</defs>
<g id="Public/ic_public_Privacy" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<mask id="mask-2" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<use id="形状结合" fill="#000000" fill-rule="nonzero" xlink:href="#path-1"></use>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -605,36 +605,20 @@
"value": "权限管理"
},
{
"name": "Temporarily_authorize",
"value": "临时授权“"
"name": "SecurityTitle_location",
"value": "安全访问位置信息"
},
{
"name": "To_access",
"value": "”访问"
"name": "SecurityTitle_mediaFiles",
"value": "安全访问媒体和文件"
},
{
"name": "location_desc",
"value": "位置信息"
"name": "SecurityDescription_location",
"value": "此按钮通过系统安全认证,仅允许“%s”在您点击此按钮时临时访问位置信息,以减少您的隐私数据被应用持续获取。"
},
{
"name": "media_files_desc",
"value": "媒体和文件"
},
{
"name": "location_button_desc",
"value": "此按钮通过系统安全认证,"
},
{
"name": "only_can_desc",
"value": "仅允许应用在您点击此按钮时,临时访问"
},
{
"name": "only_after_desc",
"value": ""
},
{
"name": "prevent_desc",
"value": "以减少您的隐私数据被应用持续获取。"
"name": "SecurityDescription_mediaFiles",
"value": "此按钮通过系统安全认证,仅允许“%s”在您点击此按钮时临时访问媒体和文件以减少您的隐私数据被应用持续获取。"
},
{
"name": "Got_it",