Merge "Update AndroidPixelRef to prevent VM from cleaning up memory prematurely." into lmp-mr1-dev
diff --git a/Android.mk b/Android.mk
index ce72a85..ba45e6f 100644
--- a/Android.mk
+++ b/Android.mk
@@ -69,6 +69,7 @@
core/java/android/app/IActivityPendingResult.aidl \
core/java/android/app/IAlarmManager.aidl \
core/java/android/app/IAppTask.aidl \
+ core/java/android/app/ITaskStackListener.aidl \
core/java/android/app/IBackupAgent.aidl \
core/java/android/app/IInstrumentationWatcher.aidl \
core/java/android/app/INotificationManager.aidl \
@@ -203,8 +204,8 @@
core/java/android/os/IUpdateLock.aidl \
core/java/android/os/IUserManager.aidl \
core/java/android/os/IVibratorService.aidl \
- core/java/android/service/carriermessaging/ICarrierMessagingCallback.aidl \
- core/java/android/service/carriermessaging/ICarrierMessagingService.aidl \
+ core/java/android/service/carrier/ICarrierMessagingCallback.aidl \
+ core/java/android/service/carrier/ICarrierMessagingService.aidl \
core/java/android/service/notification/INotificationListener.aidl \
core/java/android/service/notification/IStatusBarNotificationHolder.aidl \
core/java/android/service/notification/IConditionListener.aidl \
@@ -523,8 +524,7 @@
frameworks/base/core/java/android/view/textservice/SpellCheckerInfo.aidl \
frameworks/base/core/java/android/view/textservice/SentenceSuggestionsInfo.aidl \
frameworks/base/core/java/android/view/textservice/SuggestionsInfo.aidl \
- frameworks/base/core/java/android/service/carriermessaging/MessagePdu.aidl \
- frameworks/base/core/java/android/service/carriermessaging/CarrierMessagingService.aidl \
+ frameworks/base/core/java/android/service/carrier/MessagePdu.aidl \
frameworks/base/core/java/android/service/notification/StatusBarNotification.aidl \
frameworks/base/core/java/android/speech/tts/Voice.aidl \
frameworks/base/core/java/android/app/usage/UsageEvents.aidl \
@@ -731,7 +731,8 @@
# Whitelist of valid groups, used for default TOC grouping. Each sample must
# belong to one (and only one) group. Assign samples to groups by setting
# a sample.group var to one of these groups in the sample's _index.jd.
-sample_groups := -samplegroup Background \
+sample_groups := -samplegroup Admin \
+ -samplegroup Background \
-samplegroup Connectivity \
-samplegroup Content \
-samplegroup Input \
diff --git a/api/current.txt b/api/current.txt
index 53aa4a2..5a17f6f 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -8782,11 +8782,9 @@
field public static final java.lang.String FEATURE_CAMERA = "android.hardware.camera";
field public static final java.lang.String FEATURE_CAMERA_ANY = "android.hardware.camera.any";
field public static final java.lang.String FEATURE_CAMERA_AUTOFOCUS = "android.hardware.camera.autofocus";
- field public static final java.lang.String FEATURE_CAMERA_CAPABILITY_BURST_CAPTURE = "android.hardware.camera.capability.burst_capture";
field public static final java.lang.String FEATURE_CAMERA_CAPABILITY_MANUAL_POST_PROCESSING = "android.hardware.camera.capability.manual_post_processing";
field public static final java.lang.String FEATURE_CAMERA_CAPABILITY_MANUAL_SENSOR = "android.hardware.camera.capability.manual_sensor";
field public static final java.lang.String FEATURE_CAMERA_CAPABILITY_RAW = "android.hardware.camera.capability.raw";
- field public static final java.lang.String FEATURE_CAMERA_CAPABILITY_READ_SENSOR_SETTINGS = "android.hardware.camera.capability.read_sensor_settings";
field public static final java.lang.String FEATURE_CAMERA_EXTERNAL = "android.hardware.camera.external";
field public static final java.lang.String FEATURE_CAMERA_FLASH = "android.hardware.camera.flash";
field public static final java.lang.String FEATURE_CAMERA_FRONT = "android.hardware.camera.front";
@@ -26914,71 +26912,46 @@
}
-package android.service.carriermessaging {
+package android.service.carrier {
public abstract class CarrierMessagingService extends android.app.Service {
ctor public CarrierMessagingService();
method public android.os.IBinder onBind(android.content.Intent);
- method public int onDownloadMms(android.net.Uri, java.lang.String);
- method public boolean onFilterSms(android.service.carriermessaging.MessagePdu, java.lang.String, int);
- method public android.service.carriermessaging.CarrierMessagingService.SendSmsResponse onSendDataSms(byte[], java.lang.String, java.lang.String, int);
- method public android.service.carriermessaging.CarrierMessagingService.SendMmsResult onSendMms(android.net.Uri, java.lang.String);
- method public java.util.List<android.service.carriermessaging.CarrierMessagingService.SendSmsResponse> onSendMultipartTextSms(java.util.List<java.lang.String>, java.lang.String, java.lang.String);
- method public android.service.carriermessaging.CarrierMessagingService.SendSmsResponse onSendTextSms(java.lang.String, java.lang.String, java.lang.String);
+ method public void onDownloadMms(android.net.Uri, int, android.net.Uri, android.service.carrier.CarrierMessagingService.ResultCallback<java.lang.Integer>);
+ method public void onFilterSms(android.service.carrier.MessagePdu, java.lang.String, int, int, android.service.carrier.CarrierMessagingService.ResultCallback<java.lang.Boolean>);
+ method public void onSendDataSms(byte[], int, java.lang.String, int, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult>);
+ method public void onSendMms(android.net.Uri, int, android.net.Uri, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendMmsResult>);
+ method public void onSendMultipartTextSms(java.util.List<java.lang.String>, int, java.lang.String, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendMultipartSmsResult>);
+ method public void onSendTextSms(java.lang.String, int, java.lang.String, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult>);
field public static final int DOWNLOAD_STATUS_ERROR = 2; // 0x2
field public static final int DOWNLOAD_STATUS_OK = 0; // 0x0
field public static final int DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1
field public static final int SEND_STATUS_ERROR = 2; // 0x2
field public static final int SEND_STATUS_OK = 0; // 0x0
field public static final int SEND_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1
- field public static final java.lang.String SERVICE_INTERFACE = "android.service.carriermessaging.CarrierMessagingService";
+ field public static final java.lang.String SERVICE_INTERFACE = "android.service.carrier.CarrierMessagingService";
+ }
+
+ public static abstract interface CarrierMessagingService.ResultCallback {
+ method public abstract void onReceiveResult(T) throws android.os.RemoteException;
}
public static final class CarrierMessagingService.SendMmsResult {
ctor public CarrierMessagingService.SendMmsResult(int, byte[]);
- method public int getResult();
method public byte[] getSendConfPdu();
+ method public int getSendStatus();
}
- public static final class CarrierMessagingService.SendSmsResponse implements android.os.Parcelable {
- ctor public CarrierMessagingService.SendSmsResponse(int, byte[], int);
- method public int describeContents();
- method public byte[] getAckPdu();
- method public int getErrorCode();
+ public static final class CarrierMessagingService.SendMultipartSmsResult {
+ ctor public CarrierMessagingService.SendMultipartSmsResult(int, int[]);
+ method public int[] getMessageRefs();
+ method public int getSendStatus();
+ }
+
+ public static final class CarrierMessagingService.SendSmsResult {
+ ctor public CarrierMessagingService.SendSmsResult(int, int);
method public int getMessageRef();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.service.carriermessaging.CarrierMessagingService.SendSmsResponse> CREATOR;
- }
-
- public abstract interface ICarrierMessagingCallback implements android.os.IInterface {
- method public abstract void onDownloadMmsComplete(int) throws android.os.RemoteException;
- method public abstract void onFilterComplete(boolean) throws android.os.RemoteException;
- method public abstract void onSendMmsComplete(int, byte[]) throws android.os.RemoteException;
- method public abstract void onSendMultipartSmsComplete(int, java.util.List<android.service.carriermessaging.CarrierMessagingService.SendSmsResponse>) throws android.os.RemoteException;
- method public abstract void onSendSmsComplete(int, android.service.carriermessaging.CarrierMessagingService.SendSmsResponse) throws android.os.RemoteException;
- }
-
- public static abstract class ICarrierMessagingCallback.Stub extends android.os.Binder implements android.service.carriermessaging.ICarrierMessagingCallback {
- ctor public ICarrierMessagingCallback.Stub();
- method public android.os.IBinder asBinder();
- method public static android.service.carriermessaging.ICarrierMessagingCallback asInterface(android.os.IBinder);
- method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
- }
-
- public abstract interface ICarrierMessagingService implements android.os.IInterface {
- method public abstract void downloadMms(android.net.Uri, java.lang.String, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- method public abstract void filterSms(android.service.carriermessaging.MessagePdu, java.lang.String, int, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- method public abstract void sendDataSms(byte[], java.lang.String, java.lang.String, int, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- method public abstract void sendMms(android.net.Uri, java.lang.String, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- method public abstract void sendMultipartTextSms(java.util.List<java.lang.String>, java.lang.String, java.lang.String, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- method public abstract void sendTextSms(java.lang.String, java.lang.String, java.lang.String, android.service.carriermessaging.ICarrierMessagingCallback) throws android.os.RemoteException;
- }
-
- public static abstract class ICarrierMessagingService.Stub extends android.os.Binder implements android.service.carriermessaging.ICarrierMessagingService {
- ctor public ICarrierMessagingService.Stub();
- method public android.os.IBinder asBinder();
- method public static android.service.carriermessaging.ICarrierMessagingService asInterface(android.os.IBinder);
- method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
+ method public int getSendStatus();
}
public final class MessagePdu implements android.os.Parcelable {
@@ -26986,7 +26959,7 @@
method public int describeContents();
method public java.util.List<byte[]> getPdus();
method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.service.carriermessaging.MessagePdu> CREATOR;
+ field public static final android.os.Parcelable.Creator<android.service.carrier.MessagePdu> CREATOR;
}
}
diff --git a/cmds/appops/src/com/android/commands/appops/AppOpsCommand.java b/cmds/appops/src/com/android/commands/appops/AppOpsCommand.java
index c414f58..3ec63b4 100644
--- a/cmds/appops/src/com/android/commands/appops/AppOpsCommand.java
+++ b/cmds/appops/src/com/android/commands/appops/AppOpsCommand.java
@@ -24,10 +24,12 @@
import android.os.ServiceManager;
import android.os.UserHandle;
+import android.util.TimeUtils;
import com.android.internal.app.IAppOpsService;
import com.android.internal.os.BaseCommand;
import java.io.PrintStream;
+import java.util.List;
/**
* This class is a command line utility for manipulating AppOps permissions.
@@ -40,15 +42,19 @@
@Override
public void onShowUsage(PrintStream out) {
- out.println("usage: adb shell appops set <PACKAGE> <OP> "
- + "<allow|ignore|deny|default> [--user <USER_ID>]\n"
+ out.println("usage: appops set [--user <USER_ID>] <PACKAGE> <OP> <MODE>\n"
+ + " appops get [--user <USER_ID>] <PACKAGE> [<OP>]\n"
+ + " appops reset [--user <USER_ID>] [<PACKAGE>]\n"
+ " <PACKAGE> an Android package name.\n"
+ " <OP> an AppOps operation.\n"
+ + " <MODE> one of allow, ignore, deny, or default\n"
+ " <USER_ID> the user id under which the package is installed. If --user is not\n"
+ " specified, the current user is assumed.\n");
}
private static final String COMMAND_SET = "set";
+ private static final String COMMAND_GET = "get";
+ private static final String COMMAND_RESET = "reset";
@Override
public void onRun() throws Exception {
@@ -58,8 +64,17 @@
runSet();
break;
+ case COMMAND_GET:
+ runGet();
+ break;
+
+ case COMMAND_RESET:
+ runReset();
+ break;
+
default:
- throw new IllegalArgumentException("Unknown command '" + command + "'.");
+ System.err.println("Error: Unknown command: '" + command + "'.");
+ break;
}
}
@@ -71,6 +86,23 @@
private static final String MODE_IGNORE = "ignore";
private static final String MODE_DEFAULT = "default";
+ private int strOpToOp(String op) {
+ try {
+ return AppOpsManager.strOpToOp(op);
+ } catch (IllegalArgumentException e) {
+ }
+ try {
+ return Integer.parseInt(op);
+ } catch (NumberFormatException e) {
+ }
+ try {
+ return AppOpsManager.strDebugOpToOp(op);
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error: " + e.getMessage());
+ return -1;
+ }
+ }
+
private void runSet() throws Exception {
String packageName = null;
String op = null;
@@ -87,20 +119,27 @@
} else if (mode == null) {
mode = argument;
} else {
- throw new IllegalArgumentException("Unsupported argument: " + argument);
+ System.err.println("Error: Unsupported argument: " + argument);
+ return;
}
}
}
if (packageName == null) {
- throw new IllegalArgumentException("Package name not specified.");
+ System.err.println("Error: Package name not specified.");
+ return;
} else if (op == null) {
- throw new IllegalArgumentException("Operation not specified.");
+ System.err.println("Error: Operation not specified.");
+ return;
} else if (mode == null) {
- throw new IllegalArgumentException("Mode not specified.");
+ System.err.println("Error: Mode not specified.");
+ return;
}
- final int opInt = AppOpsManager.strOpToOp(op);
+ final int opInt = strOpToOp(op);
+ if (opInt < 0) {
+ return;
+ }
final int modeInt;
switch (mode) {
case MODE_ALLOW:
@@ -116,7 +155,8 @@
modeInt = AppOpsManager.MODE_DEFAULT;
break;
default:
- throw new IllegalArgumentException("Mode is invalid.");
+ System.err.println("Error: Mode " + mode + " is not valid,");
+ return;
}
// Parsing complete, let's execute the command.
@@ -130,8 +170,155 @@
ServiceManager.getService(Context.APP_OPS_SERVICE));
final int uid = pm.getPackageUid(packageName, userId);
if (uid < 0) {
- throw new Exception("No UID for " + packageName + " for user " + userId);
+ System.err.println("Error: No UID for " + packageName + " in user " + userId);
+ return;
}
appOpsService.setMode(opInt, uid, packageName, modeInt);
}
+
+ private void runGet() throws Exception {
+ String packageName = null;
+ String op = null;
+ int userId = UserHandle.USER_CURRENT;
+ for (String argument; (argument = nextArg()) != null;) {
+ if (ARGUMENT_USER.equals(argument)) {
+ userId = Integer.parseInt(nextArgRequired());
+ } else {
+ if (packageName == null) {
+ packageName = argument;
+ } else if (op == null) {
+ op = argument;
+ } else {
+ System.err.println("Error: Unsupported argument: " + argument);
+ return;
+ }
+ }
+ }
+
+ if (packageName == null) {
+ System.err.println("Error: Package name not specified.");
+ return;
+ }
+
+ final int opInt = op != null ? strOpToOp(op) : 0;
+
+ // Parsing complete, let's execute the command.
+
+ if (userId == UserHandle.USER_CURRENT) {
+ userId = ActivityManager.getCurrentUser();
+ }
+
+ final IPackageManager pm = ActivityThread.getPackageManager();
+ final IAppOpsService appOpsService = IAppOpsService.Stub.asInterface(
+ ServiceManager.getService(Context.APP_OPS_SERVICE));
+ final int uid = pm.getPackageUid(packageName, userId);
+ if (uid < 0) {
+ System.err.println("Error: No UID for " + packageName + " in user " + userId);
+ return;
+ }
+ List<AppOpsManager.PackageOps> ops = appOpsService.getOpsForPackage(uid, packageName,
+ op != null ? new int[] {opInt} : null);
+ if (ops == null || ops.size() <= 0) {
+ System.out.println("No operations.");
+ return;
+ }
+ final long now = System.currentTimeMillis();
+ for (int i=0; i<ops.size(); i++) {
+ List<AppOpsManager.OpEntry> entries = ops.get(i).getOps();
+ for (int j=0; j<entries.size(); j++) {
+ AppOpsManager.OpEntry ent = entries.get(j);
+ System.out.print(AppOpsManager.opToName(ent.getOp()));
+ System.out.print(": ");
+ switch (ent.getMode()) {
+ case AppOpsManager.MODE_ALLOWED:
+ System.out.print("allow");
+ break;
+ case AppOpsManager.MODE_IGNORED:
+ System.out.print("ignore");
+ break;
+ case AppOpsManager.MODE_ERRORED:
+ System.out.print("deny");
+ break;
+ case AppOpsManager.MODE_DEFAULT:
+ System.out.print("default");
+ break;
+ default:
+ System.out.print("mode=");
+ System.out.print(ent.getMode());
+ break;
+ }
+ if (ent.getTime() != 0) {
+ System.out.print("; time=");
+ StringBuilder sb = new StringBuilder();
+ TimeUtils.formatDuration(now - ent.getTime(), sb);
+ System.out.print(sb);
+ System.out.print(" ago");
+ }
+ if (ent.getRejectTime() != 0) {
+ System.out.print("; rejectTime=");
+ StringBuilder sb = new StringBuilder();
+ TimeUtils.formatDuration(now - ent.getRejectTime(), sb);
+ System.out.print(sb);
+ System.out.print(" ago");
+ }
+ if (ent.getDuration() == -1) {
+ System.out.print(" (running)");
+ } else if (ent.getDuration() != 0) {
+ System.out.print("; duration=");
+ StringBuilder sb = new StringBuilder();
+ TimeUtils.formatDuration(ent.getDuration(), sb);
+ System.out.print(sb);
+ }
+ System.out.println();
+ }
+ }
+ }
+
+ private void runReset() throws Exception {
+ String packageName = null;
+ int userId = UserHandle.USER_CURRENT;
+ for (String argument; (argument = nextArg()) != null;) {
+ if (ARGUMENT_USER.equals(argument)) {
+ String userStr = nextArgRequired();
+ if ("all".equals(userStr)) {
+ userId = UserHandle.USER_ALL;
+ } else if ("current".equals(userStr)) {
+ userId = UserHandle.USER_CURRENT;
+ } else if ("owner".equals(userStr)) {
+ userId = UserHandle.USER_OWNER;
+ } else {
+ userId = Integer.parseInt(nextArgRequired());
+ }
+ } else {
+ if (packageName == null) {
+ packageName = argument;
+ } else {
+ System.err.println("Error: Unsupported argument: " + argument);
+ return;
+ }
+ }
+ }
+
+ // Parsing complete, let's execute the command.
+
+ if (userId == UserHandle.USER_CURRENT) {
+ userId = ActivityManager.getCurrentUser();
+ }
+
+ final IAppOpsService appOpsService = IAppOpsService.Stub.asInterface(
+ ServiceManager.getService(Context.APP_OPS_SERVICE));
+ appOpsService.resetAllModes(userId, packageName);
+ System.out.print("Reset all modes for: ");
+ if (userId == UserHandle.USER_ALL) {
+ System.out.print("all users");
+ } else {
+ System.out.print("user "); System.out.print(userId);
+ }
+ System.out.print(", ");
+ if (packageName == null) {
+ System.out.println("all packages");
+ } else {
+ System.out.print("package "); System.out.println(packageName);
+ }
+ }
}
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java
index 6ec48e5..06a26ec 100644
--- a/core/java/android/app/ActivityManagerNative.java
+++ b/core/java/android/app/ActivityManagerNative.java
@@ -774,6 +774,14 @@
return true;
}
+ case REGISTER_TASK_STACK_LISTENER_TRANSACTION: {
+ data.enforceInterface(IActivityManager.descriptor);
+ IBinder token = data.readStrongBinder();
+ registerTaskStackListener(ITaskStackListener.Stub.asInterface(token));
+ reply.writeNoException();
+ return true;
+ }
+
case GET_TASK_FOR_ACTIVITY_TRANSACTION: {
data.enforceInterface(IActivityManager.descriptor);
IBinder token = data.readStrongBinder();
@@ -3266,6 +3274,18 @@
data.recycle();
reply.recycle();
}
+ @Override
+ public void registerTaskStackListener(ITaskStackListener listener) throws RemoteException
+ {
+ Parcel data = Parcel.obtain();
+ Parcel reply = Parcel.obtain();
+ data.writeInterfaceToken(IActivityManager.descriptor);
+ data.writeStrongBinder(listener.asBinder());
+ mRemote.transact(REGISTER_TASK_STACK_LISTENER_TRANSACTION, data, reply, IBinder.FLAG_ONEWAY);
+ reply.readException();
+ data.recycle();
+ reply.recycle();
+ }
public int getTaskForActivity(IBinder token, boolean onlyRoot) throws RemoteException
{
Parcel data = Parcel.obtain();
diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java
index ba9c9d6..95870cf9 100644
--- a/core/java/android/app/AppOpsManager.java
+++ b/core/java/android/app/AppOpsManager.java
@@ -26,6 +26,7 @@
import android.os.Parcelable;
import android.os.Process;
import android.os.RemoteException;
+import android.os.UserHandle;
import android.os.UserManager;
import android.util.ArrayMap;
@@ -734,6 +735,18 @@
}
/**
+ * @hide
+ */
+ public static int strDebugOpToOp(String op) {
+ for (int i=0; i<sOpNames.length; i++) {
+ if (sOpNames[i].equals(op)) {
+ return i;
+ }
+ }
+ throw new IllegalArgumentException("Unknown operation string: " + op);
+ }
+
+ /**
* Retrieve the permission associated with an operation, or null if there is not one.
* @hide
*/
@@ -996,7 +1009,7 @@
/** @hide */
public void resetAllModes() {
try {
- mService.resetAllModes();
+ mService.resetAllModes(UserHandle.myUserId(), null);
} catch (RemoteException e) {
}
}
diff --git a/core/java/android/app/IActivityManager.java b/core/java/android/app/IActivityManager.java
index 5362303..1ccbd27 100644
--- a/core/java/android/app/IActivityManager.java
+++ b/core/java/android/app/IActivityManager.java
@@ -139,6 +139,7 @@
public StackInfo getStackInfo(int stackId) throws RemoteException;
public boolean isInHomeStack(int taskId) throws RemoteException;
public void setFocusedStack(int stackId) throws RemoteException;
+ public void registerTaskStackListener(ITaskStackListener listener) throws RemoteException;
public int getTaskForActivity(IBinder token, boolean onlyRoot) throws RemoteException;
public ContentProviderHolder getContentProvider(IApplicationThread caller,
String name, int userId, boolean stable) throws RemoteException;
@@ -788,4 +789,5 @@
int LAUNCH_ASSIST_INTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+239;
int START_IN_PLACE_ANIMATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+240;
int CHECK_PERMISSION_WITH_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+241;
+ int REGISTER_TASK_STACK_LISTENER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+242;
}
diff --git a/core/java/android/service/carriermessaging/MessagePdu.aidl b/core/java/android/app/ITaskStackListener.aidl
similarity index 84%
copy from core/java/android/service/carriermessaging/MessagePdu.aidl
copy to core/java/android/app/ITaskStackListener.aidl
index 82b3fb3..4b0935c 100644
--- a/core/java/android/service/carriermessaging/MessagePdu.aidl
+++ b/core/java/android/app/ITaskStackListener.aidl
@@ -14,6 +14,9 @@
* limitations under the License.
*/
-package android.service.carriermessaging;
+package android.app;
-parcelable MessagePdu;
\ No newline at end of file
+/** @hide */
+oneway interface ITaskStackListener {
+ void onTaskStackChanged();
+}
diff --git a/core/java/android/app/backup/WallpaperBackupHelper.java b/core/java/android/app/backup/WallpaperBackupHelper.java
index a55cc2b..7a80936 100644
--- a/core/java/android/app/backup/WallpaperBackupHelper.java
+++ b/core/java/android/app/backup/WallpaperBackupHelper.java
@@ -102,9 +102,8 @@
final Display d = wm.getDefaultDisplay();
final Point size = new Point();
d.getSize(size);
- mDesiredMinWidth = size.x;
+ mDesiredMinWidth = Math.min(size.x, size.y);
mDesiredMinHeight = (double) wpm.getDesiredMinimumHeight();
-
if (mDesiredMinHeight <= 0) {
mDesiredMinHeight = size.y;
}
@@ -149,9 +148,13 @@
// We accept any wallpaper that is at least as wide as our preference
// (i.e. wide enough to fill the screen), and is within a comfortable
// factor of the target height, to avoid significant clipping/scaling/
- // letterboxing.
+ // letterboxing. At this point we know that mDesiredMinWidth is the
+ // smallest dimension, regardless of current orientation, so we can
+ // safely require that the candidate's width and height both exceed
+ // that hard minimum.
final double heightRatio = mDesiredMinHeight / options.outHeight;
if (options.outWidth < mDesiredMinWidth
+ || options.outHeight < mDesiredMinWidth
|| heightRatio >= MAX_HEIGHT_RATIO
|| heightRatio <= MIN_HEIGHT_RATIO) {
// Not wide enough for the screen, or too short/tall to be a good fit
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 5c705e6..e9f7c50 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -1078,26 +1078,6 @@
"android.hardware.camera.capability.raw";
/**
- * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: At least one
- * of the cameras on the device supports the
- * {@link android.hardware.camera2.CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE BURST_CAPTURE}
- * capability level.
- */
- @SdkConstant(SdkConstantType.FEATURE)
- public static final String FEATURE_CAMERA_CAPABILITY_BURST_CAPTURE =
- "android.hardware.camera.capability.burst_capture";
-
- /**
- * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: At least one
- * of the cameras on the device supports the
- * {@link android.hardware.camera2.CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS READ_SENSOR_SETTINGS}
- * capability level.
- */
- @SdkConstant(SdkConstantType.FEATURE)
- public static final String FEATURE_CAMERA_CAPABILITY_READ_SENSOR_SETTINGS =
- "android.hardware.camera.capability.read_sensor_settings";
-
- /**
* Feature for {@link #getSystemAvailableFeatures} and
* {@link #hasSystemFeature}: The device is capable of communicating with
* consumer IR devices.
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index 82da7c5..d7d9e8b 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -3528,6 +3528,10 @@
outError[0] = "<provider> does not include authorities attribute";
return null;
}
+ if (cpname.length() <= 0) {
+ outError[0] = "<provider> has empty authorities attribute";
+ return null;
+ }
p.info.authority = cpname.intern();
if (!parseProviderTags(res, parser, attrs, p, outError)) {
diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java
index 98096dc..f487f01 100644
--- a/core/java/android/hardware/camera2/CameraCharacteristics.java
+++ b/core/java/android/hardware/camera2/CameraCharacteristics.java
@@ -337,8 +337,7 @@
* supported by a given camera device. This field lists the
* valid anti-banding modes that the application may request
* for this camera device with the
- * {@link CaptureRequest#CONTROL_AE_ANTIBANDING_MODE android.control.aeAntibandingMode} control. This list
- * always includes AUTO.</p>
+ * {@link CaptureRequest#CONTROL_AE_ANTIBANDING_MODE android.control.aeAntibandingMode} control.</p>
* <p><b>Range of valid values:</b><br>
* Any value listed in {@link CaptureRequest#CONTROL_AE_ANTIBANDING_MODE android.control.aeAntibandingMode}</p>
* <p>This key is available on all devices.</p>
diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java
index 895ae04..999de8a 100644
--- a/core/java/android/hardware/camera2/CameraMetadata.java
+++ b/core/java/android/hardware/camera2/CameraMetadata.java
@@ -493,9 +493,11 @@
* {@link CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP android.scaler.streamConfigurationMap}, the minimum frame
* duration for that format and size is <= 1/20 s, and
* the {@link CameraCharacteristics#CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES android.control.aeAvailableTargetFpsRanges} entry
- * lists at least one FPS range where the minimum FPS
- * is >= 1 / minimumFrameDuration for the maximum-size
+ * lists at least one FPS range where the minimum FPS is</p>
+ * <blockquote>
+ * <p>= 1 / minimumFrameDuration for the maximum-size
* YUV_420_888 format.</p>
+ * </blockquote>
* <p>In addition, the {@link CameraCharacteristics#SYNC_MAX_LATENCY android.sync.maxLatency} field is
* guaranted to have a value between 0 and 4, inclusive.</p>
*
@@ -847,7 +849,8 @@
/**
* <p>The camera device will automatically adapt its
* antibanding routine to the current illumination
- * conditions. This is the default.</p>
+ * condition. This is the default mode if AUTO is
+ * available on given camera device.</p>
* @see CaptureRequest#CONTROL_AE_ANTIBANDING_MODE
*/
public static final int CONTROL_AE_ANTIBANDING_MODE_AUTO = 3;
diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java
index 48af67c..e89a402 100644
--- a/core/java/android/hardware/camera2/CaptureRequest.java
+++ b/core/java/android/hardware/camera2/CaptureRequest.java
@@ -642,8 +642,10 @@
* options for the antibanding mode. The
* {@link CameraCharacteristics#CONTROL_AE_AVAILABLE_ANTIBANDING_MODES android.control.aeAvailableAntibandingModes} key contains
* the available modes for a given camera device.</p>
- * <p>The default mode is AUTO, which is supported by all
- * camera devices.</p>
+ * <p>AUTO mode is the default if it is available on given
+ * camera device. When AUTO mode is not available, the
+ * default will be either 50HZ or 60HZ, and both 50HZ
+ * and 60HZ will be available.</p>
* <p>If manual exposure control is enabled (by setting
* {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} or {@link CaptureRequest#CONTROL_MODE android.control.mode} to OFF),
* then this setting has no effect, and the application must
diff --git a/core/java/android/hardware/camera2/CaptureResult.java b/core/java/android/hardware/camera2/CaptureResult.java
index c5c843d..2c3b85f 100644
--- a/core/java/android/hardware/camera2/CaptureResult.java
+++ b/core/java/android/hardware/camera2/CaptureResult.java
@@ -493,8 +493,10 @@
* options for the antibanding mode. The
* {@link CameraCharacteristics#CONTROL_AE_AVAILABLE_ANTIBANDING_MODES android.control.aeAvailableAntibandingModes} key contains
* the available modes for a given camera device.</p>
- * <p>The default mode is AUTO, which is supported by all
- * camera devices.</p>
+ * <p>AUTO mode is the default if it is available on given
+ * camera device. When AUTO mode is not available, the
+ * default will be either 50HZ or 60HZ, and both 50HZ
+ * and 60HZ will be available.</p>
* <p>If manual exposure control is enabled (by setting
* {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} or {@link CaptureRequest#CONTROL_MODE android.control.mode} to OFF),
* then this setting has no effect, and the application must
diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java
index 4215f20..4fe418a 100644
--- a/core/java/android/net/ConnectivityManager.java
+++ b/core/java/android/net/ConnectivityManager.java
@@ -100,7 +100,7 @@
/**
* Identical to {@link #CONNECTIVITY_ACTION} broadcast, but sent without any
- * applicable {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY}.
+ * historic {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY}.
*
* @hide
*/
@@ -428,18 +428,6 @@
public static final int DEFAULT_NETWORK_PREFERENCE = TYPE_WIFI;
/**
- * Default value for {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY} in
- * milliseconds. This was introduced because IPv6 routes seem to take a
- * moment to settle - trying network activity before the routes are adjusted
- * can lead to packets using the wrong interface or having the wrong IP address.
- * This delay is a bit crude, but in the future hopefully we will have kernel
- * notifications letting us know when it's safe to use the new network.
- *
- * @hide
- */
- public static final int CONNECTIVITY_CHANGE_DELAY_DEFAULT = 3000;
-
- /**
* @hide
*/
public final static int REQUEST_ID_UNSET = 0;
diff --git a/core/java/android/net/VpnService.java b/core/java/android/net/VpnService.java
index 78b9c18..f6b6978 100644
--- a/core/java/android/net/VpnService.java
+++ b/core/java/android/net/VpnService.java
@@ -291,16 +291,16 @@
/**
* Sets the underlying networks used by the VPN for its upstream connections.
*
- * Used by the system to know the actual networks that carry traffic for apps affected by this
- * VPN in order to present this information to the user (e.g., via status bar icons).
+ * <p>Used by the system to know the actual networks that carry traffic for apps affected by
+ * this VPN in order to present this information to the user (e.g., via status bar icons).
*
- * This method only needs to be called if the VPN has explicitly bound its underlying
+ * <p>This method only needs to be called if the VPN has explicitly bound its underlying
* communications channels — such as the socket(s) passed to {@link #protect(int)} —
* to a {@code Network} using APIs such as {@link Network#bindSocket(Socket)} or
* {@link Network#bindSocket(DatagramSocket)}. The VPN should call this method every time
* the set of {@code Network}s it is using changes.
*
- * {@code networks} is one of the following:
+ * <p>{@code networks} is one of the following:
* <ul>
* <li><strong>a non-empty array</strong>: an array of one or more {@link Network}s, in
* decreasing preference order. For example, if this VPN uses both wifi and mobile (cellular)
@@ -310,11 +310,11 @@
* underlying network connection, and thus, app traffic will not be sent or received.</li>
* <li><strong>null</strong>: (default) signifies that the VPN uses whatever is the system's
* default network. I.e., it doesn't use the {@code bindSocket} or {@code bindDatagramSocket}
- * APIs mentioned above to send traffic over specific channels.
+ * APIs mentioned above to send traffic over specific channels.</li>
* </ul>
*
- * This call will succeed only if the VPN is currently established. For setting this value when
- * the VPN has not yet been established, see {@link Builder#setUnderlyingNetworks}.
+ * <p>This call will succeed only if the VPN is currently established. For setting this value
+ * when the VPN has not yet been established, see {@link Builder#setUnderlyingNetworks}.
*
* @param networks An array of networks the VPN uses to tunnel traffic to/from its servers.
*
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 5e5fbc7..3bc74ae 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -6118,7 +6118,7 @@
/**
* The number of milliseconds to delay before sending out
- * {@link ConnectivityManager#CONNECTIVITY_ACTION} broadcasts.
+ * {@link ConnectivityManager#CONNECTIVITY_ACTION} broadcasts. Ignored.
*
* @hide
*/
@@ -6608,6 +6608,14 @@
public static final String ENHANCED_4G_MODE_ENABLED = "volte_vt_enabled";
/**
+ * Global override to disable VoLTE (independent of user setting)
+ * <p>
+ * Type: int (1 for disable VoLTE, 0 to use user configuration)
+ * @hide
+ */
+ public static final String VOLTE_FEATURE_DISABLED = "volte_feature_disabled";
+
+ /**
* Whether user can enable/disable LTE as a preferred network. A carrier might control
* this via gservices, OMA-DM, carrier app, etc.
* <p>
diff --git a/core/java/android/service/carrier/CarrierMessagingService.java b/core/java/android/service/carrier/CarrierMessagingService.java
new file mode 100644
index 0000000..3d6ebca
--- /dev/null
+++ b/core/java/android/service/carrier/CarrierMessagingService.java
@@ -0,0 +1,417 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.service.carrier;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.annotation.SdkConstant;
+import android.app.Service;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.IBinder;
+import android.os.Parcel;
+import android.os.Parcelable;
+import android.os.RemoteException;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * A service that receives calls from the system when new SMS and MMS are
+ * sent or received.
+ * <p>To extend this class, you must declare the service in your manifest file with
+ * the {@link android.Manifest.permission#BIND_CARRIER_MESSAGING_SERVICE} permission
+ * and include an intent filter with the {@link #SERVICE_INTERFACE} action. For example:</p>
+ * <pre>
+ * <service android:name=".MyMessagingService"
+ * android:label="@string/service_name"
+ * android:permission="android.permission.BIND_CARRIER_MESSAGING_SERVICE">
+ * <intent-filter>
+ * <action android:name="android.service.carrier.CarrierMessagingService" />
+ * </intent-filter>
+ * </service></pre>
+ */
+public abstract class CarrierMessagingService extends Service {
+ /**
+ * The {@link android.content.Intent} that must be declared as handled by the service.
+ */
+ @SdkConstant(SdkConstant.SdkConstantType.SERVICE_ACTION)
+ public static final String SERVICE_INTERFACE
+ = "android.service.carrier.CarrierMessagingService";
+
+ /**
+ * Indicates that an SMS or MMS message was successfully sent.
+ */
+ public static final int SEND_STATUS_OK = 0;
+
+ /**
+ * SMS/MMS sending failed. We should retry via the carrier network.
+ */
+ public static final int SEND_STATUS_RETRY_ON_CARRIER_NETWORK = 1;
+
+ /**
+ * SMS/MMS sending failed. We should not retry via the carrier network.
+ */
+ public static final int SEND_STATUS_ERROR = 2;
+
+ /**
+ * Successfully downloaded an MMS message.
+ */
+ public static final int DOWNLOAD_STATUS_OK = 0;
+
+ /**
+ * MMS downloading failed. We should retry via the carrier network.
+ */
+ public static final int DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK = 1;
+
+ /**
+ * MMS downloading failed. We should not retry via the carrier network.
+ */
+ public static final int DOWNLOAD_STATUS_ERROR = 2;
+
+ private final ICarrierMessagingWrapper mWrapper = new ICarrierMessagingWrapper();
+
+ /**
+ * Override this method to filter inbound SMS messages.
+ *
+ * @param pdu the PDUs of the message
+ * @param format the format of the PDUs, typically "3gpp" or "3gpp2"
+ * @param destPort the destination port of a binary SMS, this will be -1 for text SMS
+ * @param subId SMS subscription ID of the SIM
+ * @param callback result callback. Call with {@code true} to keep an inbound SMS message and
+ * deliver to SMS apps, and {@code false} to drop the message.
+ */
+ public void onFilterSms(@NonNull MessagePdu pdu, @NonNull String format, int destPort,
+ int subId, @NonNull ResultCallback<Boolean> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(true);
+ } catch (RemoteException ex) {
+ }
+ }
+
+ /**
+ * Override this method to intercept text SMSs sent from the device.
+ *
+ * @param text the text to send
+ * @param subId SMS subscription ID of the SIM
+ * @param destAddress phone number of the recipient of the message
+ * @param callback result callback. Call with a {@link SendSmsResult}.
+ */
+ public void onSendTextSms(
+ @NonNull String text, int subId, @NonNull String destAddress,
+ @NonNull ResultCallback<SendSmsResult> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(new SendSmsResult(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, 0));
+ } catch (RemoteException ex) {
+ }
+ }
+
+ /**
+ * Override this method to intercept binary SMSs sent from the device.
+ *
+ * @param data the binary content
+ * @param subId SMS subscription ID of the SIM
+ * @param destAddress phone number of the recipient of the message
+ * @param destPort the destination port
+ * @param callback result callback. Call with a {@link SendSmsResult}.
+ */
+ public void onSendDataSms(@NonNull byte[] data, int subId,
+ @NonNull String destAddress, int destPort,
+ @NonNull ResultCallback<SendSmsResult> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(new SendSmsResult(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, 0));
+ } catch (RemoteException ex) {
+ }
+ }
+
+ /**
+ * Override this method to intercept long SMSs sent from the device.
+ *
+ * @param parts a {@link List} of the message parts
+ * @param subId SMS subscription ID of the SIM
+ * @param destAddress phone number of the recipient of the message
+ * @param callback result callback. Call with a {@link SendMultipartSmsResult}.
+ */
+ public void onSendMultipartTextSms(@NonNull List<String> parts,
+ int subId, @NonNull String destAddress,
+ @NonNull ResultCallback<SendMultipartSmsResult> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(
+ new SendMultipartSmsResult(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null));
+ } catch (RemoteException ex) {
+ }
+ }
+
+ /**
+ * Override this method to intercept MMSs sent from the device.
+ *
+ * @param pduUri the content provider URI of the PDU to send
+ * @param subId SMS subscription ID of the SIM
+ * @param location the optional URI to send this MMS PDU. If this is {code null},
+ * the PDU should be sent to the default MMSC URL.
+ * @param callback result callback. Call with a {@link SendMmsResult}.
+ */
+ public void onSendMms(@NonNull Uri pduUri, int subId,
+ @Nullable Uri location, @NonNull ResultCallback<SendMmsResult> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(new SendMmsResult(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null));
+ } catch (RemoteException ex) {
+ }
+ }
+
+ /**
+ * Override this method to download MMSs received.
+ *
+ * @param contentUri the content provider URI of the PDU to be downloaded.
+ * @param subId SMS subscription ID of the SIM
+ * @param location the URI of the message to be downloaded.
+ * @param callback result callback. Call with a status code which is one of
+ * {@link #DOWNLOAD_STATUS_OK},
+ * {@link #DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK}, or {@link #DOWNLOAD_STATUS_ERROR}.
+ */
+ public void onDownloadMms(@NonNull Uri contentUri, int subId, @NonNull Uri location,
+ @NonNull ResultCallback<Integer> callback) {
+ // optional
+ try {
+ callback.onReceiveResult(DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK);
+ } catch (RemoteException ex) {
+ }
+ }
+
+ @Override
+ public @Nullable IBinder onBind(@NonNull Intent intent) {
+ if (!SERVICE_INTERFACE.equals(intent.getAction())) {
+ return null;
+ }
+ return mWrapper;
+ }
+
+ /**
+ * The result of sending an MMS.
+ */
+ public static final class SendMmsResult {
+ private int mSendStatus;
+ private byte[] mSendConfPdu;
+
+ /**
+ * Constructs a SendMmsResult with the MMS send result, and the SendConf PDU.
+ *
+ * @param sendStatus send status, one of {@link #SEND_STATUS_OK},
+ * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and
+ * {@link #SEND_STATUS_ERROR}
+ * @param sendConfPdu a possibly {code null} SendConf PDU, which confirms that the message
+ * was sent. sendConfPdu is ignored if the {@code result} is not
+ * {@link #SEND_STATUS_OK}.
+ */
+ public SendMmsResult(int sendStatus, @Nullable byte[] sendConfPdu) {
+ mSendStatus = sendStatus;
+ mSendConfPdu = sendConfPdu;
+ }
+
+ /**
+ * Returns the send status of the just-sent MMS.
+ *
+ * @return the send status which is one of {@link #SEND_STATUS_OK},
+ * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and {@link #SEND_STATUS_ERROR}
+ */
+ public int getSendStatus() {
+ return mSendStatus;
+ }
+
+ /**
+ * Returns the SendConf PDU, which confirms that the message was sent.
+ *
+ * @return the SendConf PDU
+ */
+ public @Nullable byte[] getSendConfPdu() {
+ return mSendConfPdu;
+ }
+ }
+
+ /**
+ * The result of sending an SMS.
+ */
+ public static final class SendSmsResult {
+ private final int mSendStatus;
+ private final int mMessageRef;
+
+ /**
+ * Constructs a SendSmsResult with the send status and message reference for the
+ * just-sent SMS.
+ *
+ * @param sendStatus send status, one of {@link #SEND_STATUS_OK},
+ * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and {@link #SEND_STATUS_ERROR}.
+ * @param messageRef message reference of the just-sent SMS. This field is applicable only
+ * if send status is {@link #SEND_STATUS_OK}.
+ */
+ public SendSmsResult(int sendStatus, int messageRef) {
+ mSendStatus = sendStatus;
+ mMessageRef = messageRef;
+ }
+
+ /**
+ * Returns the message reference of the just-sent SMS.
+ *
+ * @return the message reference
+ */
+ public int getMessageRef() {
+ return mMessageRef;
+ }
+
+ /**
+ * Returns the send status of the just-sent SMS.
+ *
+ * @return the send status
+ */
+ public int getSendStatus() {
+ return mSendStatus;
+ }
+ }
+
+ /**
+ * The result of sending a multipart SMS.
+ */
+ public static final class SendMultipartSmsResult {
+ private final int mSendStatus;
+ private final int[] mMessageRefs;
+
+ /**
+ * Constructs a SendMultipartSmsResult with the send status and message references for the
+ * just-sent multipart SMS.
+ *
+ * @param sendStatus send status, one of {@link #SEND_STATUS_OK},
+ * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and {@link #SEND_STATUS_ERROR}.
+ * @param messageRefs an array of message references, one for each part of the
+ * multipart SMS. This field is applicable only if send status is
+ * {@link #SEND_STATUS_OK}.
+ */
+ public SendMultipartSmsResult(int sendStatus, @Nullable int[] messageRefs) {
+ mSendStatus = sendStatus;
+ mMessageRefs = messageRefs;
+ }
+
+ /**
+ * Returns the message references of the just-sent multipart SMS.
+ *
+ * @return the message references, one for each part of the multipart SMS
+ */
+ public @Nullable int[] getMessageRefs() {
+ return mMessageRefs;
+ }
+
+ /**
+ * Returns the send status of the just-sent SMS.
+ *
+ * @return the send status
+ */
+ public int getSendStatus() {
+ return mSendStatus;
+ }
+ }
+
+ /**
+ * A callback interface used to provide results asynchronously.
+ */
+ public interface ResultCallback<T> {
+ /**
+ * Invoked when the result is available.
+ *
+ * @param result the result
+ */
+ public void onReceiveResult(@NonNull T result) throws RemoteException;
+ };
+
+ /**
+ * A wrapper around ICarrierMessagingService to enable the carrier messaging app to implement
+ * methods it cares about in the {@link ICarrierMessagingService} interface.
+ */
+ private class ICarrierMessagingWrapper extends ICarrierMessagingService.Stub {
+ @Override
+ public void filterSms(MessagePdu pdu, String format, int destPort,
+ int subId, final ICarrierMessagingCallback callback) {
+ onFilterSms(pdu, format, destPort, subId, new ResultCallback<Boolean>() {
+ @Override
+ public void onReceiveResult(final Boolean result) throws RemoteException {
+ callback.onFilterComplete(result);
+ }
+ });
+ }
+
+ @Override
+ public void sendTextSms(String text, int subId, String destAddress,
+ final ICarrierMessagingCallback callback) {
+ onSendTextSms(text, subId, destAddress, new ResultCallback<SendSmsResult>() {
+ @Override
+ public void onReceiveResult(final SendSmsResult result) throws RemoteException {
+ callback.onSendSmsComplete(result.getSendStatus(), result.getMessageRef());
+ }
+ });
+ }
+
+ @Override
+ public void sendDataSms(byte[] data, int subId, String destAddress, int destPort,
+ final ICarrierMessagingCallback callback) {
+ onSendDataSms(data, subId, destAddress, destPort, new ResultCallback<SendSmsResult>() {
+ @Override
+ public void onReceiveResult(final SendSmsResult result) throws RemoteException {
+ callback.onSendSmsComplete(result.getSendStatus(), result.getMessageRef());
+ }
+ });
+ }
+
+ @Override
+ public void sendMultipartTextSms(List<String> parts, int subId, String destAddress,
+ final ICarrierMessagingCallback callback) {
+ onSendMultipartTextSms(parts, subId, destAddress,
+ new ResultCallback<SendMultipartSmsResult>() {
+ @Override
+ public void onReceiveResult(final SendMultipartSmsResult result)
+ throws RemoteException {
+ callback.onSendMultipartSmsComplete(
+ result.getSendStatus(), result.getMessageRefs());
+ }
+ });
+ }
+
+ @Override
+ public void sendMms(Uri pduUri, int subId, Uri location,
+ final ICarrierMessagingCallback callback) {
+ onSendMms(pduUri, subId, location, new ResultCallback<SendMmsResult>() {
+ @Override
+ public void onReceiveResult(final SendMmsResult result) throws RemoteException {
+ callback.onSendMmsComplete(result.getSendStatus(), result.getSendConfPdu());
+ }
+ });
+ }
+
+ @Override
+ public void downloadMms(Uri pduUri, int subId, Uri location,
+ final ICarrierMessagingCallback callback) {
+ onDownloadMms(pduUri, subId, location, new ResultCallback<Integer>() {
+ @Override
+ public void onReceiveResult(Integer result) throws RemoteException {
+ callback.onDownloadMmsComplete(result);
+ }
+ });
+ }
+ }
+}
diff --git a/core/java/android/service/carriermessaging/ICarrierMessagingCallback.aidl b/core/java/android/service/carrier/ICarrierMessagingCallback.aidl
similarity index 73%
rename from core/java/android/service/carriermessaging/ICarrierMessagingCallback.aidl
rename to core/java/android/service/carrier/ICarrierMessagingCallback.aidl
index da56ad1..6118a20 100644
--- a/core/java/android/service/carriermessaging/ICarrierMessagingCallback.aidl
+++ b/core/java/android/service/carrier/ICarrierMessagingCallback.aidl
@@ -14,20 +14,17 @@
* limitations under the License.
*/
-package android.service.carriermessaging;
-
-import android.service.carriermessaging.CarrierMessagingService;
+package android.service.carrier;
/**
* Callback interface definition for the Carrier Messaging Service client to get informed of the
* result of various API invocations.
+ * @hide
*/
oneway interface ICarrierMessagingCallback {
void onFilterComplete(boolean keepMessage);
- void onSendSmsComplete(
- int result, in CarrierMessagingService.SendSmsResponse sendSmsResponse);
- void onSendMultipartSmsComplete(
- int result, in List<CarrierMessagingService.SendSmsResponse> sendSmsResponses);
+ void onSendSmsComplete(int result, int messageRef);
+ void onSendMultipartSmsComplete(int result, in int[] messageRefs);
void onSendMmsComplete(int result, in byte[] sendConfPdu);
void onDownloadMmsComplete(int result);
}
diff --git a/core/java/android/service/carriermessaging/ICarrierMessagingService.aidl b/core/java/android/service/carrier/ICarrierMessagingService.aidl
similarity index 72%
rename from core/java/android/service/carriermessaging/ICarrierMessagingService.aidl
rename to core/java/android/service/carrier/ICarrierMessagingService.aidl
index 6e9e3fa..40a9047 100644
--- a/core/java/android/service/carriermessaging/ICarrierMessagingService.aidl
+++ b/core/java/android/service/carrier/ICarrierMessagingService.aidl
@@ -14,15 +14,16 @@
* limitations under the License.
*/
-package android.service.carriermessaging;
+package android.service.carrier;
import android.net.Uri;
-import android.service.carriermessaging.ICarrierMessagingCallback;
-import android.service.carriermessaging.MessagePdu;
+import android.service.carrier.ICarrierMessagingCallback;
+import android.service.carrier.MessagePdu;
/**
* <p class="note"><strong>Note:</strong>
* This service can only be implemented by a carrier privileged app.
+ * @hide
*/
oneway interface ICarrierMessagingService {
/**
@@ -32,10 +33,12 @@
* @param pdu the PDUs of the message
* @param format the format of the PDUs, typically "3gpp" or "3gpp2"
* @param destPort the destination port of a data SMS. It will be -1 for text SMS
+ * @param subId SMS subscription ID of the SIM
* @param callback the callback to notify upon completion
*/
void filterSms(
- in MessagePdu pdu, String format, int destPort, in ICarrierMessagingCallback callback);
+ in MessagePdu pdu, String format, int destPort, int subId,
+ in ICarrierMessagingCallback callback);
/**
* Request sending a new text SMS from the device.
@@ -43,11 +46,11 @@
* status.
*
* @param text the text to send
- * @param format the format of the response PDU, typically "3gpp" or "3gpp2"
+ * @param subId SMS subscription ID of the SIM
* @param destAddress phone number of the recipient of the message
* @param callback the callback to notify upon completion
*/
- void sendTextSms(String text, String format, String destAddress,
+ void sendTextSms(String text, int subId, String destAddress,
in ICarrierMessagingCallback callback);
/**
@@ -56,12 +59,12 @@
* status.
*
* @param data the data to send
- * @param format the format of the response PDU, typically "3gpp" or "3gpp2"
+ * @param subId SMS subscription ID of the SIM
* @param destAddress phone number of the recipient of the message
* @param destPort port number of the recipient of the message
* @param callback the callback to notify upon completion
*/
- void sendDataSms(in byte[] data, String format, String destAddress, int destPort,
+ void sendDataSms(in byte[] data, int subId, String destAddress, int destPort,
in ICarrierMessagingCallback callback);
/**
@@ -70,11 +73,11 @@
* with the send status.
*
* @param parts the parts of the multi-part text SMS to send
- * @param format the format of the response PDU, typically "3gpp" or "3gpp2"
+ * @param subId SMS subscription ID of the SIM
* @param destAddress phone number of the recipient of the message
* @param callback the callback to notify upon completion
*/
- void sendMultipartTextSms(in List<String> parts, String format, String destAddress,
+ void sendMultipartTextSms(in List<String> parts, int subId, String destAddress,
in ICarrierMessagingCallback callback);
/**
@@ -83,11 +86,13 @@
* status.
*
* @param pduUri the content provider URI of the PDU to send
- * @param locationUrl the optional url to send this MMS PDU.
- * If this is not specified, PDU should be sent to the default MMSC url.
+ * @param subId SMS subscription ID of the SIM
+ * @param location the optional URI to send this MMS PDU. If this is {code null},
+ * the PDU should be sent to the default MMSC URL.
* @param callback the callback to notify upon completion
*/
- void sendMms(in Uri pduUri, String locationUrl, in ICarrierMessagingCallback callback);
+ void sendMms(in Uri pduUri, int subId, in Uri location,
+ in ICarrierMessagingCallback callback);
/**
* Request downloading a new MMS.
@@ -95,9 +100,11 @@
* download status.
*
* @param pduUri the content provider URI of the PDU to be downloaded.
- * @param locationUrl the URL of the message to be downloaded.
+ * @param subId SMS subscription ID of the SIM
+ * @param location the URI of the message to be downloaded.
* @param callback the callback to notify upon completion
*/
- void downloadMms(in Uri pduUri, String locationUrl, in ICarrierMessagingCallback callback);
+ void downloadMms(in Uri pduUri, int subId, in Uri location,
+ in ICarrierMessagingCallback callback);
}
diff --git a/core/java/android/service/carriermessaging/MessagePdu.aidl b/core/java/android/service/carrier/MessagePdu.aidl
similarity index 93%
rename from core/java/android/service/carriermessaging/MessagePdu.aidl
rename to core/java/android/service/carrier/MessagePdu.aidl
index 82b3fb3..f0528a5 100644
--- a/core/java/android/service/carriermessaging/MessagePdu.aidl
+++ b/core/java/android/service/carrier/MessagePdu.aidl
@@ -14,6 +14,6 @@
* limitations under the License.
*/
-package android.service.carriermessaging;
+package android.service.carrier;
-parcelable MessagePdu;
\ No newline at end of file
+parcelable MessagePdu;
diff --git a/core/java/android/service/carriermessaging/MessagePdu.java b/core/java/android/service/carrier/MessagePdu.java
similarity index 98%
rename from core/java/android/service/carriermessaging/MessagePdu.java
rename to core/java/android/service/carrier/MessagePdu.java
index 3c78568..ca18e53 100644
--- a/core/java/android/service/carriermessaging/MessagePdu.java
+++ b/core/java/android/service/carrier/MessagePdu.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.service.carriermessaging;
+package android.service.carrier;
import android.annotation.NonNull;
import android.os.Parcel;
diff --git a/core/java/android/service/carriermessaging/CarrierMessagingService.aidl b/core/java/android/service/carriermessaging/CarrierMessagingService.aidl
deleted file mode 100644
index 50c438a..0000000
--- a/core/java/android/service/carriermessaging/CarrierMessagingService.aidl
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Copyright (c) 2014, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.service.carriermessaging;
-
-parcelable CarrierMessagingService.SendSmsResponse;
\ No newline at end of file
diff --git a/core/java/android/service/carriermessaging/CarrierMessagingService.java b/core/java/android/service/carriermessaging/CarrierMessagingService.java
deleted file mode 100644
index 7aea590..0000000
--- a/core/java/android/service/carriermessaging/CarrierMessagingService.java
+++ /dev/null
@@ -1,393 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.service.carriermessaging;
-
-import android.annotation.NonNull;
-import android.annotation.Nullable;
-import android.annotation.SdkConstant;
-import android.app.Service;
-import android.content.Intent;
-import android.net.Uri;
-import android.os.IBinder;
-import android.os.Parcel;
-import android.os.Parcelable;
-import android.os.RemoteException;
-
-import java.util.List;
-
-/**
- * A service that receives calls from the system when new SMS and MMS are
- * sent or received.
- * <p>To extend this class, you must declare the service in your manifest file with
- * the {@link android.Manifest.permission#BIND_CARRIER_MESSAGING_SERVICE} permission
- * and include an intent filter with the {@link #SERVICE_INTERFACE} action. For example:</p>
- * <pre>
- * <service android:name=".MyMessagingService"
- * android:label="@string/service_name"
- * android:permission="android.permission.BIND_CARRIER_MESSAGING_SERVICE">
- * <intent-filter>
- * <action android:name="android.service.carriermessaging.CarrierMessagingService" />
- * </intent-filter>
- * </service></pre>
- */
-public abstract class CarrierMessagingService extends Service {
- /**
- * The {@link android.content.Intent} that must be declared as handled by the service.
- */
- @SdkConstant(SdkConstant.SdkConstantType.SERVICE_ACTION)
- public static final String SERVICE_INTERFACE
- = "android.service.carriermessaging.CarrierMessagingService";
-
- /**
- * Indicates that an SMS or MMS message was successfully sent.
- */
- public static final int SEND_STATUS_OK = 0;
-
- /**
- * SMS/MMS sending failed. We should retry via the carrier network.
- */
- public static final int SEND_STATUS_RETRY_ON_CARRIER_NETWORK = 1;
-
- /**
- * SMS/MMS sending failed. We should not retry via the carrier network.
- */
- public static final int SEND_STATUS_ERROR = 2;
-
- /**
- * Successfully downloaded an MMS message.
- */
- public static final int DOWNLOAD_STATUS_OK = 0;
-
- /**
- * MMS downloading failed. We should retry via the carrier network.
- */
- public static final int DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK = 1;
-
- /**
- * MMS downloading failed. We should not retry via the carrier network.
- */
- public static final int DOWNLOAD_STATUS_ERROR = 2;
-
- private final ICarrierMessagingWrapper mWrapper = new ICarrierMessagingWrapper();
-
- /**
- * Implement this method to filter SMS messages.
- *
- * @param pdu the PDUs of the message
- * @param format the format of the PDUs, typically "3gpp" or "3gpp2"
- * @param destPort the destination port of a binary SMS, this will be -1 for text SMS
- *
- * @return True to keep an inbound SMS message and delivered to SMS apps. False to
- * drop the message.
- */
- public boolean onFilterSms(@NonNull MessagePdu pdu, @NonNull String format, int destPort) {
- // optional
- return true;
- }
-
- /**
- * Implement this method to intercept text SMSs sent from the devcie.
- *
- * @param text the text to send
- * @param format the format of the response PDU, typically "3gpp" or "3gpp2"
- * @param destAddress phone number of the recipient of the message
- *
- * @return a possibly {code null} {@link SendSmsResponse}. Upon returning {@code null}, the SMS
- * is sent using the carrier network.
- */
- public @Nullable SendSmsResponse onSendTextSms(
- @NonNull String text, @NonNull String format, @NonNull String destAddress) {
- // optional
- return null;
- }
-
- /**
- * Implement this method to intercept binary SMSs sent from the device.
- *
- * @param data the binary content
- * @param format format the format of the response PDU, typically "3gpp" or "3gpp2"
- * @param destAddress phone number of the recipient of the message
- * @param destPort the destination port
- *
- * @return a possibly {code null} {@link SendSmsResponse}. Upon returning {@code null}, the SMS
- * is sent using the carrier network.
- */
- public @Nullable SendSmsResponse onSendDataSms(@NonNull byte[] data, @NonNull String format,
- @NonNull String destAddress, int destPort) {
- // optional
- return null;
- }
-
- /**
- * Implement this method to intercept long SMSs sent from the device.
- *
- * @param parts a {@link List} of the message parts
- * @param format format the format of the response PDU, typically "3gpp" or "3gpp2"
- * @param destAddress phone number of the recipient of the message
- *
- * @return a possibly {code null} {@link List} of {@link SendSmsResponse}, one for each message
- * part. Upon returning {@code null}, the SMS is sent using the carrier network.
- */
- public @Nullable List<SendSmsResponse> onSendMultipartTextSms(@NonNull List<String> parts,
- @NonNull String format, @NonNull String destAddress) {
- // optional
- return null;
- }
-
- /**
- * Implement this method to intercept MMSs sent from the device.
- *
- * @param pduUri the content provider URI of the PDU to send
- * @param locationUrl the optional URL to send this MMS PDU. If this is not specified,
- * the PDU should be sent to the default MMSC URL.
- *
- * @return a possibly {@code null} {@link SendMmsResult}. Upon returning {@code null}, the
- * MMS is sent using the carrier network.
- */
- public @Nullable SendMmsResult onSendMms(@NonNull Uri pduUri, @Nullable String locationUrl) {
- // optional
- return null;
- }
-
- /**
- * Implement this method to download MMSs received.
- *
- * @param contentUri the content provider URI of the PDU to be downloaded.
- * @param locationUrl the URL of the message to be downloaded.
- *
- * @return a {@link SendMmsResult}.
- */
- public int onDownloadMms(@NonNull Uri contentUri, @NonNull String locationUrl) {
- // optional
- return DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK;
- }
-
- @Override
- public @Nullable IBinder onBind(@NonNull Intent intent) {
- if (!SERVICE_INTERFACE.equals(intent.getAction())) {
- return null;
- }
- return mWrapper;
- }
-
- /**
- * The result of sending an MMS.
- */
- public static final class SendMmsResult {
- private int mResult;
- private byte[] mSendConfPdu;
-
- /**
- * Constructs a SendMmsResult with the MMS send result, and the SenConf PDU.
- *
- * @param result the result which is one of {@link #SEND_STATUS_OK},
- * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and
- * {@link #SEND_STATUS_ERROR}
- * @param sendConfPdu a possibly {code null} SendConf PDU, which confirms that the message
- * was sent. sendConfPdu is ignored if the {@code result} is not
- * {@link #SEND_STATUS_OK}
- */
- public SendMmsResult(int result, @Nullable byte[] sendConfPdu) {
- mResult = result;
- mSendConfPdu = sendConfPdu;
- }
-
- /**
- * Returns the result of sending the MMS.
- *
- * @return the result which is one of {@link #SEND_STATUS_OK},
- * {@link #SEND_STATUS_RETRY_ON_CARRIER_NETWORK}, and {@link #SEND_STATUS_ERROR}
- */
- public int getResult() {
- return mResult;
- }
-
- /**
- * Returns the SendConf PDU, which confirms that the message was sent.
- *
- * @return the SendConf PDU
- */
- public @Nullable byte[] getSendConfPdu() {
- return mSendConfPdu;
- }
- }
-
- /**
- * Object passed in callbacks upon successful completion of
- * {@link ICarrierMessagingService#sendTextSms},
- * {@link ICarrierMessagingService#sendDataSms}, and
- * {@link ICarrierMessagingService#sendMultipartTextSms}.
- * Contains message reference and ackPdu.
- */
- public static final class SendSmsResponse implements Parcelable {
- private int mMessageRef;
- private byte[] mAckPdu;
- private int mErrorCode;
-
- /**
- * Constructs a SendSmsResponse for the message reference, the ack PDU, and error code for
- * the just-sent SMS.
- *
- * @param messageRef message reference of the just-sent SMS
- * @param ackPdu ackPdu for the just-sent SMS
- * @param errorCode error code. See 3GPP 27.005, 3.2.5 for GSM/UMTS,
- * 3GPP2 N.S0005 (IS-41C) Table 171 for CDMA, -1 if unknown or not applicable.
- */
- public SendSmsResponse(int messageRef, @NonNull byte[] ackPdu, int errorCode) {
- mMessageRef = messageRef;
- mAckPdu = ackPdu;
- mErrorCode = errorCode;
- }
-
- /**
- * Returns the message reference of the just-sent SMS.
- *
- * @return the message reference
- */
- public int getMessageRef() {
- return mMessageRef;
- }
-
- /**
- * Returns the ackPdu for the just-sent SMS.
- *
- * @return the ackPdu
- */
- public @NonNull byte[] getAckPdu() {
- return mAckPdu;
- }
-
- /**
- * Returns the error code upon encountering an error while sending the SMS, -1 if unknown or
- * not applicable.
- *
- * @return errorCode the errorCode as defined in 3GPP 27.005, 3.2.5 for GSM/UMTS, and 3GPP2
- * N.S0005 (IS-41C) Table 171 for CDMA, -1 if unknown or not applicable.
- */
- public int getErrorCode() {
- return mErrorCode;
- }
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel dest, int flags) {
- dest.writeInt(mMessageRef);
- dest.writeByteArray(mAckPdu);
- dest.writeInt(mErrorCode);
- }
-
- public static final Parcelable.Creator<SendSmsResponse> CREATOR
- = new Parcelable.Creator<SendSmsResponse>() {
- @Override
- public SendSmsResponse createFromParcel(Parcel source) {
- return new SendSmsResponse(source.readInt(),
- source.createByteArray(),
- source.readInt());
- }
-
- @Override
- public SendSmsResponse[] newArray(int size) {
- return new SendSmsResponse[size];
- }
- };
- }
-
- /**
- * A wrapper around ICarrierMessagingService to enable the carrier messaging APP to implement
- * methods it cares about in the {@link ICarrierMessagingService} interface.
- */
- private class ICarrierMessagingWrapper extends ICarrierMessagingService.Stub {
- @Override
- public void filterSms(MessagePdu pdu, String format, int destPort,
- ICarrierMessagingCallback callback) {
- try {
- callback.onFilterComplete(onFilterSms(pdu, format, destPort));
- } catch (RemoteException ex) {
- }
- }
-
- @Override
- public void sendTextSms(String text, String format, String destAddress,
- ICarrierMessagingCallback callback) {
- try {
- SendSmsResponse sendSmsResponse = onSendTextSms(text, format, destAddress);
- if (sendSmsResponse == null) {
- callback.onSendSmsComplete(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null);
- } else {
- callback.onSendSmsComplete(SEND_STATUS_OK, sendSmsResponse);
- }
- } catch (RemoteException ex) {
- }
- }
-
- @Override
- public void sendDataSms(byte[] data, String format, String destAddress, int destPort,
- ICarrierMessagingCallback callback) {
- try {
- SendSmsResponse sendSmsResponse = onSendDataSms(data, format, destAddress,
- destPort);
- if (sendSmsResponse == null) {
- callback.onSendSmsComplete(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null);
- } else {
- callback.onSendSmsComplete(SEND_STATUS_OK, sendSmsResponse);
- }
- } catch (RemoteException ex) {
- }
- }
-
- @Override
- public void sendMultipartTextSms(List<String> parts, String format, String destAddress,
- ICarrierMessagingCallback callback) {
- try {
- List<SendSmsResponse> sendSmsResponses =
- onSendMultipartTextSms(parts, format, destAddress);
- if (sendSmsResponses == null) {
- callback.onSendMultipartSmsComplete(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null);
- } else {
- callback.onSendMultipartSmsComplete(SEND_STATUS_OK, sendSmsResponses);
- }
- } catch (RemoteException ex) {
- }
- }
-
- @Override
- public void sendMms(Uri pduUri, String locationUrl, ICarrierMessagingCallback callback) {
- try {
- SendMmsResult result = onSendMms(pduUri, locationUrl);
- if (result == null) {
- callback.onSendMmsComplete(SEND_STATUS_RETRY_ON_CARRIER_NETWORK, null);
- } else {
- callback.onSendMmsComplete(SEND_STATUS_OK, result.getSendConfPdu());
- }
- } catch (RemoteException ex) {
- }
- }
-
- @Override
- public void downloadMms(Uri contentUri, String locationUrl,
- ICarrierMessagingCallback callback) {
- try {
- callback.onDownloadMmsComplete(onDownloadMms(contentUri, locationUrl));
- } catch (RemoteException ex) {
- }
- }
- }
-}
diff --git a/core/java/android/service/carriermessaging/CarrierMessagingServiceManager.java b/core/java/android/service/carriermessaging/CarrierMessagingServiceManager.java
deleted file mode 100644
index 56ee2c1..0000000
--- a/core/java/android/service/carriermessaging/CarrierMessagingServiceManager.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.service.carriermessaging;
-
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.Intent;
-import android.content.ServiceConnection;
-import android.os.IBinder;
-
-import com.android.internal.util.Preconditions;
-
-/**
- * Provides basic structure for platform to connect to the carrier messaging service.
- * <p>
- * <code>
- * CarrierMessagingServiceManager carrierMessagingServiceManager =
- * new CarrierMessagingServiceManagerImpl();
- * if (carrierMessagingServiceManager.bindToCarrierMessagingService(context, carrierPackageName)) {
- * // wait for onServiceReady callback
- * } else {
- * // Unable to bind: handle error.
- * }
- * </code>
- * <p> Upon completion {@link #disposeConnection} should be called to unbind the
- * CarrierMessagingService.
- * @hide
- */
-public abstract class CarrierMessagingServiceManager {
- // Populated by bindToCarrierMessagingService. bindToCarrierMessagingService must complete
- // prior to calling disposeConnection so that mCarrierMessagingServiceConnection is initialized.
- private volatile CarrierMessagingServiceConnection mCarrierMessagingServiceConnection;
-
- /**
- * Binds to the carrier messaging service under package {@code carrierPackageName}. This method
- * should be called exactly once.
- *
- * @param context the context
- * @param carrierPackageName the carrier package name
- * @return true upon successfully binding to a carrier messaging service, false otherwise
- */
- public boolean bindToCarrierMessagingService(Context context, String carrierPackageName) {
- Preconditions.checkState(mCarrierMessagingServiceConnection == null);
-
- Intent intent = new Intent(CarrierMessagingService.SERVICE_INTERFACE);
- intent.setPackage(carrierPackageName);
- mCarrierMessagingServiceConnection = new CarrierMessagingServiceConnection();
- return context.bindService(intent, mCarrierMessagingServiceConnection,
- Context.BIND_AUTO_CREATE);
- }
-
- /**
- * Unbinds the carrier messaging service. This method should be called exactly once.
- *
- * @param context the context
- */
- public void disposeConnection(Context context) {
- Preconditions.checkNotNull(mCarrierMessagingServiceConnection);
- context.unbindService(mCarrierMessagingServiceConnection);
- mCarrierMessagingServiceConnection = null;
- }
-
- /**
- * Implemented by subclasses to use the carrier messaging service once it is ready.
- *
- * @param carrierMessagingService the carirer messaing service interface
- */
- protected abstract void onServiceReady(ICarrierMessagingService carrierMessagingService);
-
- /**
- * A basic {@link ServiceConnection}.
- */
- private final class CarrierMessagingServiceConnection implements ServiceConnection {
- @Override
- public void onServiceConnected(ComponentName name, IBinder service) {
- onServiceReady(ICarrierMessagingService.Stub.asInterface(service));
- }
-
- @Override
- public void onServiceDisconnected(ComponentName name) {
- }
- }
-}
diff --git a/core/java/android/view/HardwareRenderer.java b/core/java/android/view/HardwareRenderer.java
index 904e33f..c5c3f83 100644
--- a/core/java/android/view/HardwareRenderer.java
+++ b/core/java/android/view/HardwareRenderer.java
@@ -235,7 +235,7 @@
* or not the surface used by the HardwareRenderer will be changing. It
* Suspends any rendering into the surface, but will not do any destruction
*/
- abstract void pauseSurface(Surface surface);
+ abstract boolean pauseSurface(Surface surface);
/**
* Destroys all hardware rendering resources associated with the specified
diff --git a/core/java/android/view/ThreadedRenderer.java b/core/java/android/view/ThreadedRenderer.java
index 131c039..14b950f 100644
--- a/core/java/android/view/ThreadedRenderer.java
+++ b/core/java/android/view/ThreadedRenderer.java
@@ -155,8 +155,8 @@
}
@Override
- void pauseSurface(Surface surface) {
- nPauseSurface(mNativeProxy, surface);
+ boolean pauseSurface(Surface surface) {
+ return nPauseSurface(mNativeProxy, surface);
}
@Override
@@ -494,7 +494,7 @@
private static native boolean nInitialize(long nativeProxy, Surface window);
private static native void nUpdateSurface(long nativeProxy, Surface window);
- private static native void nPauseSurface(long nativeProxy, Surface window);
+ private static native boolean nPauseSurface(long nativeProxy, Surface window);
private static native void nSetup(long nativeProxy, int width, int height,
float lightX, float lightY, float lightZ, float lightRadius,
int ambientShadowAlpha, int spotShadowAlpha);
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index b12c747..34c27d7 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -1493,7 +1493,11 @@
// relayoutWindow may decide to destroy mSurface. As that decision
// happens in WindowManager service, we need to be defensive here
// and stop using the surface in case it gets destroyed.
- mAttachInfo.mHardwareRenderer.pauseSurface(mSurface);
+ if (mAttachInfo.mHardwareRenderer.pauseSurface(mSurface)) {
+ // Animations were running so we need to push a frame
+ // to resume them
+ mDirty.set(0, 0, mWidth, mHeight);
+ }
}
final int surfaceGenerationId = mSurface.getGenerationId();
relayoutResult = relayoutWindow(params, viewVisibility, insetsPending);
diff --git a/core/java/com/android/internal/app/IAppOpsService.aidl b/core/java/com/android/internal/app/IAppOpsService.aidl
index a52dd48..99bf9f3 100644
--- a/core/java/com/android/internal/app/IAppOpsService.aidl
+++ b/core/java/com/android/internal/app/IAppOpsService.aidl
@@ -36,7 +36,7 @@
List<AppOpsManager.PackageOps> getPackagesForOps(in int[] ops);
List<AppOpsManager.PackageOps> getOpsForPackage(int uid, String packageName, in int[] ops);
void setMode(int code, int uid, String packageName, int mode);
- void resetAllModes();
+ void resetAllModes(int reqUserId, String reqPackageName);
int checkAudioOperation(int code, int usage, int uid, String packageName);
void setAudioRestriction(int code, int usage, int uid, int mode, in String[] exceptionPackages);
diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/core/jni/android_view_ThreadedRenderer.cpp
index 6219956..b9d849c 100644
--- a/core/jni/android_view_ThreadedRenderer.cpp
+++ b/core/jni/android_view_ThreadedRenderer.cpp
@@ -270,14 +270,14 @@
proxy->updateSurface(window);
}
-static void android_view_ThreadedRenderer_pauseSurface(JNIEnv* env, jobject clazz,
+static jboolean android_view_ThreadedRenderer_pauseSurface(JNIEnv* env, jobject clazz,
jlong proxyPtr, jobject jsurface) {
RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr);
sp<ANativeWindow> window;
if (jsurface) {
window = android_view_Surface_getNativeWindow(env, jsurface);
}
- proxy->pauseSurface(window);
+ return proxy->pauseSurface(window);
}
static void android_view_ThreadedRenderer_setup(JNIEnv* env, jobject clazz, jlong proxyPtr,
@@ -429,7 +429,7 @@
{ "nLoadSystemProperties", "(J)Z", (void*) android_view_ThreadedRenderer_loadSystemProperties },
{ "nInitialize", "(JLandroid/view/Surface;)Z", (void*) android_view_ThreadedRenderer_initialize },
{ "nUpdateSurface", "(JLandroid/view/Surface;)V", (void*) android_view_ThreadedRenderer_updateSurface },
- { "nPauseSurface", "(JLandroid/view/Surface;)V", (void*) android_view_ThreadedRenderer_pauseSurface },
+ { "nPauseSurface", "(JLandroid/view/Surface;)Z", (void*) android_view_ThreadedRenderer_pauseSurface },
{ "nSetup", "(JIIFFFFII)V", (void*) android_view_ThreadedRenderer_setup },
{ "nSetOpaque", "(JZ)V", (void*) android_view_ThreadedRenderer_setOpaque },
{ "nSyncAndDrawFrame", "(JJJF)I", (void*) android_view_ThreadedRenderer_syncAndDrawFrame },
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index dec7f07..3dd9770 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -2910,7 +2910,7 @@
android:description="@string/permdesc_removeDrmCertificates"
android:protectionLevel="signature|system" />
- <!-- Must be required by a {@link android.service.carriermessaging.CarrierMessagingService}.
+ <!-- Must be required by a {@link android.service.carrier.CarrierMessagingService}.
Any service that filters for this intent must be a carrier privileged app. -->
<permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
android:label="@string/permlab_bindCarrierMessagingService"
diff --git a/core/res/res/values-km-rKH/strings.xml b/core/res/res/values-km-rKH/strings.xml
index 91ac0a7..c6015c2 100644
--- a/core/res/res/values-km-rKH/strings.xml
+++ b/core/res/res/values-km-rKH/strings.xml
@@ -69,7 +69,7 @@
</plurals>
<string name="imei" msgid="2625429890869005782">"IMEI"</string>
<string name="meid" msgid="4841221237681254195">"MEID"</string>
- <string name="ClipMmi" msgid="6952821216480289285">"លេខសម្គាល់អ្នកហៅចូល"</string>
+ <string name="ClipMmi" msgid="6952821216480289285">"លេខសម្គាល់អ្នកហៅចូល"</string>
<string name="ClirMmi" msgid="7784673673446833091">"លេខសម្គាល់អ្នកហៅចេញ"</string>
<string name="ColpMmi" msgid="3065121483740183974">"បានភ្ជាប់លេខសម្គាល់បន្ទាត់"</string>
<string name="ColrMmi" msgid="4996540314421889589">"បានភ្ជាប់ការដាក់កម្រិតលេខសម្គាល់បន្ទាត់"</string>
@@ -132,7 +132,7 @@
<string name="cfTemplateRegisteredTime" msgid="6781621964320635172">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g> ៖ មិនបានបញ្ជូនបន្ត"</string>
<string name="fcComplete" msgid="3118848230966886575">"កូដលក្ខណៈពេញលេញ។"</string>
<string name="fcError" msgid="3327560126588500777">"បញ្ហាការតភ្ជាប់ ឬកូដលក្ខណៈមិនត្រឹមត្រូវ។"</string>
- <string name="httpErrorOk" msgid="1191919378083472204">"យល់ព្រម"</string>
+ <string name="httpErrorOk" msgid="1191919378083472204">"យល់ព្រម"</string>
<string name="httpError" msgid="7956392511146698522">"មានកំហុសបណ្ដាញ។"</string>
<string name="httpErrorLookup" msgid="4711687456111963163">"រកមិនឃើញ URL ។"</string>
<string name="httpErrorUnsupportedAuthScheme" msgid="6299980280442076799">"គ្រោងការណ៍ផ្ទៀងផ្ទាត់តំបន់បណ្ដាញមិនត្រូវបានគាំទ្រ។"</string>
@@ -199,7 +199,7 @@
<string name="global_action_silent_mode_off_status" msgid="1506046579177066419">"បើកសំឡេង"</string>
<string name="global_actions_toggle_airplane_mode" msgid="5884330306926307456">"ពេលជិះយន្តហោះ"</string>
<string name="global_actions_airplane_mode_on_status" msgid="2719557982608919750">"បានបើករបៀបពេលជិះយន្តហោះ"</string>
- <string name="global_actions_airplane_mode_off_status" msgid="5075070442854490296">"បានបិទរបៀបពេលជិះយន្តហោះ"</string>
+ <string name="global_actions_airplane_mode_off_status" msgid="5075070442854490296">"បានបិទរបៀបពេលជិះយន្តហោះ"</string>
<string name="global_action_settings" msgid="1756531602592545966">"ការកំណត់"</string>
<string name="global_action_lockdown" msgid="8751542514724332873">"ចាក់សោឥឡូវនេះ"</string>
<string name="status_bar_notification_info_overflow" msgid="5301981741705354993">"999+"</string>
@@ -212,7 +212,7 @@
<string name="permgrouplab_messages" msgid="7521249148445456662">"សាររបស់អ្នក"</string>
<string name="permgroupdesc_messages" msgid="7821999071003699236">"អាន និងសរសេរសារ SMS, អ៊ីមែល និងសារផ្សេងៗទៀតរបស់អ្នក។"</string>
<string name="permgrouplab_personalInfo" msgid="3519163141070533474">"ព័ត៌មានផ្ទាល់ខ្លួនរបស់អ្នក"</string>
- <string name="permgroupdesc_personalInfo" msgid="8426453129788861338">"ចូលដំណើរការព័ត៌មានដោយផ្ទាល់អំពីអ្នក ដែលបានរក្សាទុកក្នុងកាតទំនាក់ទំនងរបស់អ្នក។"</string>
+ <string name="permgroupdesc_personalInfo" msgid="8426453129788861338">"ចូលដំណើរការព័ត៌មានដោយផ្ទាល់អំពីអ្នក ដែលបានរក្សាទុកក្នុងកាតទំនាក់ទំនងរបស់អ្នក។"</string>
<string name="permgrouplab_socialInfo" msgid="5799096623412043791">"ព័ត៌មានសង្គមរបស់អ្នក"</string>
<string name="permgroupdesc_socialInfo" msgid="7129842457611643493">"ចូលដំណើរការព័ត៌មានដោយផ្ទាល់អំពីទំនាក់ទំនង និងការភ្ជាប់សង្គមរបស់អ្នក។"</string>
<string name="permgrouplab_location" msgid="635149742436692049">"ទីតាំងរបស់អ្នក"</string>
@@ -408,7 +408,7 @@
<string name="permdesc_readInputState" msgid="8387754901688728043">"ឲ្យកម្មវិធីមើលគ្រាប់ចុចដែលអ្នកចុចពេលមានអន្តរកម្មជាមួយកម្មវិធីផ្សេង (ដូចជា បញ្ចូលពាក្យសម្ងាត់)។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_bindInputMethod" msgid="3360064620230515776">"ចងទៅវិធីសាស្ត្របញ្ចូល"</string>
<string name="permdesc_bindInputMethod" msgid="3250440322807286331">"ឲ្យម្ចាស់ចងចំណុចប្រទាក់កម្រិតកំពូលនៃវិធីសាស្ត្របញ្ចូល។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
- <string name="permlab_bindAccessibilityService" msgid="5357733942556031593">"ចងសេវាកម្មភាពមធ្យោបាយងាយស្រួល"</string>
+ <string name="permlab_bindAccessibilityService" msgid="5357733942556031593">"ចងសេវាកម្មភាពមធ្យោបាយងាយស្រួល"</string>
<string name="permdesc_bindAccessibilityService" msgid="7034615928609331368">"ឲ្យម្ចាស់ចងចំណុចប្រទាក់កម្រិតកំពូលនៃសេវាកម្មភាពងាយស្រួល។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_bindPrintService" msgid="8462815179572748761">"ចងសេវាកម្មបោះពុម្ព"</string>
<string name="permdesc_bindPrintService" msgid="7960067623209111135">"ឲ្យម្ចាស់ចងចំណុចប្រទាក់កម្រិតកំពូលនៃសេវាកម្មធាតុក្រាហ្វិក។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
@@ -428,7 +428,7 @@
<string name="permdesc_manageVoiceKeyphrases" msgid="8476560722907530008">"អនុញ្ញាតឲ្យម្ចាស់គ្រប់គ្រងឃ្លាសម្រាប់ការរកឃើញពាក្យជាសំឡេង។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_bindRemoteDisplay" msgid="1782923938029941960">"ភ្ជាប់ទៅការបង្ហាញពីចម្ងាយ"</string>
<string name="permdesc_bindRemoteDisplay" msgid="1261242718727295981">"អនុញ្ញាតឲ្យម្ចាស់ភ្ជាប់ទៅចំណុចប្រទាក់កម្រិតកំពូលនៃការបង្ហាញពីចម្ងាយ។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
- <string name="permlab_bindRemoteViews" msgid="5697987759897367099">"ចងសេវាកម្មធាតុក្រាហ្វិក"</string>
+ <string name="permlab_bindRemoteViews" msgid="5697987759897367099">"ចងសេវាកម្មធាតុក្រាហ្វិក"</string>
<string name="permdesc_bindRemoteViews" msgid="4717987810137692572">"ឲ្យម្ចាស់ចងចំណុចប្រទាក់កម្រិតកំពូលនៃសេវាកម្មធាតុក្រាហ្វិក។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_bindDeviceAdmin" msgid="8704986163711455010">"ទាក់ទងជាមួយអ្នកគ្រប់គ្រងឧបករណ៍"</string>
<string name="permdesc_bindDeviceAdmin" msgid="569715419543907930">"ឲ្យម្ចាស់ផ្ញើគោលបំណងទៅអ្នកគ្រប់គ្រងឧបករណ៍។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
@@ -436,7 +436,7 @@
<string name="permdesc_bindTvInput" msgid="2371008331852001924">"អនុញ្ញាតឲ្យម្ចាស់ភ្ជាប់ទៅចំណុចប្រទាក់កម្រិតខ្ពស់នៃការបញ្ចូលទូរទស្សន៍។ មិនគួរចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_modifyParentalControls" msgid="4611318225997592242">"កែប្រែការត្រួតពិនិត្យមាតាបិតា"</string>
<string name="permdesc_modifyParentalControls" msgid="7438482894162282039">"អនុញ្ញាតឲ្យម្ចាស់កែប្រែទិន្នន័យការត្រួតពិនិត្យមាតាបិតារបស់ប្រព័ន្ធ។ គួរតែមិនត្រូវការសម្រាប់កម្មវិធីធម្មតា។"</string>
- <string name="permlab_manageDeviceAdmins" msgid="4248828900045808722">"បន្ថែម ឬលុបកម្មវិធីគ្រប់គ្រងឧបករណ៍"</string>
+ <string name="permlab_manageDeviceAdmins" msgid="4248828900045808722">"បន្ថែម ឬលុបកម្មវិធីគ្រប់គ្រងឧបករណ៍"</string>
<string name="permdesc_manageDeviceAdmins" msgid="5025608167709942485">"អនុញ្ញាតឲ្យម្ចាស់បន្ថែម ឬលុបកម្មវិធីគ្រប់គ្រងឧបករណ៍សកម្មចេញ។ មិនគួរប្រើសម្រាប់កម្មវិធីធម្មតាទេ។"</string>
<string name="permlab_setOrientation" msgid="3365947717163866844">"ប្ដូរទិសអេក្រង់"</string>
<string name="permdesc_setOrientation" msgid="3046126619316671476">"ឲ្យកម្មវិធីប្ដូរការបង្វិលអេក្រង់នៅពេលណាមួយ។ មិនចាំបាច់សម្រាប់កម្មវិធីធម្មតាទេ។"</string>
@@ -449,9 +449,9 @@
<string name="permlab_persistentActivity" msgid="8841113627955563938">"ធ្វើឲ្យកម្មវិធីដំណើរការជានិច្ច"</string>
<string name="permdesc_persistentActivity" product="tablet" msgid="8525189272329086137">"ឲ្យកម្មវិធីធ្វើជាផ្នែកស្ថិតស្ថេរដោយខ្លួនឯងក្នុងអង្គចងចាំ។ វាអាចកំណត់អង្គចងចាំដែលអាចប្រើបានចំពោះកម្មវិធីផ្សេងៗ ដោយធ្វើឲ្យកុំព្យូទ័របន្ទះយឺត។"</string>
<string name="permdesc_persistentActivity" product="tv" msgid="5086862529499103587">"អនុញ្ញាតឲ្យកម្មវិធីធ្វើឲ្យផ្នែកមួយចំនួនរបស់វាបន្តនៅក្នុងមេម៉ូរី។ វាអាចកម្រិតមេម៉ូរីដែលមានសម្រាប់កម្មវិធីផ្សេងទៀត ដែលធ្វើឲ្យទូរទស្សន៍ដើរយឺត។"</string>
- <string name="permdesc_persistentActivity" product="default" msgid="4384760047508278272">"ឲ្យកម្មវិធី ធ្វើជាផ្នែកអចិន្ត្រៃយ៍នៃខ្លួនក្នុងអង្គចងចាំ។ វាអាចកម្រិតអង្គចងចាំអាចប្រើបាន ដើម្បីធ្វើឲ្យកម្មវិធីផ្សេងធ្វើឲ្យទូរស័ព្ទរបស់អ្នកយឺត។"</string>
+ <string name="permdesc_persistentActivity" product="default" msgid="4384760047508278272">"ឲ្យកម្មវិធី ធ្វើជាផ្នែកអចិន្ត្រៃយ៍នៃខ្លួនក្នុងអង្គចងចាំ។ វាអាចកម្រិតអង្គចងចាំអាចប្រើបាន ដើម្បីធ្វើឲ្យកម្មវិធីផ្សេងធ្វើឲ្យទូរស័ព្ទរបស់អ្នកយឺត។"</string>
<string name="permlab_deletePackages" msgid="184385129537705938">"លុបកម្មវិធី"</string>
- <string name="permdesc_deletePackages" msgid="7411480275167205081">"ឲ្យកម្មវិធីលុបកញ្ចប់ Android ។ កម្មវិធីព្យាបាទអាចប្រើវា ដើម្បីលុបកម្មវិធីសំខាន់ៗ។ "</string>
+ <string name="permdesc_deletePackages" msgid="7411480275167205081">"ឲ្យកម្មវិធីលុបកញ្ចប់ Android ។ កម្មវិធីព្យាបាទអាចប្រើវា ដើម្បីលុបកម្មវិធីសំខាន់ៗ។"</string>
<string name="permlab_clearAppUserData" msgid="274109191845842756">"លុបទិន្នន័យរបស់កម្មវិធីផ្សេង"</string>
<string name="permdesc_clearAppUserData" msgid="4625323684125459488">"ឲ្យកម្មវិធីសម្អាតទិន្នន័យអ្នកប្រើ។"</string>
<string name="permlab_deleteCacheFiles" msgid="3128665571837408675">"លុបឃ្លាំងសម្ងាត់កម្មវិធីផ្សេងៗ"</string>
@@ -509,7 +509,7 @@
<string name="permdesc_writeContacts" product="tv" msgid="5438230957000018959">"អនុញ្ញាតឲ្យកម្មវិធីកែសម្រួលទិន្នន័យអំពីទំនាក់ទំនងរបស់អ្នកដែលបានផ្ទុកនៅលើទូរទស្សន៍របស់អ្នក ដោយរាប់បញ្ចូលទាំងភាពញឹកញាប់ដែលអ្នកបានហៅ អ៊ីម៉ែល និងទំនាក់ទំនងទៅក្នុងមធ្យោបាយផ្សេងទៀតជាមួយទំនាក់ទំនងជាក់លាក់។ ការអនុញ្ញាតនេះអនុញ្ញាតឲ្យកម្មវិធីលុបទិន្នន័យទំនាក់ទំនង។"</string>
<string name="permdesc_writeContacts" product="default" msgid="589869224625163558">"ឲ្យកម្មវិធីកែទិន្នន័យអំពីទំនាក់ទំនងរបស់អ្នកដែលបានរក្សាទុកក្នុងទូរស័ព្ទរបស់អ្នក រួមមានប្រេកង់ដែលអ្នកបានហៅ អ៊ីមែល ឬបានទាក់ទងតាមវិធីផ្សេងៗជាមួយទំនាក់ទំនាក់ជាក់លាក់។ សិទ្ធិនេះឲ្យកម្មវិធីលុបទិន្នន័យទំនាក់ទំនង។"</string>
<string name="permlab_readCallLog" msgid="3478133184624102739">"អានកំណត់ហេតុហៅ"</string>
- <string name="permdesc_readCallLog" product="tablet" msgid="3700645184870760285">"ឲ្យកម្មវិធីអានបញ្ជីហៅកុំព្យូទ័របន្ទះរបស់អ្នក រួមមានទិន្នន័យអំពីការហៅចូល និងចេញ។ សិទ្ធិនេះអនុញ្ញាតឲ្យកម្មវិធីរក្សាទុកទិន្នន័យបញ្ជីហៅរបស់អ្នក ហើយកម្មវិធីព្យាបាទអាចចែករំលែកទិន្នន័យបញ្ជីហៅដោយមិនឲ្យអ្នកដឹង។"</string>
+ <string name="permdesc_readCallLog" product="tablet" msgid="3700645184870760285">"ឲ្យកម្មវិធីអានបញ្ជីហៅកុំព្យូទ័របន្ទះរបស់អ្នក រួមមានទិន្នន័យអំពីការហៅចូល និងចេញ។ សិទ្ធិនេះអនុញ្ញាតឲ្យកម្មវិធីរក្សាទុកទិន្នន័យបញ្ជីហៅរបស់អ្នក ហើយកម្មវិធីព្យាបាទអាចចែករំលែកទិន្នន័យបញ្ជីហៅដោយមិនឲ្យអ្នកដឹង។"</string>
<string name="permdesc_readCallLog" product="tv" msgid="5611770887047387926">"អនុញ្ញាតឲ្យកម្មវិធីអានកំណត់ហេតុហៅទរស័ព្ទទូរទស្សន៍របស់អ្នក ដោយរាប់បញ្ចូលទាំងការហៅចេញ និងហៅចូល។ ការអនុញ្ញាតនេះអនុញ្ញាតឲ្យកម្មវិធីរក្សាទុកទិន្នន័យកំណត់ត្រាហៅរបស់អ្នក ហើយកម្មវិធីព្យាបាទអាចចែករំលែកទិន្នន័យកំណត់ហេតុហៅទូរស័ព្ទដោយគ្មានការដឹងលឺពីអ្នក។"</string>
<string name="permdesc_readCallLog" product="default" msgid="5777725796813217244">"ឲ្យកម្មវិធីអានបញ្ជីហៅទូរស័ព្ទរបស់អ្នក រួមមានទិន្នន័យអំពីការហៅចូល និងចេញ។ សិទ្ធិនេះអនុញ្ញាតឲ្យកម្មវិធីរក្សាទុកទិន្នន័យបញ្ជីហៅរបស់អ្នក ហើយកម្មវិធីព្យាបាទអាចចែករំលែកទិន្នន័យបញ្ជីហៅដោយមិនឲ្យអ្នកដឹង។"</string>
<string name="permlab_writeCallLog" msgid="8552045664743499354">"សរសេរបញ្ជីហៅ"</string>
@@ -666,7 +666,7 @@
<string name="permdesc_setWallpaperHints" msgid="8235784384223730091">"ឲ្យកម្មវិធីកំណត់ជំនួយទំហំផ្ទាំងរូបភាពប្រព័ន្ធ។"</string>
<string name="permlab_masterClear" msgid="2315750423139697397">"កំណត់ប្រព័ន្ធទៅលំនាំដើមរោងចក្រឡើងវិញ"</string>
<string name="permdesc_masterClear" msgid="3665380492633910226">"ឲ្យកម្មវិធីកំណត់ប្រព័ន្ធដូចការកំណត់ចេញពីរោងចក្រឡើងវិញពេញលេញ ដោយលុបទិន្នន័យ ការកំណត់រចនាសម្ព័ន្ធ និងកម្មវិធីបានដំឡើង។"</string>
- <string name="permlab_setTime" msgid="2021614829591775646">"កំណត់ម៉ោង"</string>
+ <string name="permlab_setTime" msgid="2021614829591775646">"កំណត់ម៉ោង"</string>
<string name="permdesc_setTime" product="tablet" msgid="1896341438151152881">"ឲ្យកម្មវិធីប្ដូរម៉ោងកុំព្យូទ័របន្ទះ។"</string>
<string name="permdesc_setTime" product="tv" msgid="1826398919861882682">"អនុញ្ញាតឲ្យកម្មវិធីផ្លាស់ប្តូរម៉ោងទូរទស្សន៍។"</string>
<string name="permdesc_setTime" product="default" msgid="1855702730738020">"ឲ្យកម្មវិធីប្ដូរម៉ោងទូរស័ព្ទ។"</string>
@@ -863,7 +863,7 @@
<string-array name="organizationTypes">
<item msgid="7546335612189115615">"កន្លែងធ្វើការ"</item>
<item msgid="4378074129049520373">"ផ្សេងៗ"</item>
- <item msgid="3455047468583965104">"តាមតម្រូវការ"</item>
+ <item msgid="3455047468583965104">"តាមតម្រូវការ"</item>
</string-array>
<string-array name="imProtocols">
<item msgid="8595261363518459565">"AIM"</item>
@@ -879,7 +879,7 @@
<string name="phoneTypeHome" msgid="2570923463033985887">"ផ្ទះ"</string>
<string name="phoneTypeMobile" msgid="6501463557754751037">"ចល័ត"</string>
<string name="phoneTypeWork" msgid="8863939667059911633">"កន្លែងធ្វើការ"</string>
- <string name="phoneTypeFaxWork" msgid="3517792160008890912">"ទូរសារកន្លែងធ្វើការ"</string>
+ <string name="phoneTypeFaxWork" msgid="3517792160008890912">"ទូរសារកន្លែងធ្វើការ"</string>
<string name="phoneTypeFaxHome" msgid="2067265972322971467">"ទូរសារផ្ទះ"</string>
<string name="phoneTypePager" msgid="7582359955394921732">"ភេយ័រ"</string>
<string name="phoneTypeOther" msgid="1544425847868765990">"ផ្សេងៗ"</string>
@@ -1006,7 +1006,7 @@
<string name="lockscreen_glogin_too_many_attempts" msgid="2751368605287288808">"ព្យាយាមលំនាំច្រើនពេក"</string>
<string name="lockscreen_glogin_instructions" msgid="3931816256100707784">"ដើម្បីដោះសោ ចូលគណនី Google របស់អ្នក។"</string>
<string name="lockscreen_glogin_username_hint" msgid="8846881424106484447">"ឈ្មោះអ្នកប្រើ (អ៊ីមែល)"</string>
- <string name="lockscreen_glogin_password_hint" msgid="5958028383954738528">"ពាក្យសម្ងាត់"</string>
+ <string name="lockscreen_glogin_password_hint" msgid="5958028383954738528">"ពាក្យសម្ងាត់"</string>
<string name="lockscreen_glogin_submit_button" msgid="7130893694795786300">"ចូល"</string>
<string name="lockscreen_glogin_invalid_input" msgid="1364051473347485908">"ឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់មិនត្រឹមត្រូវ។"</string>
<string name="lockscreen_glogin_account_recovery_hint" msgid="1696924763690379073">"ភ្លេចឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់របស់អ្នក?\nមើល "<b>"google.com/accounts/recovery"</b>" ។"</string>
@@ -1051,7 +1051,7 @@
<string name="factorytest_failed" msgid="5410270329114212041">"បានបរាជ័យក្នុងការសាកល្បងរោងចក្រ"</string>
<string name="factorytest_not_system" msgid="4435201656767276723">"សកម្មភាព FACTORY_TEST ត្រូវបានគាំទ្រសម្រាប់តែកញ្ចប់បានដំឡើងក្នុង /system/app."</string>
<string name="factorytest_no_action" msgid="872991874799998561">"រកមិនឃើញកញ្ចប់ដែលផ្ដល់សកម្មភាព FACTORY_TEST ។"</string>
- <string name="factorytest_reboot" msgid="6320168203050791643">"ចាប់ផ្ដើមឡើងវិញ"</string>
+ <string name="factorytest_reboot" msgid="6320168203050791643">"ចាប់ផ្ដើមឡើងវិញ"</string>
<string name="js_dialog_title" msgid="1987483977834603872">"ទំព័រមានចំណងជើង \"<xliff:g id="TITLE">%s</xliff:g>\" សរសេរ៖"</string>
<string name="js_dialog_title_default" msgid="6961903213729667573">"JavaScript"</string>
<string name="js_dialog_before_unload_title" msgid="2619376555525116593">"បញ្ជាក់ការរុករក"</string>
@@ -1114,7 +1114,7 @@
<string name="prepend_shortcut_label" msgid="2572214461676015642">"ម៉ឺនុយ +"</string>
<string name="menu_space_shortcut_label" msgid="2410328639272162537">"ដកឃ្លា"</string>
<string name="menu_enter_shortcut_label" msgid="2743362785111309668">"enter"</string>
- <string name="menu_delete_shortcut_label" msgid="3658178007202748164">"លុប"</string>
+ <string name="menu_delete_shortcut_label" msgid="3658178007202748164">"លុប"</string>
<string name="search_go" msgid="8298016669822141719">"ស្វែងរក"</string>
<string name="search_hint" msgid="1733947260773056054">"ស្វែងរក…"</string>
<string name="searchview_description_search" msgid="6749826639098512120">"ស្វែងរក"</string>
@@ -1199,18 +1199,18 @@
<string name="preposition_for_date" msgid="9093949757757445117">"នៅ <xliff:g id="DATE">%s</xliff:g>"</string>
<string name="preposition_for_time" msgid="5506831244263083793">"នៅម៉ោង <xliff:g id="TIME">%s</xliff:g>"</string>
<string name="preposition_for_year" msgid="5040395640711867177">"ក្នុងឆ្នាំ <xliff:g id="YEAR">%s</xliff:g>"</string>
- <string name="day" msgid="8144195776058119424">"ថ្ងៃ"</string>
+ <string name="day" msgid="8144195776058119424">"ថ្ងៃ"</string>
<string name="days" msgid="4774547661021344602">"ថ្ងៃ"</string>
<string name="hour" msgid="2126771916426189481">"ម៉ោង"</string>
<string name="hours" msgid="894424005266852993">"ម៉ោង"</string>
- <string name="minute" msgid="9148878657703769868">"នាទី"</string>
+ <string name="minute" msgid="9148878657703769868">"នាទី"</string>
<string name="minutes" msgid="5646001005827034509">"នាទី"</string>
- <string name="second" msgid="3184235808021478">"វិនាទី"</string>
+ <string name="second" msgid="3184235808021478">"វិនាទី"</string>
<string name="seconds" msgid="3161515347216589235">"វិនាទី"</string>
- <string name="week" msgid="5617961537173061583">"សប្ដាហ៍"</string>
- <string name="weeks" msgid="6509623834583944518">"សប្ដាហ៍"</string>
- <string name="year" msgid="4001118221013892076">"ឆ្នាំ"</string>
- <string name="years" msgid="6881577717993213522">"ឆ្នាំ"</string>
+ <string name="week" msgid="5617961537173061583">"សប្ដាហ៍"</string>
+ <string name="weeks" msgid="6509623834583944518">"សប្ដាហ៍"</string>
+ <string name="year" msgid="4001118221013892076">"ឆ្នាំ"</string>
+ <string name="years" msgid="6881577717993213522">"ឆ្នាំ"</string>
<plurals name="duration_seconds">
<item quantity="one" msgid="6962015528372969481">"1 វិនាទី"</item>
<item quantity="other" msgid="1886107766577166786">"<xliff:g id="COUNT">%d</xliff:g> វិនាទី"</item>
@@ -1226,12 +1226,12 @@
<string name="VideoView_error_title" msgid="3534509135438353077">"បញ្ហាវីដេអូ"</string>
<string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"វីដេអូនេះមិនត្រឹមត្រូវសម្រាប់ចរន្តចូលឧបករណ៍នេះ។"</string>
<string name="VideoView_error_text_unknown" msgid="3450439155187810085">"មិនអាចចាក់វីដេអូនេះ។"</string>
- <string name="VideoView_error_button" msgid="2822238215100679592">"យល់ព្រម"</string>
+ <string name="VideoView_error_button" msgid="2822238215100679592">"យល់ព្រម"</string>
<string name="relative_time" msgid="1818557177829411417">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
<string name="noon" msgid="7245353528818587908">"រសៀល"</string>
<string name="Noon" msgid="3342127745230013127">"រសៀល"</string>
<string name="midnight" msgid="7166259508850457595">"កណ្ដាលអធ្រាត្រ"</string>
- <string name="Midnight" msgid="5630806906897892201">"កណ្ដាលអធ្រាត្រ"</string>
+ <string name="Midnight" msgid="5630806906897892201">"កណ្ដាលអធ្រាត្រ"</string>
<string name="elapsed_time_short_format_mm_ss" msgid="4431555943828711473">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
<string name="elapsed_time_short_format_h_mm_ss" msgid="1846071997616654124">"<xliff:g id="HOURS">%1$d</xliff:g>:<xliff:g id="MINUTES">%2$02d</xliff:g>:<xliff:g id="SECONDS">%3$02d</xliff:g>"</string>
<string name="selectAll" msgid="6876518925844129331">"ជ្រើសទាំងអស់"</string>
@@ -1248,14 +1248,14 @@
<string name="inputMethod" msgid="1653630062304567879">"វិធីសាស្ត្របញ្ចូល"</string>
<string name="editTextMenuTitle" msgid="4909135564941815494">"សកម្មភាពអត្ថបទ"</string>
<string name="low_internal_storage_view_title" msgid="5576272496365684834">"អស់ទំហំផ្ទុក"</string>
- <string name="low_internal_storage_view_text" msgid="6640505817617414371">"មុខងារប្រព័ន្ធមួយចំនួនអាចមិនដំណើរការ"</string>
+ <string name="low_internal_storage_view_text" msgid="6640505817617414371">"មុខងារប្រព័ន្ធមួយចំនួនអាចមិនដំណើរការ"</string>
<string name="low_internal_storage_view_text_no_boot" msgid="6935190099204693424">"មិនមានទំហំផ្ទុកគ្រប់គ្រាន់សម្រាប់ប្រព័ន្ធ។ សូមប្រាកដថាអ្នកមានទំហំទំនេរ 250MB ហើយចាប់ផ្ដើមឡើងវិញ។"</string>
<string name="app_running_notification_title" msgid="8718335121060787914">"<xliff:g id="APP_NAME">%1$s</xliff:g> កំពុងដំណើរការ"</string>
<string name="app_running_notification_text" msgid="4653586947747330058">"ប៉ះ ដើម្បីមើលព័ត៌មានបន្ថែម ឬបញ្ឈប់កម្មវិធី។"</string>
- <string name="ok" msgid="5970060430562524910">"យល់ព្រម"</string>
- <string name="cancel" msgid="6442560571259935130">"បោះបង់"</string>
- <string name="yes" msgid="5362982303337969312">"យល់ព្រម"</string>
- <string name="no" msgid="5141531044935541497">"បោះបង់"</string>
+ <string name="ok" msgid="5970060430562524910">"យល់ព្រម"</string>
+ <string name="cancel" msgid="6442560571259935130">"បោះបង់"</string>
+ <string name="yes" msgid="5362982303337969312">"យល់ព្រម"</string>
+ <string name="no" msgid="5141531044935541497">"បោះបង់"</string>
<string name="dialog_alert_title" msgid="2049658708609043103">"ប្រយ័ត្ន"</string>
<string name="loading" msgid="7933681260296021180">"កំពុងផ្ទុក..."</string>
<string name="capital_on" msgid="1544682755514494298">"បើក"</string>
@@ -1275,7 +1275,7 @@
<string name="alwaysUse" msgid="4583018368000610438">"ប្រើតាមលំនាំដើមសម្រាប់សកម្មភាពនេះ។"</string>
<string name="use_a_different_app" msgid="8134926230585710243">"ប្រើកម្មវិធីផ្សេង"</string>
<string name="clearDefaultHintMsg" msgid="3252584689512077257">"សម្អាតលំនាំដើមក្នុងការកំណត់ប្រព័ន្ធ > កម្មវិធី > ទាញយក។"</string>
- <string name="chooseActivity" msgid="7486876147751803333">"ជ្រើសសកម្មភាព"</string>
+ <string name="chooseActivity" msgid="7486876147751803333">"ជ្រើសសកម្មភាព"</string>
<string name="chooseUsbActivity" msgid="6894748416073583509">"ជ្រើសកម្មវិធីសម្រាប់ឧបករណ៍យូអេសប៊ី"</string>
<string name="noApplications" msgid="2991814273936504689">"គ្មានកម្មវិធីអាចអនុវត្តសកម្មភាពនេះ។"</string>
<string name="aerr_title" msgid="1905800560317137752"></string>
@@ -1286,7 +1286,7 @@
<string name="anr_activity_process" msgid="5776209883299089767">"សកម្មភាព <xliff:g id="ACTIVITY">%1$s</xliff:g> មិនឆ្លើយតប។\n\nតើអ្នកចង់បិទវា?"</string>
<string name="anr_application_process" msgid="8941757607340481057">"<xliff:g id="APPLICATION">%1$s</xliff:g> មិនឆ្លើយតប។ តើអ្នកចង់បិទវា?"</string>
<string name="anr_process" msgid="6513209874880517125">"ដំណើរការ <xliff:g id="PROCESS">%1$s</xliff:g> មិនឆ្លើយតប។ \n\nតើអ្នកចង់បិទវាឬ?"</string>
- <string name="force_close" msgid="8346072094521265605">"យល់ព្រម"</string>
+ <string name="force_close" msgid="8346072094521265605">"យល់ព្រម"</string>
<string name="report" msgid="4060218260984795706">"រាយការណ៍"</string>
<string name="wait" msgid="7147118217226317732">"រង់ចាំ"</string>
<string name="webpage_unresponsive" msgid="3272758351138122503">"ទំព័រក្លាយជាមិនឆ្លើយតប។\n\nតើអ្នកចង់បិទវា?"</string>
@@ -1371,7 +1371,7 @@
<string name="sms_short_code_details" msgid="5873295990846059400">"វា "<b>"អាចគិតលុយ"</b>" លើគណនីចល័តរបស់អ្នក។"</string>
<string name="sms_premium_short_code_details" msgid="7869234868023975"><b>"វានឹងគិតលុយគណនីចល័តរបស់អ្នក។"</b></string>
<string name="sms_short_code_confirm_allow" msgid="4458878637111023413">"ផ្ញើ"</string>
- <string name="sms_short_code_confirm_deny" msgid="2927389840209170706">"បោះបង់"</string>
+ <string name="sms_short_code_confirm_deny" msgid="2927389840209170706">"បោះបង់"</string>
<string name="sms_short_code_remember_choice" msgid="5289538592272218136">"ចងចាំជម្រើសរបស់ខ្ញុំ"</string>
<string name="sms_short_code_remember_undo_instruction" msgid="4960944133052287484">"អ្នកអាចប្ដូរវាពេលក្រោយក្នុងការកំណត់ > កម្មវិធី"</string>
<string name="sms_short_code_confirm_always_allow" msgid="3241181154869493368">"អនុញ្ញាតជានិច្ច"</string>
@@ -1382,8 +1382,8 @@
<string name="sim_added_title" msgid="3719670512889674693">"បានបន្ថែមស៊ីមកាត"</string>
<string name="sim_added_message" msgid="7797975656153714319">"ចាប់ផ្ដើមឧបករណ៍របស់អ្នកឡើងវិញ ដើម្បីចូលប្រើបណ្ដាញចល័ត។"</string>
<string name="sim_restart_button" msgid="4722407842815232347">"ចាប់ផ្ដើមឡើងវិញ"</string>
- <string name="time_picker_dialog_title" msgid="8349362623068819295">"កំណត់ម៉ោង"</string>
- <string name="date_picker_dialog_title" msgid="5879450659453782278">"កំណត់កាលបរិច្ឆេទ"</string>
+ <string name="time_picker_dialog_title" msgid="8349362623068819295">"កំណត់ម៉ោង"</string>
+ <string name="date_picker_dialog_title" msgid="5879450659453782278">"កំណត់កាលបរិច្ឆេទ"</string>
<string name="date_time_set" msgid="5777075614321087758">"កំណត់"</string>
<string name="date_time_done" msgid="2507683751759308828">"រួចរាល់"</string>
<string name="perms_new_perm_prefix" msgid="8257740710754301407"><font size="12" fgcolor="#ff33b5e5">"ថ្មី៖ "</font></string>
@@ -1461,7 +1461,7 @@
<string name="permdesc_copyProtectedData" msgid="4390697124288317831">"ឲ្យកម្មវិធីដកសេវាកម្មនៃកម្មវិធីផ្ទុកលំនាំដើម ដើម្បីចម្លងមាតិកា។ មិនសម្រាប់ប្រើដោយកម្មវិធីលំនាំដើម។"</string>
<string name="permlab_route_media_output" msgid="1642024455750414694">"នាំផ្លូវលទ្ធផលមេឌៀ"</string>
<string name="permdesc_route_media_output" msgid="4932818749547244346">"ឲ្យកម្មវិធីនាំផ្លូវលទ្ធផលមេឌៀទៅឧបករណ៍ខាងក្រៅផ្សេង។"</string>
- <string name="permlab_access_keyguard_secure_storage" msgid="7565552237977815047">"ចូលដំណើរការឧបករណ៍ផ្ទុកសុវត្ថិភាព"</string>
+ <string name="permlab_access_keyguard_secure_storage" msgid="7565552237977815047">"ចូលដំណើរការឧបករណ៍ផ្ទុកសុវត្ថិភាព"</string>
<string name="permdesc_access_keyguard_secure_storage" msgid="5866245484303285762">"ឲ្យកម្មវិធីចូលការផ្ទុកមានសុវត្ថិភាព keguard ។"</string>
<string name="permlab_control_keyguard" msgid="172195184207828387">"ពិនិត្យការបង្ហាញ និងលាក់ការការពារ"</string>
<string name="permdesc_control_keyguard" msgid="3043732290518629061">"ឲ្យកម្មវិធីគ្រប់គ្រង keguard ។"</string>
@@ -1484,7 +1484,7 @@
<string name="ime_action_go" msgid="8320845651737369027">"ទៅ"</string>
<string name="ime_action_search" msgid="658110271822807811">"ស្វែងរក"</string>
<string name="ime_action_send" msgid="2316166556349314424">"ផ្ញើ"</string>
- <string name="ime_action_next" msgid="3138843904009813834">"បន្ទាប់"</string>
+ <string name="ime_action_next" msgid="3138843904009813834">"បន្ទាប់"</string>
<string name="ime_action_done" msgid="8971516117910934605">"រួចរាល់"</string>
<string name="ime_action_previous" msgid="1443550039250105948">"មុន"</string>
<string name="ime_action_default" msgid="2840921885558045721">"អនុវត្ត"</string>
@@ -1493,7 +1493,7 @@
<string name="grant_credentials_permission_message_header" msgid="2106103817937859662">"កម្មវិធីមួយ ឬច្រើនដូចខាងក្រោមស្នើសិទ្ធិ ដើម្បីចូលគណនីរបស់អ្នកឥឡូវ និងពេលអនាគត។"</string>
<string name="grant_credentials_permission_message_footer" msgid="3125211343379376561">"តើអ្នកចង់អនុញ្ញាតសំណើនេះ?"</string>
<string name="grant_permissions_header_text" msgid="6874497408201826708">"ស្នើចូល"</string>
- <string name="allow" msgid="7225948811296386551">"អនុញ្ញាត"</string>
+ <string name="allow" msgid="7225948811296386551">"អនុញ្ញាត"</string>
<string name="deny" msgid="2081879885755434506">"បដិសេធ"</string>
<string name="permission_request_notification_title" msgid="6486759795926237907">"បានស្នើសិទ្ធិ"</string>
<string name="permission_request_notification_with_subtitle" msgid="8530393139639560189">"បានស្នើសិទ្ធិ\nសម្រាប់គណនី <xliff:g id="ACCOUNT">%s</xliff:g> ។"</string>
@@ -1518,12 +1518,12 @@
<string name="no_file_chosen" msgid="6363648562170759465">"គ្មានឯកសារបានជ្រើស"</string>
<string name="reset" msgid="2448168080964209908">"កំណត់ឡើងវិញ"</string>
<string name="submit" msgid="1602335572089911941">"ដាក់ស្នើ"</string>
- <string name="car_mode_disable_notification_title" msgid="3164768212003864316">"បានបើករបៀបរថយន្ត"</string>
+ <string name="car_mode_disable_notification_title" msgid="3164768212003864316">"បានបើករបៀបរថយន្ត"</string>
<string name="car_mode_disable_notification_message" msgid="8035230537563503262">"ប៉ះ ដើម្បីចេញពីរបៀបរថយន្ត។"</string>
<string name="tethered_notification_title" msgid="3146694234398202601">"ភ្ជាប់ ឬហតស្ពតសកម្ម"</string>
<string name="tethered_notification_message" msgid="6857031760103062982">"ប៉ះ ដើម្បីរៀបចំ។"</string>
<string name="back_button_label" msgid="2300470004503343439">"ថយក្រោយ"</string>
- <string name="next_button_label" msgid="1080555104677992408">"បន្ទាប់"</string>
+ <string name="next_button_label" msgid="1080555104677992408">"បន្ទាប់"</string>
<string name="skip_button_label" msgid="1275362299471631819">"រំលង"</string>
<string name="no_matches" msgid="8129421908915840737">"គ្មានការផ្គូផ្គង"</string>
<string name="find_on_page" msgid="1946799233822820384">"រកក្នុងទំព័រ"</string>
@@ -1545,7 +1545,7 @@
<string name="media_shared" product="nosdcard" msgid="5830814349250834225">"ឧបករណ៍ផ្ទុកយូអេសប៊ីបច្ចុប្បន្នកំពុងប្រើដោយកុំព្យូទ័រ។"</string>
<string name="media_shared" product="default" msgid="5706130568133540435">"បច្ចុប្បន្នកាតអេសឌីកំពុងប្រើដោយកុំព្យូទ័រ"</string>
<string name="media_unknown_state" msgid="729192782197290385">"មិនស្គាល់ស្ថានភាពមេឌៀខាងក្រៅ។"</string>
- <string name="share" msgid="1778686618230011964">"ចែករំលែក"</string>
+ <string name="share" msgid="1778686618230011964">"ចែករំលែក"</string>
<string name="find" msgid="4808270900322985960">"រក"</string>
<string name="websearch" msgid="4337157977400211589">"ស្វែងរកតាមបណ្ដាញ"</string>
<string name="find_next" msgid="5742124618942193978">"រកបន្ទាប់"</string>
@@ -1561,7 +1561,7 @@
<string name="sync_undo_deletes" msgid="2941317360600338602">"មិនធ្វើការលុបវិញ"</string>
<string name="sync_do_nothing" msgid="3743764740430821845">"មិនធ្វើអ្វីទេឥឡូវ"</string>
<string name="choose_account_label" msgid="5655203089746423927">"ជ្រើសគណនី"</string>
- <string name="add_account_label" msgid="2935267344849993553">"បន្ថែមគណនីថ្មី"</string>
+ <string name="add_account_label" msgid="2935267344849993553">"បន្ថែមគណនីថ្មី"</string>
<string name="add_account_button_label" msgid="3611982894853435874">"បន្ថែមគណនី"</string>
<string name="number_picker_increment_button" msgid="2412072272832284313">"បង្កើន"</string>
<string name="number_picker_decrement_button" msgid="476050778386779067">"បន្ថយ"</string>
@@ -1580,15 +1580,15 @@
<string name="date_picker_increment_year_button" msgid="6318697384310808899">"បង្កើនឆ្នាំ"</string>
<string name="date_picker_decrement_year_button" msgid="4482021813491121717">"បន្ថយឆ្នាំ"</string>
<string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Alt"</string>
- <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះបង់"</string>
+ <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះបង់"</string>
<string name="keyboardview_keycode_delete" msgid="3337914833206635744">"លុប"</string>
<string name="keyboardview_keycode_done" msgid="1992571118466679775">"រួចរាល់"</string>
<string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"ប្ដូររបៀប"</string>
<string name="keyboardview_keycode_shift" msgid="2270748814315147690">"Shift"</string>
<string name="keyboardview_keycode_enter" msgid="2985864015076059467">"Enter"</string>
- <string name="activitychooserview_choose_application" msgid="2125168057199941199">"ជ្រើសកម្មវិធី"</string>
+ <string name="activitychooserview_choose_application" msgid="2125168057199941199">"ជ្រើសកម្មវិធី"</string>
<string name="activitychooserview_choose_application_error" msgid="8624618365481126668">"មិនអាចចាប់ផ្ដើម <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="shareactionprovider_share_with" msgid="806688056141131819">"ចែករំលែកជាមួយ"</string>
+ <string name="shareactionprovider_share_with" msgid="806688056141131819">"ចែករំលែកជាមួយ"</string>
<string name="shareactionprovider_share_with_application" msgid="5627411384638389738">"ចែករំលែកជាមួយ <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="content_description_sliding_handle" msgid="415975056159262248">"គ្រប់គ្រងការរុញ។ ប៉ះ & សង្កត់។"</string>
<string name="description_target_unlock_tablet" msgid="3833195335629795055">"អូស ដើម្បីដោះសោ។"</string>
@@ -1602,7 +1602,7 @@
<string name="storage_internal" msgid="4891916833657929263">"ឧបករណ៍ផ្ទុកខាងក្នុង"</string>
<string name="storage_sd_card" msgid="3282948861378286745">"កាតអេសឌី"</string>
<string name="storage_usb" msgid="3017954059538517278">"ឧបករណ៍ផ្ទុកយូអេសប៊ី"</string>
- <string name="extract_edit_menu_button" msgid="8940478730496610137">"កែសម្រួល"</string>
+ <string name="extract_edit_menu_button" msgid="8940478730496610137">"កែសម្រួល"</string>
<string name="data_usage_warning_title" msgid="1955638862122232342">"ការព្រមានប្រើទិន្នន័យ"</string>
<string name="data_usage_warning_body" msgid="2814673551471969954">"ប៉ះ ដើម្បីមើលការប្រើ និងការកំណត់។"</string>
<string name="data_usage_3g_limit_title" msgid="4361523876818447683">"បានដល់ដែនកំណត់ទិន្នន័យ 2G-3G"</string>
@@ -1661,7 +1661,7 @@
<string name="media_route_status_available" msgid="6983258067194649391">"ទំនេរ"</string>
<string name="media_route_status_not_available" msgid="6739899962681886401">"មិនទំនេរ"</string>
<string name="media_route_status_in_use" msgid="4533786031090198063">"កំពុងប្រើ"</string>
- <string name="display_manager_built_in_display_name" msgid="2583134294292563941">"អេក្រង់ជាប់"</string>
+ <string name="display_manager_built_in_display_name" msgid="2583134294292563941">"អេក្រង់ជាប់"</string>
<string name="display_manager_hdmi_display_name" msgid="1555264559227470109">"អេក្រង់ HDMI"</string>
<string name="display_manager_overlay_display_name" msgid="5142365982271620716">"#<xliff:g id="ID">%1$d</xliff:g> ត្រួតគ្នា"</string>
<string name="display_manager_overlay_display_title" msgid="652124517672257172">"<xliff:g id="NAME">%1$s</xliff:g>: <xliff:g id="WIDTH">%2$d</xliff:g>x<xliff:g id="HEIGHT">%3$d</xliff:g>, <xliff:g id="DPI">%4$d</xliff:g> dpi"</string>
@@ -1688,7 +1688,7 @@
<string name="kg_login_too_many_attempts" msgid="6486842094005698475">"ព្យាយាមលំនាំច្រើនពេក"</string>
<string name="kg_login_instructions" msgid="1100551261265506448">"ដើម្បីដោះសោ ចូលក្នុងគណនី Google ។"</string>
<string name="kg_login_username_hint" msgid="5718534272070920364">"ឈ្មោះអ្នកប្រើ (អ៊ីមែល)"</string>
- <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់"</string>
+ <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់"</string>
<string name="kg_login_submit_button" msgid="5355904582674054702">"ចូល"</string>
<string name="kg_login_invalid_input" msgid="5754664119319872197">"ឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់មិនត្រឹមត្រូវ។"</string>
<string name="kg_login_account_recovery_hint" msgid="5690709132841752974">"ភ្លេចឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់របស់អ្នក?\nមើល "<b>"google.com/accounts/recovery"</b>" ។"</string>
@@ -1801,7 +1801,7 @@
<string name="mediasize_japanese_you4" msgid="2091777168747058008">"You4"</string>
<string name="mediasize_unknown_portrait" msgid="3088043641616409762">"មិនស្គាល់បញ្ឈរ"</string>
<string name="mediasize_unknown_landscape" msgid="4876995327029361552">"មិនស្គាល់ទេសភាព"</string>
- <string name="write_fail_reason_cancelled" msgid="7091258378121627624">"បានបោះបង់"</string>
+ <string name="write_fail_reason_cancelled" msgid="7091258378121627624">"បានបោះបង់"</string>
<string name="write_fail_reason_cannot_write" msgid="8132505417935337724">"កំហុសក្នុងការសរសេរមាតិកា"</string>
<string name="reason_unknown" msgid="6048913880184628119">"មិនស្គាល់"</string>
<string name="reason_service_unavailable" msgid="7824008732243903268">"មិនបានបើកសេវាកម្មបោះពុម្ព"</string>
diff --git a/core/res/res/values-lo-rLA/strings.xml b/core/res/res/values-lo-rLA/strings.xml
index 95c05d5..f811c85 100644
--- a/core/res/res/values-lo-rLA/strings.xml
+++ b/core/res/res/values-lo-rLA/strings.xml
@@ -770,7 +770,7 @@
<string name="permdesc_use_sip" msgid="2297804849860225257">"ອະນຸຍາດໃຫ້ແອັບຯສາມາດຮັບສາຍ ແລະໂທອອກຜ່ານ SIP ໄດ້"</string>
<string name="permlab_register_sim_subscription" msgid="3166535485877549177">"ລົງທະບຽນ SIM ການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມໃໝ່"</string>
<string name="permdesc_register_sim_subscription" msgid="2138909035926222911">"ອະນຸຍາດໃຫ້ແອັບຯລົງທະບຽນ SIM ການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມໃໝ່."</string>
- <string name="permlab_register_call_provider" msgid="108102120289029841">"ລົງທະບຽນການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມໃໝ່"</string>
+ <string name="permlab_register_call_provider" msgid="108102120289029841">"ລົງທະບຽນການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມໃໝ່"</string>
<string name="permdesc_register_call_provider" msgid="7034310263521081388">"ອະນຸຍາດໃຫ້ແອັບຯລົງທະບຽນການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມໃໝ່."</string>
<string name="permlab_connection_manager" msgid="1116193254522105375">"ຈັດການການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມ"</string>
<string name="permdesc_connection_manager" msgid="5925480810356483565">"ອະນຸຍາດໃຫ້ແອັບຯຈັດການການເຊື່ອມຕໍ່ໂທລະຄົມມະນາຄົມ."</string>
@@ -1811,7 +1811,7 @@
<string name="restr_pin_enter_old_pin" msgid="1462206225512910757">"PIN ປະຈຸບັນ"</string>
<string name="restr_pin_enter_new_pin" msgid="5959606691619959184">"ລະຫັດ PIN ໃໝ່"</string>
<string name="restr_pin_confirm_pin" msgid="8501523829633146239">"ຢືນຢັນລະຫັດ PIN ໃໝ່"</string>
- <string name="restr_pin_create_pin" msgid="8017600000263450337">"ສ້າງ PIN ສໍາລັບການປັບປຸງຂໍ້ຈໍາກັດ"</string>
+ <string name="restr_pin_create_pin" msgid="8017600000263450337">"ສ້າງ PIN ສໍາລັບການປັບປຸງຂໍ້ຈໍາກັດ"</string>
<string name="restr_pin_error_doesnt_match" msgid="2224214190906994548">"PIN ບໍ່ກົງກັນ. ລອງໃໝ່ອີກຄັ້ງ."</string>
<string name="restr_pin_error_too_short" msgid="8173982756265777792">"PIN ສັ້ນເກີນໄປ. ຕ້ອງມີຢ່າງໜ້ອຍ 4 ຫຼັກ."</string>
<plurals name="restr_pin_countdown">
diff --git a/core/res/res/values-mcc310-mnc120/config.xml b/core/res/res/values-mcc310-mnc120/config.xml
index 774732d..4b61688 100644
--- a/core/res/res/values-mcc310-mnc120/config.xml
+++ b/core/res/res/values-mcc310-mnc120/config.xml
@@ -31,4 +31,31 @@
<!-- If this value is true, The mms content-disposition field is supported correctly.
If false, Content-disposition fragments are ignored -->
<bool name="config_mms_content_disposition_support">false</bool>
+
+ <!-- An array of CDMA roaming indicators which means international roaming -->
+ <integer-array translatable="false" name="config_cdma_international_roaming_indicators" >
+ <item>2</item>
+ <item>74</item>
+ <item>124</item>
+ <item>125</item>
+ <item>126</item>
+ <item>157</item>
+ <item>158</item>
+ <item>159</item>
+ <item>193</item>
+ <item>194</item>
+ <item>195</item>
+ <item>196</item>
+ <item>197</item>
+ <item>198</item>
+ <item>228</item>
+ <item>229</item>
+ <item>230</item>
+ <item>231</item>
+ <item>232</item>
+ <item>233</item>
+ <item>234</item>
+ <item>235</item>
+ </integer-array>
+
</resources>
diff --git a/core/res/res/values-mcc311-mnc490/config.xml b/core/res/res/values-mcc311-mnc490/config.xml
index defe78d..d481c97 100644
--- a/core/res/res/values-mcc311-mnc490/config.xml
+++ b/core/res/res/values-mcc311-mnc490/config.xml
@@ -23,4 +23,31 @@
<!-- Sprint need a 70 ms delay for 3way call -->
<integer name="config_cdma_3waycall_flash_delay">70</integer>
+
+ <!-- An array of CDMA roaming indicators which means international roaming -->
+ <integer-array translatable="false" name="config_cdma_international_roaming_indicators" >
+ <item>2</item>
+ <item>74</item>
+ <item>124</item>
+ <item>125</item>
+ <item>126</item>
+ <item>157</item>
+ <item>158</item>
+ <item>159</item>
+ <item>193</item>
+ <item>194</item>
+ <item>195</item>
+ <item>196</item>
+ <item>197</item>
+ <item>198</item>
+ <item>228</item>
+ <item>229</item>
+ <item>230</item>
+ <item>231</item>
+ <item>232</item>
+ <item>233</item>
+ <item>234</item>
+ <item>235</item>
+ </integer-array>
+
</resources>
diff --git a/core/res/res/values-mcc311-mnc870/config.xml b/core/res/res/values-mcc311-mnc870/config.xml
index 24e55b1..98cb72e 100644
--- a/core/res/res/values-mcc311-mnc870/config.xml
+++ b/core/res/res/values-mcc311-mnc870/config.xml
@@ -27,4 +27,31 @@
<!-- Sprint need a 70 ms delay for 3way call -->
<integer name="config_cdma_3waycall_flash_delay">70</integer>
+
+ <!-- An array of CDMA roaming indicators which means international roaming -->
+ <integer-array translatable="false" name="config_cdma_international_roaming_indicators" >
+ <item>2</item>
+ <item>74</item>
+ <item>124</item>
+ <item>125</item>
+ <item>126</item>
+ <item>157</item>
+ <item>158</item>
+ <item>159</item>
+ <item>193</item>
+ <item>194</item>
+ <item>195</item>
+ <item>196</item>
+ <item>197</item>
+ <item>198</item>
+ <item>228</item>
+ <item>229</item>
+ <item>230</item>
+ <item>231</item>
+ <item>232</item>
+ <item>233</item>
+ <item>234</item>
+ <item>235</item>
+ </integer-array>
+
</resources>
diff --git a/core/res/res/values-mcc312-mnc530/config.xml b/core/res/res/values-mcc312-mnc530/config.xml
index 24e55b1..98cb72e 100644
--- a/core/res/res/values-mcc312-mnc530/config.xml
+++ b/core/res/res/values-mcc312-mnc530/config.xml
@@ -27,4 +27,31 @@
<!-- Sprint need a 70 ms delay for 3way call -->
<integer name="config_cdma_3waycall_flash_delay">70</integer>
+
+ <!-- An array of CDMA roaming indicators which means international roaming -->
+ <integer-array translatable="false" name="config_cdma_international_roaming_indicators" >
+ <item>2</item>
+ <item>74</item>
+ <item>124</item>
+ <item>125</item>
+ <item>126</item>
+ <item>157</item>
+ <item>158</item>
+ <item>159</item>
+ <item>193</item>
+ <item>194</item>
+ <item>195</item>
+ <item>196</item>
+ <item>197</item>
+ <item>198</item>
+ <item>228</item>
+ <item>229</item>
+ <item>230</item>
+ <item>231</item>
+ <item>232</item>
+ <item>233</item>
+ <item>234</item>
+ <item>235</item>
+ </integer-array>
+
</resources>
diff --git a/core/res/res/values-mcc415-mnc01/config.xml b/core/res/res/values-mcc415-mnc01/config.xml
new file mode 100644
index 0000000..95d30a4
--- /dev/null
+++ b/core/res/res/values-mcc415-mnc01/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2014, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources>
+ <bool name="config_use_sim_language_file">false</bool>
+</resources>
diff --git a/core/res/res/values-mcc416-mnc77/config.xml b/core/res/res/values-mcc416-mnc77/config.xml
new file mode 100644
index 0000000..95d30a4
--- /dev/null
+++ b/core/res/res/values-mcc416-mnc77/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2014, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources>
+ <bool name="config_use_sim_language_file">false</bool>
+</resources>
diff --git a/core/res/res/values-mcc432-mnc20/config.xml b/core/res/res/values-mcc432-mnc20/config.xml
new file mode 100644
index 0000000..95d30a4
--- /dev/null
+++ b/core/res/res/values-mcc432-mnc20/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2014, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources>
+ <bool name="config_use_sim_language_file">false</bool>
+</resources>
diff --git a/core/res/res/values-my-rMM/strings.xml b/core/res/res/values-my-rMM/strings.xml
index 1922b1b..8fe60c7 100644
--- a/core/res/res/values-my-rMM/strings.xml
+++ b/core/res/res/values-my-rMM/strings.xml
@@ -35,10 +35,10 @@
<string name="durationHourMinute" msgid="2741677355177402539">"<xliff:g id="HOURS">%1$d</xliff:g> နာရီ <xliff:g id="MINUTES">%2$d</xliff:g> မိနစ်"</string>
<string name="durationMinutes" msgid="3134226679883579347">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ်"</string>
<string name="durationMinute" msgid="7155301744174623818">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ်"</string>
- <string name="durationMinuteSeconds" msgid="1424656185379003751">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ် <xliff:g id="SECONDS">%2$d</xliff:g> စက္ကန့်"</string>
- <string name="durationMinuteSecond" msgid="3989228718067466680">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ် <xliff:g id="SECONDS">%2$d</xliff:g> စက္ကန့်"</string>
- <string name="durationSeconds" msgid="8050088505238241405">"<xliff:g id="SECONDS">%1$d</xliff:g> စက္ကန့်"</string>
- <string name="durationSecond" msgid="985669622276420331">"<xliff:g id="SECONDS">%1$d</xliff:g> စက္ကန့်"</string>
+ <string name="durationMinuteSeconds" msgid="1424656185379003751">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ် <xliff:g id="SECONDS">%2$d</xliff:g> စက္ကန့်"</string>
+ <string name="durationMinuteSecond" msgid="3989228718067466680">"<xliff:g id="MINUTES">%1$d</xliff:g> မိနစ် <xliff:g id="SECONDS">%2$d</xliff:g> စက္ကန့်"</string>
+ <string name="durationSeconds" msgid="8050088505238241405">"<xliff:g id="SECONDS">%1$d</xliff:g> စက္ကန့်"</string>
+ <string name="durationSecond" msgid="985669622276420331">"<xliff:g id="SECONDS">%1$d</xliff:g> စက္ကန့်"</string>
<string name="untitled" msgid="4638956954852782576">"<ခေါင်းစဉ်မဲ့>"</string>
<string name="ellipsis" msgid="7899829516048813237">"…"</string>
<string name="ellipsis_two_dots" msgid="1228078994866030736">"‥"</string>
@@ -47,7 +47,7 @@
<string name="defaultVoiceMailAlphaTag" msgid="2660020990097733077">"အသံစာပို့စနစ်"</string>
<string name="defaultMsisdnAlphaTag" msgid="2850889754919584674">"MSISDN1"</string>
<string name="mmiError" msgid="5154499457739052907">"ဆက်သွယ်မှုဆိုင်ရာပြသနာ သို့မဟုတ် မမှန်ကန်သောMMIကုတ်"</string>
- <string name="mmiFdnError" msgid="5224398216385316471">"သတ်မှတ်ခေါ်ဆိုနိုင်သောနံပါတ်များထံသာ ကန့်သတ်ထားသည်"</string>
+ <string name="mmiFdnError" msgid="5224398216385316471">"သတ်မှတ်ခေါ်ဆိုနိုင်သောနံပါတ်များထံသာ ကန့်သတ်ထားသည်"</string>
<string name="serviceEnabled" msgid="8147278346414714315">"ဝန်ဆောင်မှု လုပ်ဆောင်နိုင်မည်"</string>
<string name="serviceEnabledFor" msgid="6856228140453471041">"ဝန်ဆောင်မှု ရရှိမည်"</string>
<string name="serviceDisabled" msgid="1937553226592516411">"ဝန်ဆောင်မှုအား ရပ်ဆိုင်းသည်"</string>
@@ -57,10 +57,10 @@
<string name="mmiComplete" msgid="8232527495411698359">"MMI ပြီးဆုံးပါပြီ"</string>
<string name="badPin" msgid="9015277645546710014">"သင် ရိုက်ထည့်သော PIN ဟောင်းမှာ မမှန်ပါ။"</string>
<string name="badPuk" msgid="5487257647081132201">"သင်ရိုက် ထည့်သော PUK မှာ မမှန်ကန်ပါ။"</string>
- <string name="mismatchPin" msgid="609379054496863419">"သင် ရိုက်ထည့်ခဲ့သည့် PIN များ မတိုက်ဆိုင်ပါ။"</string>
- <string name="invalidPin" msgid="3850018445187475377">"နံပါတ်(၄)ခုမှ(၈)ခုအထိပါရှိသော ပင်နံပါတ်အားထည့်ပါ"</string>
- <string name="invalidPuk" msgid="8761456210898036513">"နံပါတ်(၈)ခုသို့မဟုတ် ထိုထက်ရှည်သောသော PUKအားထည့်သွင်းပါ"</string>
- <string name="needPuk" msgid="919668385956251611">"ဆင်းမ်ကဒ် ရဲ့ ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် သော့ကျနေပါသည်။ ဖွင့်ရန် ကုဒ်အားထည့်သွင်းပါ။"</string>
+ <string name="mismatchPin" msgid="609379054496863419">"သင် ရိုက်ထည့်ခဲ့သည့် PIN များ မတိုက်ဆိုင်ပါ။"</string>
+ <string name="invalidPin" msgid="3850018445187475377">"နံပါတ်(၄)ခုမှ(၈)ခုအထိပါရှိသော ပင်နံပါတ်အားထည့်ပါ"</string>
+ <string name="invalidPuk" msgid="8761456210898036513">"နံပါတ်(၈)ခုသို့မဟုတ် ထိုထက်ရှည်သောသော PUKအားထည့်သွင်းပါ"</string>
+ <string name="needPuk" msgid="919668385956251611">"ဆင်းမ်ကဒ် ရဲ့ ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် သော့ကျနေပါသည်။ ဖွင့်ရန် ကုဒ်အားထည့်သွင်းပါ။"</string>
<string name="needPuk2" msgid="4526033371987193070">"ဆင်းမ်ကဒ်အားမပိတ်ရန် PUK2အားထည့်သွင်းပါ"</string>
<string name="enablePin" msgid="209412020907207950">"မအောင်မြင်ပါ, SIM/RUIM သော့ကို အရင် သုံးခွင့်ပြုရန်"</string>
<plurals name="pinpuk_attempts">
@@ -73,24 +73,24 @@
<string name="ClirMmi" msgid="7784673673446833091">"အထွက်ခေါ်ဆိုခြင်းအိုင်ဒီ"</string>
<string name="ColpMmi" msgid="3065121483740183974">"လိုင်း ID ချိတ်ဆက်သည်"</string>
<string name="ColrMmi" msgid="4996540314421889589">"လိုင်း ID ချိတ်ဆက်မှု ကန့်သတ်ချက်များ"</string>
- <string name="CfMmi" msgid="5123218989141573515">"အဝင်ခေါ်ဆိုမှုအား ထပ်ဆင့်ပို့ခြင်း"</string>
- <string name="CwMmi" msgid="9129678056795016867">"ခေါ်ဆိုမှု စောင့်ဆိုင်းခြင်း"</string>
+ <string name="CfMmi" msgid="5123218989141573515">"အဝင်ခေါ်ဆိုမှုအား ထပ်ဆင့်ပို့ခြင်း"</string>
+ <string name="CwMmi" msgid="9129678056795016867">"ခေါ်ဆိုမှု စောင့်ဆိုင်းခြင်း"</string>
<string name="BaMmi" msgid="455193067926770581">"အဝင်ခေါ်ဆိုမှုအားတားဆီးခြင်း"</string>
<string name="PwdMmi" msgid="7043715687905254199">"လျှို့ဝှက်နံပါတ်/စာ ပြောင်းသည်"</string>
<string name="PinMmi" msgid="3113117780361190304">"ပင်နံပါတ်ပြောင်းသည်"</string>
<string name="CnipMmi" msgid="3110534680557857162">"ခေါ်ဆိုသောနံပါတ်တည်ရှိသည်"</string>
- <string name="CnirMmi" msgid="3062102121430548731">"ခေါ်ဆိုသောနံပါတ်အားကန့်သတ်ခြင်း"</string>
+ <string name="CnirMmi" msgid="3062102121430548731">"ခေါ်ဆိုသောနံပါတ်အားကန့်သတ်ခြင်း"</string>
<string name="ThreeWCMmi" msgid="9051047170321190368">"(၃)ယောက်ဆိုင်ပြောဆိုခြင်း"</string>
- <string name="RuacMmi" msgid="7827887459138308886">"စိတ်အနှောက်အယှက်ဖြစ်သော မလိုလားသည့်ခေါ်ဆိုမှုများအား ငြင်းဖယ်ခြင်း"</string>
+ <string name="RuacMmi" msgid="7827887459138308886">"စိတ်အနှောက်အယှက်ဖြစ်သော မလိုလားသည့်ခေါ်ဆိုမှုများအား ငြင်းဖယ်ခြင်း"</string>
<string name="CndMmi" msgid="3116446237081575808">"ခေါ်ဆိုသောနံပါတ် ပေးပို့မှု"</string>
- <string name="DndMmi" msgid="1265478932418334331">"မနှောက်ယှက်ပါနှင့်"</string>
- <string name="CLIRDefaultOnNextCallOn" msgid="429415409145781923">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်ထားသည်။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်ထားသည်။"</string>
- <string name="CLIRDefaultOnNextCallOff" msgid="3092918006077864624">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်ထားသည်။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်မထားပါ။"</string>
- <string name="CLIRDefaultOffNextCallOn" msgid="6179425182856418465">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်မထားပါ။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်ထားသည်။"</string>
- <string name="CLIRDefaultOffNextCallOff" msgid="2567998633124408552">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်မထားပါ။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်မထားပါ။"</string>
- <string name="serviceNotProvisioned" msgid="8614830180508686666">"ဝန်ဆောင်မှုအား ကန့်သတ်မထားပါ"</string>
+ <string name="DndMmi" msgid="1265478932418334331">"မနှောက်ယှက်ပါနှင့်"</string>
+ <string name="CLIRDefaultOnNextCallOn" msgid="429415409145781923">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်ထားသည်။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်ထားသည်။"</string>
+ <string name="CLIRDefaultOnNextCallOff" msgid="3092918006077864624">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်ထားသည်။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်မထားပါ။"</string>
+ <string name="CLIRDefaultOffNextCallOn" msgid="6179425182856418465">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်မထားပါ။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်ထားသည်။"</string>
+ <string name="CLIRDefaultOffNextCallOff" msgid="2567998633124408552">"ပုံသေအားဖြင့် ခေါ်ဆိုသူအိုင်ဒီ(Caller ID)အား ကန့်သတ်မထားပါ။ နောက်ထပ်အဝင်ခေါ်ဆိုမှု-ကန့်သတ်မထားပါ။"</string>
+ <string name="serviceNotProvisioned" msgid="8614830180508686666">"ဝန်ဆောင်မှုအား ကန့်သတ်မထားပါ"</string>
<string name="CLIRPermanent" msgid="3377371145926835671">"သင်သည် ခေါ်ဆိုသူ ID ဆက်တင်ကို မပြောင်းလဲနိုင်ပါ။"</string>
- <string name="RestrictedChangedTitle" msgid="5592189398956187498">"ဝင်ရောက်ကြည့်ရှုခြင်းကန့်သတ်ချက်အားပြောင်းထားသည်"</string>
+ <string name="RestrictedChangedTitle" msgid="5592189398956187498">"ဝင်ရောက်ကြည့်ရှုခြင်းကန့်သတ်ချက်အားပြောင်းထားသည်"</string>
<string name="RestrictedOnData" msgid="8653794784690065540">"ဒေတာဝန်ဆောင်မှုပိတ်ထားသည်။"</string>
<string name="RestrictedOnEmergency" msgid="6581163779072833665">"အရေးပေါ်ဝန်ဆောင်မှုပိတ်ထားသည်။"</string>
<string name="RestrictedOnNormal" msgid="4953867011389750673">"အသံဝန်ဆောင်မှုပိတ်ထားသည်။"</string>
@@ -111,25 +111,25 @@
<string name="serviceClassDataSync" msgid="7530000519646054776">"ထပ်တူ ကိုက်ညီခြင်း"</string>
<string name="serviceClassPacket" msgid="6991006557993423453">"Packet"</string>
<string name="serviceClassPAD" msgid="3235259085648271037">"PAD"</string>
- <string name="roamingText0" msgid="7170335472198694945">"ရုန်းမင်းအချက်ပြမီး ဖွင့်ထားခြင်း"</string>
+ <string name="roamingText0" msgid="7170335472198694945">"ရုန်းမင်းအချက်ပြမီး ဖွင့်ထားခြင်း"</string>
<string name="roamingText1" msgid="5314861519752538922">"ရုန်းမင်းအချက်ပြမီး ပိတ်ထားခြင်း"</string>
<string name="roamingText2" msgid="8969929049081268115">"ရုန်းမင်းအချက်ပြမီး လက်နေခြင်း"</string>
<string name="roamingText3" msgid="5148255027043943317">"ပတ်ဝန်းကျင်အနီးအနားပြင်ပ"</string>
<string name="roamingText4" msgid="8808456682550796530">"အဆောက်အဦးပြင်ပ"</string>
- <string name="roamingText5" msgid="7604063252850354350">"ရုန်းမင်း-ပိုမိုသင့်တော်သောစနစ်"</string>
+ <string name="roamingText5" msgid="7604063252850354350">"ရုန်းမင်း-ပိုမိုသင့်တော်သောစနစ်"</string>
<string name="roamingText6" msgid="2059440825782871513">"ရုန်းမင်း-ရရှိနိုင်သောစနစ်"</string>
<string name="roamingText7" msgid="7112078724097233605">"ရုန်းမင်း-ပူးပေါင်းလုပ်ဖော်ကိုင်ဖက်"</string>
<string name="roamingText8" msgid="5989569778604089291">"ရုန်းမင်း-အထူးတန်ဖိုးထားရသောလုပ်ဖော်ကိုင်ဖက်"</string>
- <string name="roamingText9" msgid="7969296811355152491">"ရုန်းမင်း-ဝန်ဆောင်မှုအပြည့်လုပ်ဆောင်မှု"</string>
+ <string name="roamingText9" msgid="7969296811355152491">"ရုန်းမင်း-ဝန်ဆောင်မှုအပြည့်လုပ်ဆောင်မှု"</string>
<string name="roamingText10" msgid="3992906999815316417">"ရုန်းမင်း-ဝန်ဆောင်မှုတစိတ်တပိုင်းလုပ်ဆောင်မှု"</string>
- <string name="roamingText11" msgid="4154476854426920970">"ရုန်းမင်းစာတမ်းဖွင့်ရန်"</string>
+ <string name="roamingText11" msgid="4154476854426920970">"ရုန်းမင်းစာတမ်းဖွင့်ရန်"</string>
<string name="roamingText12" msgid="1189071119992726320">"ရုန်းမင်းစာတမ်းပိတ်ထားရန်"</string>
<string name="roamingTextSearching" msgid="8360141885972279963">"ဆားဗစ်အားရှာဖွေနေသည်"</string>
- <string name="cfTemplateNotForwarded" msgid="1683685883841272560">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
+ <string name="cfTemplateNotForwarded" msgid="1683685883841272560">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
<string name="cfTemplateForwarded" msgid="1302922117498590521">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: <xliff:g id="DIALING_NUMBER">{1}</xliff:g>"</string>
- <string name="cfTemplateForwardedTime" msgid="9206251736527085256">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: <xliff:g id="DIALING_NUMBER">{1}</xliff:g> နောက် <xliff:g id="TIME_DELAY">{2}</xliff:g> စက္ကန့်"</string>
- <string name="cfTemplateRegistered" msgid="5073237827620166285">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
- <string name="cfTemplateRegisteredTime" msgid="6781621964320635172">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
+ <string name="cfTemplateForwardedTime" msgid="9206251736527085256">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: <xliff:g id="DIALING_NUMBER">{1}</xliff:g> နောက် <xliff:g id="TIME_DELAY">{2}</xliff:g> စက္ကန့်"</string>
+ <string name="cfTemplateRegistered" msgid="5073237827620166285">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
+ <string name="cfTemplateRegisteredTime" msgid="6781621964320635172">"<xliff:g id="BEARER_SERVICE_CODE">{0}</xliff:g>: ထပ်ဆင့်မပို့နိုင်ပါ"</string>
<string name="fcComplete" msgid="3118848230966886575">"ပုံစံကုတ်ပြီးဆုံးသည်"</string>
<string name="fcError" msgid="3327560126588500777">"ဆက်သွယ်မှုဆိုင်ရာပြသနာ သို့မဟုတ် တရားမဝင်သောပုံစံကုတ်"</string>
<string name="httpErrorOk" msgid="1191919378083472204">"ကောင်းပြီ"</string>
@@ -137,11 +137,11 @@
<string name="httpErrorLookup" msgid="4711687456111963163">"URL ကို ရှာဖွေ့ မတွေ့ရှိပါ"</string>
<string name="httpErrorUnsupportedAuthScheme" msgid="6299980280442076799">"ဆိုက် မှန်ကန်မှု စိစစ်ရေး စနစ်ကို ပံ့ပိုး မပေးပါ။"</string>
<string name="httpErrorAuth" msgid="1435065629438044534">"စစ်ဆေးမှု မအောင်မြင်ပါ"</string>
- <string name="httpErrorProxyAuth" msgid="1788207010559081331">"ပရိုစီဆာဗာမှတဆင့် အထောက်အထားပြခြင်းမအောင်မြင်ပါ"</string>
+ <string name="httpErrorProxyAuth" msgid="1788207010559081331">"ပရိုစီဆာဗာမှတဆင့် အထောက်အထားပြခြင်းမအောင်မြင်ပါ"</string>
<string name="httpErrorConnect" msgid="8714273236364640549">"ဆာဗာကို ဆက်သွယ်လို့ မရပါ"</string>
<string name="httpErrorIO" msgid="2340558197489302188">"ဆာဗာနဲ့ ဆက်သွယ်လို့ မရပါ။ နောက်မှ ပြန်လည်ကြိုးစားပါ"</string>
<string name="httpErrorTimeout" msgid="4743403703762883954">"ဆာဗာအားဆက်သွယ်မှု အချိန်ကုန်ဆုံးသွားပါသည်"</string>
- <string name="httpErrorRedirectLoop" msgid="8679596090392779516">"ဤစာမျက်နှာတွင် ဆာဗာအားတဆင့်လွှဲမှု များစွာပါဝင်သည်"</string>
+ <string name="httpErrorRedirectLoop" msgid="8679596090392779516">"ဤစာမျက်နှာတွင် ဆာဗာအားတဆင့်လွှဲမှု များစွာပါဝင်သည်"</string>
<string name="httpErrorUnsupportedScheme" msgid="5015730812906192208">"ပရိုတိုကောကို ပံ့ပိုး မပေးပါ။"</string>
<string name="httpErrorFailedSslHandshake" msgid="96549606000658641">"လုံခြုံစိတ်ချရသော ဆက်သွယ်မှု မရပါ"</string>
<string name="httpErrorBadUrl" msgid="3636929722728881972">"URL က အမှန်အကန် မဟုတ်သောကြောင့် စာမျက်နှာကို ဖွင့် လို့ မရပါ"</string>
@@ -153,23 +153,23 @@
<string name="contentServiceSyncNotificationTitle" msgid="397743349191901458">"ထပ်တူ ကိုက်ညီခြင်း"</string>
<string name="contentServiceTooManyDeletesNotificationDesc" msgid="8100981435080696431">"ဖျက်ရန် <xliff:g id="CONTENT_TYPE">%s</xliff:g> များစွာရှိ"</string>
<string name="low_memory" product="tablet" msgid="6494019234102154896">"တက်ဘလက်တွင် သိမ်းဆည်းသော နေရာ ကုန်သွားပါပြီ။ တချို့ ဖိုင်များ ဖျက်စီးခြင်းဖြင့် နေရာလွတ် ပြုလုပ်ပါ"</string>
- <string name="low_memory" product="watch" msgid="4415914910770005166">"သိုလှောင်ခန်း နေရာ ပြည့်နေပြီ။ နေရာ လွတ်လာရန် ဖိုင် အချို့ကို ဖျက်ပါ။"</string>
+ <string name="low_memory" product="watch" msgid="4415914910770005166">"သိုလှောင်ခန်း နေရာ ပြည့်နေပြီ။ နေရာ လွတ်လာရန် ဖိုင် အချို့ကို ဖျက်ပါ။"</string>
<string name="low_memory" product="tv" msgid="516619861191025923">"တီဗွီ၏ သိုလှောင်ရုံ ပြည့်နေ၏။ နေရာလွတ်ရရန် ဖိုင်တစ်ချို့အား ဖျက်ပစ်ပါ။"</string>
<string name="low_memory" product="default" msgid="3475999286680000541">"ဖုန်းတွင် သိမ်းဆည်းသော နေရာ ကုန်သွားပါပြီ။ တချို့ ဖိုင်များ ဖျက်စီးခြင်းဖြင့် နေရာလွတ် ပြုလုပ်ပါ"</string>
<string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ကွန်ရက်ကို စောင့်ကြည့်စစ်ဆေးခံရနိုင်သည်"</string>
<string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"အမျိုးအမည်မသိ တတိယ ပါတီဖြင့်"</string>
<string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> ဖြင့်"</string>
<string name="work_profile_deleted" msgid="5005572078641980632">"အလုပ်ပရိုဖိုင် ဖျက်ပြီးဖြစ်၏"</string>
- <string name="work_profile_deleted_description" msgid="6305147513054341102">"အက်ဒမင် အပလီကေးရှင်း ပျောက်နေသောကြောင့် အလုပ်ပရိုဖိုင် ပျက်သွားသည်။"</string>
- <string name="work_profile_deleted_details" msgid="226615743462361248">"အလုပ်ပရိုဖိုင် အက်ဒမင် အပလီကေးရှင်းပျောက်နေသည် သို့မဟုတ် ပျက်စီးနေသည်။ ထို့ကြောင့် သင့်အလုပ်ပရိုဖိုင်နှင့် ဆက်စပ်နေသော ဒေတာများအား ပယ်ဖျက်ခြင်းခံရမည်။ အကူအညီတောင်းခံရန် သင့်အက်ဒမင်အား ဆက်သွယ်ပါ။"</string>
- <string name="factory_reset_warning" msgid="5423253125642394387">"သင့်ကိရိယာအား ပယ်ဖျက်လိမ့်မည်"</string>
- <string name="factory_reset_message" msgid="4905025204141900666">"အက်ဒမင် အပလီကေးရှင်း၏ အစိတ်အပိုင်းများ ပျောက်နေသည် သို့မဟုတ် ပျက်စီးနေသည်။ သင့်ကိရိယာအား ပယ်ဖျက်လိမ့်မည်။ အကူအညီတောင်းခံရန် သင့်အက်ဒမင်အား ဆက်သွယ်ပါ။"</string>
+ <string name="work_profile_deleted_description" msgid="6305147513054341102">"အက်ဒမင် အပလီကေးရှင်း ပျောက်နေသောကြောင့် အလုပ်ပရိုဖိုင် ပျက်သွားသည်။"</string>
+ <string name="work_profile_deleted_details" msgid="226615743462361248">"အလုပ်ပရိုဖိုင် အက်ဒမင် အပလီကေးရှင်းပျောက်နေသည် သို့မဟုတ် ပျက်စီးနေသည်။ ထို့ကြောင့် သင့်အလုပ်ပရိုဖိုင်နှင့် ဆက်စပ်နေသော ဒေတာများအား ပယ်ဖျက်ခြင်းခံရမည်။ အကူအညီတောင်းခံရန် သင့်အက်ဒမင်အား ဆက်သွယ်ပါ။"</string>
+ <string name="factory_reset_warning" msgid="5423253125642394387">"သင့်ကိရိယာအား ပယ်ဖျက်လိမ့်မည်"</string>
+ <string name="factory_reset_message" msgid="4905025204141900666">"အက်ဒမင် အပလီကေးရှင်း၏ အစိတ်အပိုင်းများ ပျောက်နေသည် သို့မဟုတ် ပျက်စီးနေသည်။ သင့်ကိရိယာအား ပယ်ဖျက်လိမ့်မည်။ အကူအညီတောင်းခံရန် သင့်အက်ဒမင်အား ဆက်သွယ်ပါ။"</string>
<string name="me" msgid="6545696007631404292">"ကျွန်ုပ်"</string>
<string name="power_dialog" product="tablet" msgid="8545351420865202853">"Tabletဆိုင်ရာရွေးချယ်မှုများ"</string>
<string name="power_dialog" product="tv" msgid="6153888706430556356">"တီဗွီ ရွေးချယ်စရာများ"</string>
<string name="power_dialog" product="default" msgid="1319919075463988638">"ဖုန်းဆိုင်ရာရွေးချယ်မှုများ"</string>
<string name="silent_mode" msgid="7167703389802618663">"အသံတိတ်စနစ်"</string>
- <string name="turn_on_radio" msgid="3912793092339962371">"wirelessအားဖွင့်မည်"</string>
+ <string name="turn_on_radio" msgid="3912793092339962371">"wirelessအားဖွင့်မည်"</string>
<string name="turn_off_radio" msgid="8198784949987062346">"wirelessအားပိတ်မည်"</string>
<string name="screen_lock" msgid="799094655496098153">"ဖုန်းမျက်နှာပြင်အား သော့ချရန်"</string>
<string name="power_off" msgid="4266614107412865048">"စက်ပိတ်ပါ"</string>
@@ -177,10 +177,10 @@
<string name="silent_mode_vibrate" msgid="7072043388581551395">"တုန်ခါခြင်း ဖုန်းမြည်သံ"</string>
<string name="silent_mode_ring" msgid="8592241816194074353">"ဖုန်းမြည်သံဖွင့်ထားသည်"</string>
<string name="shutdown_progress" msgid="2281079257329981203">"စက်ပိတ်ပါမည်"</string>
- <string name="shutdown_confirm" product="tablet" msgid="3385745179555731470">"သင့်တက်ဘလက်အား စက်ပိတ်ပါမည်"</string>
+ <string name="shutdown_confirm" product="tablet" msgid="3385745179555731470">"သင့်တက်ဘလက်အား စက်ပိတ်ပါမည်"</string>
<string name="shutdown_confirm" product="tv" msgid="476672373995075359">"တီဗွီ ပိတ်သွားမည်။"</string>
- <string name="shutdown_confirm" product="watch" msgid="3490275567476369184">"သင်၏ ကြည့်ရှုမှု ပိတ်ပစ်မည်။"</string>
- <string name="shutdown_confirm" product="default" msgid="649792175242821353">"သင့်ဖုန်းအား စက်ပိတ်ပါမည်"</string>
+ <string name="shutdown_confirm" product="watch" msgid="3490275567476369184">"သင်၏ ကြည့်ရှုမှု ပိတ်ပစ်မည်။"</string>
+ <string name="shutdown_confirm" product="default" msgid="649792175242821353">"သင့်ဖုန်းအား စက်ပိတ်ပါမည်"</string>
<string name="shutdown_confirm_question" msgid="2906544768881136183">"သင်က ပိတ်ပစ်မှာကို လိုပါသလား?"</string>
<string name="reboot_safemode_title" msgid="7054509914500140361">"safe mode ဖြင့် ပြန်လည် စ တင်ရန်"</string>
<string name="reboot_safemode_confirm" msgid="55293944502784668">"safe mode ကို ပြန်လည် စတင် မလား? ဒီလို စတင်ခြင်းဟာ သင် သွင်းထားသော တတိယပါတီ အပလီကေးရှင်းများအား ရပ်ဆိုင်းထားပါမည်။ ပုံမှန်အတိုင်း ပြန်စလျှင် ထိုအရာများ ပြန်လည် ရောက်ရှိလာပါမည်။"</string>
@@ -196,9 +196,9 @@
<string name="bugreport_message" msgid="398447048750350456">"သင့်ရဲ့ လက်ရှိ စက်အခြေအနေ အချက်အလက်များကို အီးမေးလ် အနေဖြင့် ပေးပို့ရန် စုဆောင်းပါမည်။ အမှားရှာဖွေပြင်ဆင်မှုမှတ်တမ်းမှ ပေးပို့ရန် အသင့်ဖြစ်သည်အထိ အချိန် အနည်းငယ်ကြာမြင့်မှာ ဖြစ်သဖြင့် သည်းခံပြီး စောင့်ပါရန်"</string>
<string name="global_action_toggle_silent_mode" msgid="8219525344246810925">"အသံတိတ်စနစ်"</string>
<string name="global_action_silent_mode_on_status" msgid="3289841937003758806">"အသံပိတ်ထားသည်"</string>
- <string name="global_action_silent_mode_off_status" msgid="1506046579177066419">"အသံဖွင့်ထားသည်"</string>
+ <string name="global_action_silent_mode_off_status" msgid="1506046579177066419">"အသံဖွင့်ထားသည်"</string>
<string name="global_actions_toggle_airplane_mode" msgid="5884330306926307456">"လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်"</string>
- <string name="global_actions_airplane_mode_on_status" msgid="2719557982608919750">"လေယဥ်ပျံပေါ်၌အသုံးပြုသောစနစ်ဖွင့်ထားသည်"</string>
+ <string name="global_actions_airplane_mode_on_status" msgid="2719557982608919750">"လေယဥ်ပျံပေါ်၌အသုံးပြုသောစနစ်ဖွင့်ထားသည်"</string>
<string name="global_actions_airplane_mode_off_status" msgid="5075070442854490296">"လေယဥ်ပျံပေါ်၌အသုံးပြုသောစနစ်ပိတ်ထားသည်"</string>
<string name="global_action_settings" msgid="1756531602592545966">"ဆက်တင်များ"</string>
<string name="global_action_lockdown" msgid="8751542514724332873">"ယခု သော့ပိတ်ရန်"</string>
@@ -209,13 +209,13 @@
<string name="managed_profile_label" msgid="6260850669674791528">"အလုပ်"</string>
<string name="permgrouplab_costMoney" msgid="5429808217861460401">"သင်ငွေကုန်ကျမည်ဖြစ်သောဝန်ဆောင်မှုများ"</string>
<string name="permgroupdesc_costMoney" msgid="3293301903409869495">"သင်ပိုက်ဆံကုန်ကျစေသော အရာများ ပြုလုပ်ခြင်း"</string>
- <string name="permgrouplab_messages" msgid="7521249148445456662">"သင့်စာများ"</string>
- <string name="permgroupdesc_messages" msgid="7821999071003699236">"Read and write သင်၏ စာတို၊ အီးမေးလ်၊ နှင့် အခြား စာများကို ဖတ်ခြင်း နှင့် ရေးခြင်း။"</string>
- <string name="permgrouplab_personalInfo" msgid="3519163141070533474">"သင့်ကိုယ်ပိုင်ရေးရာအချက်အလက်များ"</string>
+ <string name="permgrouplab_messages" msgid="7521249148445456662">"သင့်စာများ"</string>
+ <string name="permgroupdesc_messages" msgid="7821999071003699236">"Read and write သင်၏ စာတို၊ အီးမေးလ်၊ နှင့် အခြား စာများကို ဖတ်ခြင်း နှင့် ရေးခြင်း။"</string>
+ <string name="permgrouplab_personalInfo" msgid="3519163141070533474">"သင့်ကိုယ်ပိုင်ရေးရာအချက်အလက်များ"</string>
<string name="permgroupdesc_personalInfo" msgid="8426453129788861338">"အဆက်အသွယ်ကဒ်ထဲ၌ သိမ်းဆည်းထားသော သင့် သတင်းအချက်အလက်များအား တိုက်ရိုက်အသုံးပြုခွင့် ရယူရန်"</string>
<string name="permgrouplab_socialInfo" msgid="5799096623412043791">"သင်၏ ဆိုရှယ် သတင်းအချက်အလက်"</string>
<string name="permgroupdesc_socialInfo" msgid="7129842457611643493">"သင်၏ အဆက်အသွယ်များနှင့် ဆိုရှယ်လ် အဆက်အသွယ်များအား၏ သတင်းအချက်အလက်များအား တိုက်ရိုက်အသုံးပြုခွင့် ရယူရန်"</string>
- <string name="permgrouplab_location" msgid="635149742436692049">"သင့်တည်နေရာ"</string>
+ <string name="permgrouplab_location" msgid="635149742436692049">"သင့်တည်နေရာ"</string>
<string name="permgroupdesc_location" msgid="5704679763124170100">"သင် ရောက်ရှိနေသော တည်နေရာကို စောင့်ကြည့်ခြင်း"</string>
<string name="permgrouplab_network" msgid="5808983377727109831">"ကွန်ယက်ဆက်သွယ်မှု"</string>
<string name="permgroupdesc_network" msgid="4478299413241861987">"ကွန်ရက် စွမ်းဆောင်ချက် အမျိုးမျိုးအသုံးပြုခွင့်ပေးရန်"</string>
@@ -253,16 +253,16 @@
<string name="permgroupdesc_statusBar" msgid="6242593432226807171">"စက်ရဲ့ အခြေအနေပြ ဘား ဆက်တင်အား ပြင်ဆင်ရန်"</string>
<string name="permgrouplab_syncSettings" msgid="3341990986147826541">"ထပ်တူပြုဆက်တင်များ"</string>
<string name="permgroupdesc_syncSettings" msgid="7603195265129031797">"ထပ်တူညီအောင်လုပ်ရန်ဆက်တင်အား အသုံးပြုခွင့်ပေးရန်"</string>
- <string name="permgrouplab_accounts" msgid="3359646291125325519">"သင့်အကောင့်များ"</string>
- <string name="permgroupdesc_accounts" msgid="4948732641827091312">"ရရိှနိုင်သောအကောင့်များကို အသုံးပြုရန်"</string>
+ <string name="permgrouplab_accounts" msgid="3359646291125325519">"သင့်အကောင့်များ"</string>
+ <string name="permgroupdesc_accounts" msgid="4948732641827091312">"ရရိှနိုင်သောအကောင့်များကို အသုံးပြုရန်"</string>
<string name="permgrouplab_hardwareControls" msgid="7998214968791599326">"စက်ပစ္စည်းအား ထိန်းချုပ်ရန်"</string>
<string name="permgroupdesc_hardwareControls" msgid="4357057861225462702">"ဖုန်း၏ စက်ပိုင်းဆိုင်ရာကို တိုက်ရိုက်ဝင်ရောက်ရန်"</string>
<string name="permgrouplab_phoneCalls" msgid="9067173988325865923">"ဖုန်းခေါ်ဆိုမှုများ"</string>
- <string name="permgroupdesc_phoneCalls" msgid="7489701620446183770">"ဖုန်းခေါ်ဆိုမှုများကို စောင့်ကြည့်စစ်ဆေးခြင်း၊ မှတ်တမ်းတင်ခြင်းနှင့် စီမံခြင်း"</string>
+ <string name="permgroupdesc_phoneCalls" msgid="7489701620446183770">"ဖုန်းခေါ်ဆိုမှုများကို စောင့်ကြည့်စစ်ဆေးခြင်း၊ မှတ်တမ်းတင်ခြင်းနှင့် စီမံခြင်း"</string>
<string name="permgrouplab_systemTools" msgid="4652191644082714048">"စစ်စတန်ကိရိယာများ"</string>
- <string name="permgroupdesc_systemTools" msgid="8162102602190734305">"အဆင့်နိမ့်ဝင်ရောက်ကြည့်ခြင်းနှင့် စနစ်ကိုထိန်းချုပ်ခြင်း"</string>
+ <string name="permgroupdesc_systemTools" msgid="8162102602190734305">"အဆင့်နိမ့်ဝင်ရောက်ကြည့်ခြင်းနှင့် စနစ်ကိုထိန်းချုပ်ခြင်း"</string>
<string name="permgrouplab_developmentTools" msgid="3446164584710596513">"ဖွံ့ဖိြုးတိုးတက်မှုဆိုင်ရာ ကိရိယာများ"</string>
- <string name="permgroupdesc_developmentTools" msgid="7058828032358142018">"appကို တိုးတက်ပြုစုကြသူတို့သာ လိုအပ်နိုင်သည့် အင်္ဂါရပ်များ ဖြစ်သည်။"</string>
+ <string name="permgroupdesc_developmentTools" msgid="7058828032358142018">"appကို တိုးတက်ပြုစုကြသူတို့သာ လိုအပ်နိုင်သည့် အင်္ဂါရပ်များ ဖြစ်သည်။"</string>
<string name="permgrouplab_display" msgid="4279909676036402636">"တခြား အပလီကေးရှင်း အသွင်အပြင်"</string>
<string name="permgroupdesc_display" msgid="6051002031933013714">"တခြားအပလီကေးရှင်းများရဲ့ အသွင်အပြင်ကို အကျိုးသက်ရောက်စေရန်"</string>
<string name="permgrouplab_storage" msgid="1971118770546336966">"သိုလှောင်မှုများ"</string>
@@ -279,45 +279,45 @@
<string name="capability_title_canRequestFilterKeyEvents" msgid="2103440391902412174">"ရိုက်သောစာများကို သေချာစွာ စစ်ဆေးပါ"</string>
<string name="capability_desc_canRequestFilterKeyEvents" msgid="7463135292204152818">"အရေးကြီးသော ကိုယ်ရေးအချက်အလက်များဖြစ်တဲ့ ခရက်ဒစ်ကဒ်နံပါတ်များနှင့် စကားဝှက်များ ပါဝင်ပါတယ်."</string>
<string name="permlab_statusBar" msgid="7417192629601890791">"အခြေအနေပြဘားအား အလုပ်မလုပ်ခိုင်းရန်သို့မဟုတ် မွမ်းမံရန်"</string>
- <string name="permdesc_statusBar" msgid="8434669549504290975">"appအား အခြေအနေပြ ဘားကို ပိတ်ခွင့် သို့မဟတ် စနစ် အိုင်ကွန်များကို ထည့်ခြင်း ဖယ်ရှားခြင်း ပြုလုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_statusBar" msgid="8434669549504290975">"appအား အခြေအနေပြ ဘားကို ပိတ်ခွင့် သို့မဟတ် စနစ် အိုင်ကွန်များကို ထည့်ခြင်း ဖယ်ရှားခြင်း ပြုလုပ်ခွင့် ပြုသည်။"</string>
<string name="permlab_statusBarService" msgid="7247281911387931485">"အခြေအနေပြနေရာ"</string>
- <string name="permdesc_statusBarService" msgid="716113660795976060">"appအား အခြေအနေပြ ဘားဖြစ်ခွင့် ပြုသည်။"</string>
- <string name="permlab_expandStatusBar" msgid="1148198785937489264">"အခြေအနေပြဘားအား ချဲ့/ပြန့်ခြင်း"</string>
- <string name="permdesc_expandStatusBar" msgid="6917549437129401132">"appအား အခြေအနေပြ ဘားကို ချဲ့ခွင့် သို့မဟုတ် ခေါက်သိမ်းခွင့် ပြုသည်။"</string>
+ <string name="permdesc_statusBarService" msgid="716113660795976060">"appအား အခြေအနေပြ ဘားဖြစ်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_expandStatusBar" msgid="1148198785937489264">"အခြေအနေပြဘားအား ချဲ့/ပြန့်ခြင်း"</string>
+ <string name="permdesc_expandStatusBar" msgid="6917549437129401132">"appအား အခြေအနေပြ ဘားကို ချဲ့ခွင့် သို့မဟုတ် ခေါက်သိမ်းခွင့် ပြုသည်။"</string>
<string name="permlab_install_shortcut" msgid="4279070216371564234">"အတိုကောက်များအား ထည့်သွင်းခြင်း"</string>
<string name="permdesc_install_shortcut" msgid="8341295916286736996">"အပလီကေးရှင်းအား အသုံးပြုသူ လုပ်ဆောင်ခြင်း မပါပဲ ပင်မ မြင်ကွင်းအား ပြောင်းလဲခွင့် ပေးခြင်း"</string>
<string name="permlab_uninstall_shortcut" msgid="4729634524044003699">"အတိုကောက်များ ဖယ်ထုတ်ခြင်း"</string>
<string name="permdesc_uninstall_shortcut" msgid="6745743474265057975">"အပလီကေးရှင်းအား အသုံးပြုသူ လုပ်ဆောင်ခြင်း မပါပဲ ပင်မ မြင်ကွင်းအား ဖယ်ရှားခွင့် ပေးခြင်း"</string>
<string name="permlab_processOutgoingCalls" msgid="3906007831192990946">"အထွက် ခေါ်ဆိုမှုများအား လမ်းလွှဲပြောင်းခြင်း"</string>
- <string name="permdesc_processOutgoingCalls" msgid="5156385005547315876">"appအား အပြင်သို့ ဖုန်းခေါ်ဆိုမှု အတွင်းမှာ ဆက်ခဲ့သည့် နံပါတ်ကို ကြည့်နိုင်ကာ ခေါ်ဆိုမှုကို အခြား နံပါတ် တစ်ခုသို့ ပြောင်းလဲပစ်ခြင်း သို့မဟုတ် ခေါ်ဆိုမှုကို လုံးဝ ဖျက်သိမ်းခွင့် ပြုသည်။"</string>
+ <string name="permdesc_processOutgoingCalls" msgid="5156385005547315876">"appအား အပြင်သို့ ဖုန်းခေါ်ဆိုမှု အတွင်းမှာ ဆက်ခဲ့သည့် နံပါတ်ကို ကြည့်နိုင်ကာ ခေါ်ဆိုမှုကို အခြား နံပါတ် တစ်ခုသို့ ပြောင်းလဲပစ်ခြင်း သို့မဟုတ် ခေါ်ဆိုမှုကို လုံးဝ ဖျက်သိမ်းခွင့် ပြုသည်။"</string>
<string name="permlab_receiveSms" msgid="8673471768947895082">"စာပို့ခြင်းအား လက်ခံရယူခြင်း (စာတိုစနစ်)"</string>
- <string name="permdesc_receiveSms" msgid="6424387754228766939">"အပလီကေးရှင်းအား စာတိုများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
+ <string name="permdesc_receiveSms" msgid="6424387754228766939">"အပလီကေးရှင်းအား စာတိုများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
<string name="permlab_receiveMms" msgid="1821317344668257098">"စာပို့ခြင်းအား လက်ခံရယူခြင်း (ရုပ်သံစာ)"</string>
- <string name="permdesc_receiveMms" msgid="533019437263212260">"အပလီကေးရှင်းအား ရုပ်သံစာများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
- <string name="permlab_receiveEmergencyBroadcast" msgid="1803477660846288089">"အရေးပေါ်ထုတ်လွှင့်မှုများ လက်ခံခြင်း"</string>
- <string name="permdesc_receiveEmergencyBroadcast" msgid="848524070262431974">"appအား အရေးပေါ် ထုတ်လွှင့်သည့် စာများကို လက်ခံလျက် စီမံဆောင်ရွက်ခွင့် ပြုသည်။ ယင်း ခွင့်ပြုချက်မှာ စနစ် appများ အတွက်သာ ဖြစ်သည်။"</string>
+ <string name="permdesc_receiveMms" msgid="533019437263212260">"အပလီကေးရှင်းအား ရုပ်သံစာများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
+ <string name="permlab_receiveEmergencyBroadcast" msgid="1803477660846288089">"အရေးပေါ်ထုတ်လွှင့်မှုများ လက်ခံခြင်း"</string>
+ <string name="permdesc_receiveEmergencyBroadcast" msgid="848524070262431974">"appအား အရေးပေါ် ထုတ်လွှင့်သည့် စာများကို လက်ခံလျက် စီမံဆောင်ရွက်ခွင့် ပြုသည်။ ယင်း ခွင့်ပြုချက်မှာ စနစ် appများ အတွက်သာ ဖြစ်သည်။"</string>
<string name="permlab_readCellBroadcasts" msgid="1598328843619646166">"စာတိုများ ဖြန့်ဝေခြင်းစနစ်အား ဖတ်ခြင်း"</string>
<string name="permdesc_readCellBroadcasts" msgid="6361972776080458979">"အပလီကေးရှင်းကို သင်၏ စက်ပစ္စည်းမှ လက်ခံရရှိသော အများလွှင့်ထုတ်ချက်များကို ဖတ်ရန် ခွင့်ပြုသည်။ အများလွှင့်ထုတ်ချက်များသည် အရေးပေါ်အခြေအနေများကို သင့်အား သတိပေးရန် အချို့ နေရာများတွင် ပို့ပေးသည်။ အရေးပေါ်သတိပေးချက် ထုတ်လွှင့်ချက်ကို လက်ခံရရှိချိန်တွင်အန္တရာယ် ဖြစ်စေနိုင်သော အပလီကေးရှင်းများသည် သင့်စက်ပစ္စည်း၏ လုပ်ငန်းလည်ပတ်မှုနှင့် စွမ်းဆောင်မှုကို ဝင်စွက်ဖက်နိုင်သည်။"</string>
- <string name="permlab_sendSms" msgid="5600830612147671529">"စာတိုပို့စနစ်(SMS)ဖြင့် စာများ ပို့သည်"</string>
+ <string name="permlab_sendSms" msgid="5600830612147671529">"စာတိုပို့စနစ်(SMS)ဖြင့် စာများ ပို့သည်"</string>
<string name="permdesc_sendSms" msgid="7094729298204937667">"အပလီကေးရှင်းအား စာတိုပို့ခွင့် ပြုပါ။ မမျှော်လင့်သော ကုန်ကျမှု ဖြစ်နိုင်ပါသည်။ အန္တရာယ်ရှိ အပလီကေးရှင်းများမှ သင် မသိပဲ စာပို့ခြင်းများ ပြုလုပ်ခြင်းကြောင့် ပိုက်ဆံ အပို ကုန်စေနိုင်သည်"</string>
<string name="permlab_sendRespondViaMessageRequest" msgid="8713889105305943200">"စာပြန်မှုခြင်း အသိပေးခြင်း များ ပြုလုပ်ခြင်း"</string>
<string name="permdesc_sendRespondViaMessageRequest" msgid="7107648548468778734">"အပလီကေးရှင်းအား တခြား စာအပြန်အလှန် ပို့ဆောင်မှု ပေးသော အပလီကေးရှင်းများဆီကို ဖုန်းခေါ်ဆိုမှု များအတွက် စာပို့ခြင်းဖြင့် ပြန်လည် ဖြေဆိုသော တောင်းဆိုမှု များ ခွင့်ပြုခြင်း"</string>
<string name="permlab_readSms" msgid="8745086572213270480">"သင့်ရဲ့ စာပေးပို့ခြင်းများ ဖတ်ခြင်း (စာတို နှင့် ရုပ်သံစာ)"</string>
<string name="permdesc_readSms" product="tablet" msgid="2467981548684735522">"အပလီကေးရှင်းအား တက်ဘလက် သို့မဟုတ် ဆင်းမ်ကဒ်မှာ သိမ်းဆည်းထားသော စာတိုများ ဖတ်ရှုခွင့်ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် အကြာင်းအရာ သို့မဟုတ် ယုံကြည်စိတ်ချရမှုကို ဂရုမပြုပဲ စာတိုအားလုံးကို ဖတ်နိုင်ပါလိမ်မည်။"</string>
- <string name="permdesc_readSms" product="tv" msgid="5102425513647038535">"သင့်တီဗွီ သို့မဟုတ် ဆင်းမ်ကဒ်တွင် သိမ်းထားသည့် SMS စာများကို app အား ဖတ်ခွင့်ပြုပါ။ ထိုသို့ခွင့်ပြုခြင်းဖြင့် app သည် အကြောင်းအရာ သို့မဟုတ် ယုံကြည်စိတ်ချရမှု တို့နှင့် မသက်ဆိုင်ဘဲ၊ SMS စာများအားလုံးကို ဖတ်နိုင်မည်ဖြစ်၏။"</string>
+ <string name="permdesc_readSms" product="tv" msgid="5102425513647038535">"သင့်တီဗွီ သို့မဟုတ် ဆင်းမ်ကဒ်တွင် သိမ်းထားသည့် SMS စာများကို app အား ဖတ်ခွင့်ပြုပါ။ ထိုသို့ခွင့်ပြုခြင်းဖြင့် app သည် အကြောင်းအရာ သို့မဟုတ် ယုံကြည်စိတ်ချရမှု တို့နှင့် မသက်ဆိုင်ဘဲ၊ SMS စာများအားလုံးကို ဖတ်နိုင်မည်ဖြစ်၏။"</string>
<string name="permdesc_readSms" product="default" msgid="3695967533457240550">"အပလီကေးရှင်းအား ဖုန်း သို့မဟုတ် ဆင်းမ်ကဒ်မှာ သိမ်းဆည်းထားသော စာတိုများ ဖတ်ရှုခွင့်ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် အကြာင်းအရာ သို့မဟုတ် ယုံကြည်စိတ်ချရမှုကို ဂရုမပြုပဲ စာတိုအားလုံးကို ဖတ်နိုင်ပါလိမ်မည်။"</string>
<string name="permlab_writeSms" msgid="3216950472636214774">"သင့်ရဲ့ စာပေးပို့ခြင်းများ ပြင်ခြင်း (စာတို နှင့် ရုပ်သံစာ)"</string>
- <string name="permdesc_writeSms" product="tablet" msgid="5160413947794501538">"appအား သင်၏ တက်ဘလက် သို့မဟုတ် ဆင်းမ်ကဒ်ထဲမှာ သိုလှောင်ထားသည့် စာတိုများသို့ ရေးခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စာတိုမျာကို ဖျက်ပစ်နိုင်သည်။"</string>
- <string name="permdesc_writeSms" product="tv" msgid="955871498983538187">"App အား သင့်တီဗွီ သို့မဟုတ် စင်းမ်ကဒ်တွင် သိမ်းထားသော SMS စာတိုများကို ရေးခွင့်ပြုပါ။ အန္တရာယ်ရှိသော app များက သင့် စာတိုများအား ဖျက်ပစ်နိုင်သည်။"</string>
- <string name="permdesc_writeSms" product="default" msgid="7268668709052328567">"appအား သင်၏ ဖုန်း သို့မဟုတ် ဆင်းမ်ကဒ်ထဲမှာ သိုလှောင်ထားသည့် စာတိုများသို့ ရေးခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စာတိုမျာကို ဖျက်ပစ်နိုင်သည်။"</string>
+ <string name="permdesc_writeSms" product="tablet" msgid="5160413947794501538">"appအား သင်၏ တက်ဘလက် သို့မဟုတ် ဆင်းမ်ကဒ်ထဲမှာ သိုလှောင်ထားသည့် စာတိုများသို့ ရေးခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စာတိုမျာကို ဖျက်ပစ်နိုင်သည်။"</string>
+ <string name="permdesc_writeSms" product="tv" msgid="955871498983538187">"App အား သင့်တီဗွီ သို့မဟုတ် စင်းမ်ကဒ်တွင် သိမ်းထားသော SMS စာတိုများကို ရေးခွင့်ပြုပါ။ အန္တရာယ်ရှိသော app များက သင့် စာတိုများအား ဖျက်ပစ်နိုင်သည်။"</string>
+ <string name="permdesc_writeSms" product="default" msgid="7268668709052328567">"appအား သင်၏ ဖုန်း သို့မဟုတ် ဆင်းမ်ကဒ်ထဲမှာ သိုလှောင်ထားသည့် စာတိုများသို့ ရေးခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စာတိုမျာကို ဖျက်ပစ်နိုင်သည်။"</string>
<string name="permlab_receiveWapPush" msgid="5991398711936590410">"စာပို့ခြင်းအား လက်ခံရယူခြင်း (WAP)"</string>
- <string name="permdesc_receiveWapPush" msgid="748232190220583385">"အပလီကေးရှင်းအား WAP စာများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
+ <string name="permdesc_receiveWapPush" msgid="748232190220583385">"အပလီကေးရှင်းအား WAP စာများ လက်ခံခြင်း၊ ဆောင်ရွက်ခြင်း ခွင့်ပြုပါ။ ဤခွင့်ပြုချက်တွင် အပလီကေးရှင်းအနေဖြင့် သင် လက်ခံရရှိသော စာများအား သင့်အား မပြပဲစောင့်ကြည့်ခွင့်နှင့် ဖျက်ပစ်ခွင့်များ ပါဝင်ပါသည်။"</string>
<string name="permlab_receiveBluetoothMap" msgid="7593811487142360528">"Bluetooth စာများလက်ခံမည် (MAP)"</string>
<string name="permdesc_receiveBluetoothMap" msgid="8656755936919466345">"Bluetooth MAP စာများကို app မှလက်ခံကာ အလုပ်လုပ်ရန် ခွင့်ပြင်မည်။ ဆိုလိုသည်မှာ app သည်သင့်အား မပြသဘဲ သင့်ကိရိယာသို့ပို့လိုက်သည့် စာများကို ထိန်းချုပ်နိုင် သို့မဟုတ် ဖျက်နိုင်ပါသည်။"</string>
- <string name="permlab_getTasks" msgid="6466095396623933906">"အလုပ်လုပ်နေကြသည့် appများကို ရယူခြင်း"</string>
+ <string name="permlab_getTasks" msgid="6466095396623933906">"အလုပ်လုပ်နေကြသည့် appများကို ရယူခြင်း"</string>
<string name="permdesc_getTasks" msgid="7454215995847658102">"အပလီကေးရှင်းအား လက်ရှိနဲ့ လတ်တလော လုပ်ဆောင်ခဲ့သော သတင်းအချက်အလက် အသေးစိတ်အား ထုတ်ယူခွင့်ပြုရန်။ အပလီကေးရှင်းမှ သင် ဘယ် အပလီကေးရှင်းများသုံးရှိကြောင့် တွေ့ရှိနိုင်ပါသည်"</string>
<string name="permlab_startTasksFromRecents" msgid="8990073877885690623">"မကြာမီ ထဲက တာဝန် တစ်ခုကို စတင်ရန်"</string>
- <string name="permdesc_startTasksFromRecents" msgid="7382133554871222235">"appအား တက်ကြွမန်နေဂျာ။မကြာမီတာဝန်အင်ဖို အရာကို သုံးပြီး တက်ကြွမန်နေဂျာ။မကြာမီတာဝန်စာရင်းရယူ() ထံမှ ပြန်လာခဲ့သည့် ရပ်စဲခံလိုက်ရသည့် တာဝန်ကို ဖွင့်တင်ရန် အတွက် သုံးခွင့်ပြုသည်။"</string>
+ <string name="permdesc_startTasksFromRecents" msgid="7382133554871222235">"appအား တက်ကြွမန်နေဂျာ။မကြာမီတာဝန်အင်ဖို အရာကို သုံးပြီး တက်ကြွမန်နေဂျာ။မကြာမီတာဝန်စာရင်းရယူ() ထံမှ ပြန်လာခဲ့သည့် ရပ်စဲခံလိုက်ရသည့် တာဝန်ကို ဖွင့်တင်ရန် အတွက် သုံးခွင့်ပြုသည်။"</string>
<string name="permlab_interactAcrossUsers" msgid="7114255281944211682">"အသုံးပြုသူများအကြား ဆက်ဆံခြင်း"</string>
<string name="permdesc_interactAcrossUsers" msgid="364670963623385786">"အပလီကေးရှင်းအား စက်ပေါ်ရှိ တစ်ယောက်ထက်ပိုသော အသုံးပြုသူများအတွက် လုပ်ဆောင်ချက်များ ပြုလုပ်ခွင့်ပေးပါ။ အန္တရာယ်ရှိသော အပလီကေးရှင်းများမှ ဒီအရာကို သုံးပြီး အသုံးပြုသူများအတွင်း ကာကွယ်မှုကို ဖောက်ဖျက်နိုင်ပါသည်"</string>
<string name="permlab_interactAcrossUsersFull" msgid="2567734285545074105">"အသုံးပြုသူများအကြား ဆက်ဆံရန် လိုင်စင် အပြည့်"</string>
@@ -326,9 +326,9 @@
<string name="permdesc_manageUsers" msgid="8409306667645355638">"အပလီကေးရှင်းအား အသုံးပြုသူများကို စီမံခန့်ခွဲခွင့် ပေးပါ။ ဥပမာ ကြည့်ရှုခြင်း၊ အသစ်ပြုလုပ်ခြင်း၊ ဖျက်စီးခြင်း"</string>
<string name="permlab_getDetailedTasks" msgid="6229468674753529501">"သုံးနေသော အပလီကေးရှင်းများ၏ အချက်အလက် ရယူခြင်း"</string>
<string name="permdesc_getDetailedTasks" msgid="153824741440717599">"အပလီကေးရှင်းအား လက်ရှိနဲ့ လတ်တလော လုပ်ဆောင်ခဲ့သော သတင်းအချက်အလက် အသေးစိတ်အား ထုတ်ယူခွင့်ပြုရန်။ အန္တရာယ်ရှိသော အပလီကေးရှင်းများမှ တခြား အပလီကေးရှင်းများရဲ့ အတွင်းကျသော သတင်းအချက်အလက်များအား တွေ့ရှိနိုင်ပါသည်။"</string>
- <string name="permlab_reorderTasks" msgid="2018575526934422779">"အလုပ်လုပ်နေကြသည့် appများကို ပြန်လည်စီစဉ်ခြင်း"</string>
+ <string name="permlab_reorderTasks" msgid="2018575526934422779">"အလုပ်လုပ်နေကြသည့် appများကို ပြန်လည်စီစဉ်ခြင်း"</string>
<string name="permdesc_reorderTasks" msgid="7734217754877439351">"အပလီကေးရှင်းအား နောက်ကွယ် နှင့် ရှေ့မှောက်တွင် လက်ရှိ လုပ်ဆောင်နေမှုများအား ဖယ်ခွင့် ပြုပါ။ သင့် ခွင့်ပြုချက်မပါပဲ လုပ်ဆောင်နိုင်ပါလိမ့်မည်"</string>
- <string name="permlab_removeTasks" msgid="6821513401870377403">"အလုပ်လုပ်နေကြသည့် appများကို ရပ်ခြင်း"</string>
+ <string name="permlab_removeTasks" msgid="6821513401870377403">"အလုပ်လုပ်နေကြသည့် appများကို ရပ်ခြင်း"</string>
<string name="permdesc_removeTasks" msgid="1394714352062635493">"အပလီကေးရှင်းအား စက်မှ လက်ရှိလုပ်ဆောင်နေမှုများအား ဖယ်ရှားခြင်းနှင့် ၎င်းတို့၏ အပလီကေးရှင်းများအား ရပ်တန့်စေရန် လုပ်ခွင့်ပြုပါ။ အန္တရာယ်ရှိ အပလီကေးရှင်းများက တခြား အပလီကေးရှင်းများ၏ အပြုအမူအား ဒုက္ခပေးနိုင်ပါသည်"</string>
<string name="permlab_manageActivityStacks" msgid="7391191384027303065">"လုပ်ဆောင်မှု စာရင်းများအား ထိန်းသိမ်းခြင်း"</string>
<string name="permdesc_manageActivityStacks" msgid="1615881933034084440">"အပလီကေးရှင်းအား တခြားအပလီကေးရှင်းများမှ လုပ်ဆောင်ချက်များအား ထပ်ထည့်ခွင့်၊ ဖယ်ခွင့်၊ ပြင်ဆင်ခွင့် ပေးခြင်း။ စိတ်ချရမှု မရှိသော အပလီကေးရှင်းဆိုလျှင် တခြား အပလီကေးရှင်းများရဲ့ လုပ်ငန်းဆောင်ရွက်ချက်များအား မှားယွင်းစေနိုင်ပါသည်"</string>
@@ -336,48 +336,48 @@
<string name="permdesc_startAnyActivity" msgid="997823695343584001">"ခွင့်ပြုချက်ကာကွယ်ခြင်း၊ သို့ အပြင်သို့ ထုတ်နိုင်မှု အခြေအနေများ မည်သို့ပင်ဖြစ်စေကာမူ အပလီကေးရှင်းအား လှုပ်ရှားမှုများအား စတင်ရန် ခွင့်ပြုပါ"</string>
<string name="permlab_setScreenCompatibility" msgid="6975387118861842061">"ဖန်သားပြင်နှင့် လိုက်ဖက်မှုကို သတ်မှတ်ရန်"</string>
<string name="permdesc_setScreenCompatibility" msgid="692043618693917374">"အပလီကေးရှင်းအား တခြား အပလီကေးရှင်းများ ဖန်သားပြင် ပြသမှုအား ထိန်းချုပ်ခွင့်ပြုပါ။ အန္တရာယ်ရှိ အပလီကေးရှင်းများက တခြားအပလီကေးရှင်းများ ဒုက္ခပေးနိုင်ပါသည်"</string>
- <string name="permlab_setDebugApp" msgid="3022107198686584052">"app ဒီဘာဂင် ဖွင့်ပေးခြင်း"</string>
+ <string name="permlab_setDebugApp" msgid="3022107198686584052">"app ဒီဘာဂင် ဖွင့်ပေးခြင်း"</string>
<string name="permdesc_setDebugApp" msgid="4474512416299013256">"အပလီကေးရှင်းအား တခြား အပလီကေးရှင်းအတွက် အမှားရှာဖွေပြင်ဆင်ခြင်း ခွင့်ပြုပါ။ အန္တရာယ်ရှိ အပလီကေးရှင်း ဒီခွင့်ပြုချက်အား သုံးပြီး တခြားအပလီကေးရှင်းအား ရပ်ပစ်နိုင်ပါသည်"</string>
<string name="permlab_changeConfiguration" msgid="4162092185124234480">"စနစ် ပြသမှုဆက်တင်များပြင်ရန်"</string>
<string name="permdesc_changeConfiguration" msgid="4372223873154296076">"အပလီကေးရှင်းအား လက်ရှိ အပြင်အဆင် ဥပမာ ဘာသာစကား၊ စာလုံးအကြီးအသေး များ ပြင်ခွင့် ပြုရန်"</string>
<string name="permlab_enableCarMode" msgid="5684504058192921098">"ကားမောင်းနေစဥ်စနစ်အား ရရှိစေခြင်း"</string>
- <string name="permdesc_enableCarMode" msgid="4853187425751419467">"appအား ကား မုဒ် ဖွင့်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_enableCarMode" msgid="4853187425751419467">"appအား ကား မုဒ် ဖွင့်ခွင့် ပြုသည်။"</string>
<string name="permlab_killBackgroundProcesses" msgid="3914026687420177202">"အခြား အပလီကေးရှင်းများအား ပိတ်ရန်"</string>
<string name="permdesc_killBackgroundProcesses" msgid="4593353235959733119">"အပလီကေးရှင်းအား နောက်ကွယ်တွင် ဖွင့်ထားသော အခြားအပလီကေးရှင်းများရဲ့ လုပ်ဆောင်မှုများအား ရပ်ခွင့်ပေးပါ။ ဒီလိုလုပ်ခြင်းဖြင့် အခြား အပလီကေးရှင်းများ ရပ်တန့်သွားနိုင်ပါသည်"</string>
<string name="permlab_forceStopPackages" msgid="2329627428832067700">"အခြား appများ ရပ်ပစ်ရန် အကြပ်ကိုင်ခြင်း"</string>
- <string name="permdesc_forceStopPackages" msgid="5253157296183940812">"appအား အခြား appများ၏ အလုပ်ကို အတင်းအကြပ် ရပ်ပစ်ခွင့် ရှိသည်။"</string>
+ <string name="permdesc_forceStopPackages" msgid="5253157296183940812">"appအား အခြား appများ၏ အလုပ်ကို အတင်းအကြပ် ရပ်ပစ်ခွင့် ရှိသည်။"</string>
<string name="permlab_forceBack" msgid="652935204072584616">"appကို ပိတ်သွားရန် အကြပ်ကိုင်ခြင်း"</string>
- <string name="permdesc_forceBack" msgid="3892295830419513623">"appအား အရှေ့ပိုင်းမှ မည်သည့် လှုပ်ရှားမှုကို မဆို ပိတ်ခွင့် နှင့် နောက်ကို ပို့ခွင့် ရှိသည်။ သာမန် appများ ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_forceBack" msgid="3892295830419513623">"appအား အရှေ့ပိုင်းမှ မည်သည့် လှုပ်ရှားမှုကို မဆို ပိတ်ခွင့် နှင့် နောက်ကို ပို့ခွင့် ရှိသည်။ သာမန် appများ ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_dump" msgid="1681799862438954752">"စနစ်၏စက်တွင်းအခြအေနေများထံ ပြန်ထုတ်ခြင်း"</string>
- <string name="permdesc_dump" msgid="1778299088692290329">"appအား စနစ်၏ အတွင်းပိုင်း အခြေအနေကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများသည် ၎င်းတို့ အနေနှင့် ပုံမှန် ဘယ်တော့မှ မလိုအပ်သည့် ကိုယ်ရေး နှင့် လုံခြုံမှု အချက်အလက် အမျိုးမျိုးကို ရယူနိုင်ကြသည်။"</string>
+ <string name="permdesc_dump" msgid="1778299088692290329">"appအား စနစ်၏ အတွင်းပိုင်း အခြေအနေကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများသည် ၎င်းတို့ အနေနှင့် ပုံမှန် ဘယ်တော့မှ မလိုအပ်သည့် ကိုယ်ရေး နှင့် လုံခြုံမှု အချက်အလက် အမျိုးမျိုးကို ရယူနိုင်ကြသည်။"</string>
<string name="permlab_retrieve_window_content" msgid="8022588608994589938">"ဖန်သားပြင်အကြောင်းအရာအားပြန်လည်ရယူရန်"</string>
- <string name="permdesc_retrieve_window_content" msgid="3193269069469700265">"appအား တက်ကြွ ဝင်ဒိုး၏ အကြောင်းအရာကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများက ဝင်ဒိုး၏ အကြောင်းအရာ တစ်ခုလုံးကို ရယူနိုင်ပြီး စကားဝှက်မှ လွဲပြီး ၎င်းထဲက စာသား တစ်ခုလုံးကို ဆန်းစစ်နိုင်သည်။"</string>
+ <string name="permdesc_retrieve_window_content" msgid="3193269069469700265">"appအား တက်ကြွ ဝင်ဒိုး၏ အကြောင်းအရာကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများက ဝင်ဒိုး၏ အကြောင်းအရာ တစ်ခုလုံးကို ရယူနိုင်ပြီး စကားဝှက်မှ လွဲပြီး ၎င်းထဲက စာသား တစ်ခုလုံးကို ဆန်းစစ်နိုင်သည်။"</string>
<string name="permlab_temporary_enable_accessibility" msgid="2312612135127310254">"ယာယီ ရယူခွင့် ပြုရန်"</string>
<string name="permdesc_temporary_enable_accessibility" msgid="8079456293182975464">"အပလီကေးရှင်းအား စက်အား ခဏတာ အသုံးပြုခွင့်ပေးပါ။ အန္တရာယ်ရှိ အပလီကေးရှင်းများမှ သုံးစွဲသူ မသိပဲ ရယူခြင်း လုပ်နိုင်ပါသည်"</string>
<string name="permlab_retrieveWindowToken" msgid="7154762602367758602">"ဝင်ဒိုး တိုကင်ကို ရယူခြင်း"</string>
- <string name="permdesc_retrieveWindowToken" msgid="668173747687795074">"အပလီကေးရှင်း တစ်ခုအား ဝင်ဒိုး တိုကင်ကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများက စနစ်လို အယောင်ဆောင်ကာ အပလီကေးရှင်း ဝင်ဒိုးနှင့် ခွင့်မပြုထားသည့် တုံ့ပြန်မှုကို ပြုလုပ်နိုင်သည်။"</string>
+ <string name="permdesc_retrieveWindowToken" msgid="668173747687795074">"အပလီကေးရှင်း တစ်ခုအား ဝင်ဒိုး တိုကင်ကို ရယူခွင့် ပြုသည်။ ကြံဖန် appများက စနစ်လို အယောင်ဆောင်ကာ အပလီကေးရှင်း ဝင်ဒိုးနှင့် ခွင့်မပြုထားသည့် တုံ့ပြန်မှုကို ပြုလုပ်နိုင်သည်။"</string>
<string name="permlab_frameStats" msgid="7056374987314361639">"ဘောင် စာရင်းအင်းများကို ရယူခြင်း"</string>
- <string name="permdesc_frameStats" msgid="4758001089491284919">"အပလီကေးရှင်း တစ်ခုအား မူဘောင် စာရင်းအင်းများကို စုစည်းစေနိုင်သည်။ ကြံဖန် appများက ဝင်ဒိုး၏ မူဘောင် စာရင်းအင်းများကို အခြား appများမှ စောင့်ကြည့်နိုင်သည်။"</string>
+ <string name="permdesc_frameStats" msgid="4758001089491284919">"အပလီကေးရှင်း တစ်ခုအား မူဘောင် စာရင်းအင်းများကို စုစည်းစေနိုင်သည်။ ကြံဖန် appများက ဝင်ဒိုး၏ မူဘောင် စာရင်းအင်းများကို အခြား appများမှ စောင့်ကြည့်နိုင်သည်။"</string>
<string name="permlab_filter_events" msgid="8675535648807427389">"အဖြစ်အပျက်များအား စစ်ထုတ်ခြင်း"</string>
<string name="permdesc_filter_events" msgid="8006236315888347680">"အပလီကေးရှင်းအား သုံးစွဲသူ လုပ်ဆောင်မှုကို မပြုလုပ်ခင် စစ်ဆေးပေးသော input filter မှတ်ပုံတင်ခွင့်ပြုရန်၊ အန္တရယယ် ရှိသော အပလီကေးရှင်းများမှ သုံးစွဲသူ မသိပဲ စနစ်ပုံရိပ်ပြမှုအား ထိန်းချုပ်နိုင်ပါသည်"</string>
<string name="permlab_shutdown" msgid="7185747824038909016">"တစိတ်တပိုင်းအားပိတ်ချရန်"</string>
- <string name="permdesc_shutdown" msgid="7046500838746291775">"လုပ်ဆောင်မှုမန်နေဂျာကို ပိတ်ထားသည့်အခြေအနေတွင်ထားသည်။ အပြီးပိတ်ခြင်းအား မပြုလုပ်ပါ။"</string>
+ <string name="permdesc_shutdown" msgid="7046500838746291775">"လုပ်ဆောင်မှုမန်နေဂျာကို ပိတ်ထားသည့်အခြေအနေတွင်ထားသည်။ အပြီးပိတ်ခြင်းအား မပြုလုပ်ပါ။"</string>
<string name="permlab_stopAppSwitches" msgid="4138608610717425573">"အပ်ပလီကေးရှင်းဖလှယ်ခြင်းမှ မဖြစ်စေရန်"</string>
- <string name="permdesc_stopAppSwitches" msgid="8262195802582255021">"အသုံးပြုသူကို အခြား appသို့ ခလုတ် ပြောင်းမရအောင် ဟန့်တားသည်။"</string>
+ <string name="permdesc_stopAppSwitches" msgid="8262195802582255021">"အသုံးပြုသူကို အခြား appသို့ ခလုတ် ပြောင်းမရအောင် ဟန့်တားသည်။"</string>
<string name="permlab_getTopActivityInfo" msgid="2537922311411546016">"အပလီကေးရှင်း အချက်အလက်များ ယူခြင်း"</string>
<string name="permdesc_getTopActivityInfo" msgid="2512448855496067131">"ကိုင်ဆောင်ထားသူအား လက်ရှိ အပလီကေးရှင်းမှ လျို့ဝှက် အချက်အလက်များအား ထုတ်ယူကြည့်ခွင့်ပြုခြင်း"</string>
- <string name="permlab_runSetActivityWatcher" msgid="892239094867182656">"app အားလုံး ဖွင့်တင်မှုကို စောင့်ကြည့်ခြင်း နှင့် ထိန်းချုပ်ခြင်း"</string>
- <string name="permdesc_runSetActivityWatcher" msgid="6003603162578577406">"appအား စနစ်မှ လှုပ်ရှားမှုများကို ဖွင့်လှစ်စတင်ပုံကို စောင့်ကြည့်လျက် ထိန်းချုပ်ခွင့် ပြုသည်။ ကြံဖန် appများက စနစ်ကို လုံးဝ ဖျက်ဆီးပစ်နိုင်ကြသည်။ ယင်း ခွင့်ပြုချက်မှာ တိုးတက်အောင် ပြုစုရာမှာသာ လိုအပ်ပြီး၊ ပုံမှန် အသုံးပြုမှု အတွက် လုံးဝ မဟုတ်ပါ။"</string>
+ <string name="permlab_runSetActivityWatcher" msgid="892239094867182656">"app အားလုံး ဖွင့်တင်မှုကို စောင့်ကြည့်ခြင်း နှင့် ထိန်းချုပ်ခြင်း"</string>
+ <string name="permdesc_runSetActivityWatcher" msgid="6003603162578577406">"appအား စနစ်မှ လှုပ်ရှားမှုများကို ဖွင့်လှစ်စတင်ပုံကို စောင့်ကြည့်လျက် ထိန်းချုပ်ခွင့် ပြုသည်။ ကြံဖန် appများက စနစ်ကို လုံးဝ ဖျက်ဆီးပစ်နိုင်ကြသည်။ ယင်း ခွင့်ပြုချက်မှာ တိုးတက်အောင် ပြုစုရာမှာသာ လိုအပ်ပြီး၊ ပုံမှန် အသုံးပြုမှု အတွက် လုံးဝ မဟုတ်ပါ။"</string>
<string name="permlab_broadcastPackageRemoved" msgid="2576333434893532475">"package ပယ်ဖျက်မှု ထုတ်လွှင့်မှုအား ပေးပို့ပါ"</string>
- <string name="permdesc_broadcastPackageRemoved" msgid="6621901216207931089">"appအား app အထုပ် တစ်ခုကို ဖယ်ရှားပစ်လိုက်ကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အလုပ်လုပ်နေသည့် မည့်သည့် appကို မဆို သတ်ပစ်နိုင်သည်။"</string>
- <string name="permlab_broadcastSmsReceived" msgid="5689095009030336593">"SMS-အားပို့ပြီး ထုတ်လွင့်မှုအားရယူခြင်း"</string>
- <string name="permdesc_broadcastSmsReceived" msgid="4152037720034365492">"appအား SMS ရရှိထားကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး ဝင်လာကြသည့် SMS စာများကို အတုလုပ်နိုင်သည်။"</string>
- <string name="permlab_broadcastWapPush" msgid="3145347413028582371">"WAP-PUSH-အားပို့ပြီး ထုတ်လွင့်မှုအားရယူခြင်း"</string>
- <string name="permdesc_broadcastWapPush" msgid="4783402525039442729">"appအား WAP PUSH စာ ရရှိထားကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး ရရှိခဲ့သည့်MMS စာများကို လုပ်ကြံနိုင်သလို၊ မည်သည့် ဝက်ဘ် စာမျက်နှာ၏ အကြောင်းအရာကို မဆို လုပ်ကြံချက်များဖြင့် တိတ်တိတ်ပုန်း အစားထိုးနိုင်သည်။"</string>
- <string name="permlab_setProcessLimit" msgid="2451873664363662666">"အလုပ်လုပ်နေသောလုပ်ငန်းစဥ်နှုန်းအား ကန့်သတ်ခြင်း"</string>
- <string name="permdesc_setProcessLimit" msgid="7318061314040879542">"appအား အလုပ်လုပ်ကြမည့် လုပ်ငန်းစဉ်များ၏ အများဆုံး အရေအတွက်ကို ထိန်းချုပ်ခွင့် ပြုနိုင်သည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_broadcastPackageRemoved" msgid="6621901216207931089">"appအား app အထုပ် တစ်ခုကို ဖယ်ရှားပစ်လိုက်ကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အလုပ်လုပ်နေသည့် မည့်သည့် appကို မဆို သတ်ပစ်နိုင်သည်။"</string>
+ <string name="permlab_broadcastSmsReceived" msgid="5689095009030336593">"SMS-အားပို့ပြီး ထုတ်လွင့်မှုအားရယူခြင်း"</string>
+ <string name="permdesc_broadcastSmsReceived" msgid="4152037720034365492">"appအား SMS ရရှိထားကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး ဝင်လာကြသည့် SMS စာများကို အတုလုပ်နိုင်သည်။"</string>
+ <string name="permlab_broadcastWapPush" msgid="3145347413028582371">"WAP-PUSH-အားပို့ပြီး ထုတ်လွင့်မှုအားရယူခြင်း"</string>
+ <string name="permdesc_broadcastWapPush" msgid="4783402525039442729">"appအား WAP PUSH စာ ရရှိထားကြောင်း အကြောင်းကြားစာကို ထုတ်လွင့်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး ရရှိခဲ့သည့်MMS စာများကို လုပ်ကြံနိုင်သလို၊ မည်သည့် ဝက်ဘ် စာမျက်နှာ၏ အကြောင်းအရာကို မဆို လုပ်ကြံချက်များဖြင့် တိတ်တိတ်ပုန်း အစားထိုးနိုင်သည်။"</string>
+ <string name="permlab_setProcessLimit" msgid="2451873664363662666">"အလုပ်လုပ်နေသောလုပ်ငန်းစဥ်နှုန်းအား ကန့်သတ်ခြင်း"</string>
+ <string name="permdesc_setProcessLimit" msgid="7318061314040879542">"appအား အလုပ်လုပ်ကြမည့် လုပ်ငန်းစဉ်များ၏ အများဆုံး အရေအတွက်ကို ထိန်းချုပ်ခွင့် ပြုနိုင်သည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_setAlwaysFinish" msgid="550958507798796965">"နောက်ခံ အပလီကေးရှင်းအား မဖြစ်မနေပိတ်ရန်"</string>
- <string name="permdesc_setAlwaysFinish" msgid="7471310652868841499">"appအား လှုပ်ရှားမှုများ နောက်ခံသို့ သွားကြသည့်နှင့် ပြီးဆုံးခြင်း ရှိမရှိကို အမြဲတမ်း ထိန်းချုပ်ခွင့် ရှိသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်ပါ။"</string>
+ <string name="permdesc_setAlwaysFinish" msgid="7471310652868841499">"appအား လှုပ်ရှားမှုများ နောက်ခံသို့ သွားကြသည့်နှင့် ပြီးဆုံးခြင်း ရှိမရှိကို အမြဲတမ်း ထိန်းချုပ်ခွင့် ရှိသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်ပါ။"</string>
<string name="permlab_batteryStats" msgid="2789610673514103364">"ဘတ်ထရီ အခြေအနေအား ဖတ်ရန်"</string>
<string name="permdesc_batteryStats" msgid="5897346582882915114">"အပလီကေးရှင်းအား အနိမ့်ပိုင်း စက် အချက်အလက် ဘက်ထရီ အခြေအနေကို ကြည့်ခွင့်ပြုပါ။ အပလီကေးရှင်းမှ သင် အသုံးပြုသော အပလီကေးရှင်းများ၏ အသေးစိတ် သတင်းအချက်အလက်များကို ရှာဖွေရန် ခွင့်ပြုပါ။"</string>
<string name="permlab_updateBatteryStats" msgid="3719689764536379557">"ဘက်ထရီ အချက်အလက်အား ပြင်ရန်"</string>
@@ -386,28 +386,28 @@
<string name="permdesc_getAppOpsStats" msgid="6243887041577912877">"အပလီကေးရှင်းကို အပလီကေးရှင်း အသုံးပြုမှု အချက်အလက် စာရင်းများအား ယူသုံးခွင့် ပြုခြင်း။ ပုံမှန် အပလီကေးရှင်းများအတွက် မဟုတ်ပါ"</string>
<string name="permlab_updateAppOpsStats" msgid="8829097373851521505">"အပလီကေးရှင်း အသုံးပြုမှုအား ပြင်ဆင်ခြင်း"</string>
<string name="permdesc_updateAppOpsStats" msgid="50784596594403483">"အပလီကေးရှင်းကို အပလီကေးရှင်း အသုံးပြုမှု အချက်အလက် စာရင်းများအား ပြောင်းလဲခွင့် ပြုခြင်း။ ပုံမှန် အပလီကေးရှင်းများအတွက် မဟုတ်ပါ"</string>
- <string name="permlab_backup" msgid="470013022865453920">"စနစ်အရန်သိမ်းဆည်းမှုနှင့် ပြန်လည်ရယူရန် ထိန်းချုပ်ခြင်း"</string>
- <string name="permdesc_backup" msgid="6912230525140589891">"appအား စနစ်၏ ဘက်အာပ် နှင့် ပြန်လည် ဖေါ်ထုတ်ရေး ယန္တရားကို ထိန်းချုပ်ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
- <string name="permlab_confirm_full_backup" msgid="5557071325804469102">"အပြည့်အဝအရန်သိမ်းဆည်းရန် သို့မဟုတ် ပြန်လည်ရယူခြင်းအောက်ပရေးရှင်းအား အတည်ပြုရန်"</string>
- <string name="permdesc_confirm_full_backup" msgid="1748762171637699562">"appအား ဘက်အာပ် အတည်ပြုရေး UI အပြည့်အဝကို ဖွင့်တင်ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
- <string name="permlab_internalSystemWindow" msgid="2148563628140193231">"ခွင့်မပြုထားသောဝင်ဒိုးမျာကို ဖော်ပြခြင်း"</string>
+ <string name="permlab_backup" msgid="470013022865453920">"စနစ်အရန်သိမ်းဆည်းမှုနှင့် ပြန်လည်ရယူရန် ထိန်းချုပ်ခြင်း"</string>
+ <string name="permdesc_backup" msgid="6912230525140589891">"appအား စနစ်၏ ဘက်အာပ် နှင့် ပြန်လည် ဖေါ်ထုတ်ရေး ယန္တရားကို ထိန်းချုပ်ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
+ <string name="permlab_confirm_full_backup" msgid="5557071325804469102">"အပြည့်အဝအရန်သိမ်းဆည်းရန် သို့မဟုတ် ပြန်လည်ရယူခြင်းအောက်ပရေးရှင်းအား အတည်ပြုရန်"</string>
+ <string name="permdesc_confirm_full_backup" msgid="1748762171637699562">"appအား ဘက်အာပ် အတည်ပြုရေး UI အပြည့်အဝကို ဖွင့်တင်ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
+ <string name="permlab_internalSystemWindow" msgid="2148563628140193231">"ခွင့်မပြုထားသောဝင်ဒိုးမျာကို ဖော်ပြခြင်း"</string>
<string name="permdesc_internalSystemWindow" msgid="7458387759461466397">"အပလီကေးရှင်း အတွင်းပိုင်းစနစ်သာ သုံးရန်သင့်သော ဝင်းဒိုးများ တည်ဆောက်ခွင့် ပြုပါ။ ပုံမှန် အပလီကေးရှင်းများအတွက် မရည်ရွယ်ပါ"</string>
<string name="permlab_systemAlertWindow" msgid="3543347980839518613">"တခြား အပလီကေးရှင်းပေါ်တွင် ထပ်ဆွဲရန်"</string>
<string name="permdesc_systemAlertWindow" msgid="8584678381972820118">"အပလီကေးရှင်းအား အခြားအပလီကေးရှင်းများ သို့ တခြား အသုံးပြုသူ မြင်ရသော နေရာများပေါ်တွင် ထပ်၍ ရေးဆွဲခွင့် ပေးသည်။ ဒီခွင့်ပြုမှုဟာ သင် အပလီကေးရှင်းများနဲ့ အသုံးပြုရန် စီစဉ်ထားမှု သို့ သင် မြင်ရသောမြင်ကွင်းအား ပြောင်းလဲမှု ဖြစ်စေနိုင်သည်"</string>
<string name="permlab_setAnimationScale" msgid="2805103241153907174">"တကမ္ဘာလုံးဆိုင်ရာ လှုပ်ရှားသက်ဝင်နှုန်းမွမ်းမံခြင်း"</string>
<string name="permdesc_setAnimationScale" msgid="7690063428924343571">"အပလီကေးရှင်းအား စက်တစ်ခုလုံးနှင့်ဆိုင်သော သရုပ်ပြမှု အနှေး အမြန် နှုန်း အား အချိန်မရွေး ပြောင်းခွင့်ပြုပါ"</string>
<string name="permlab_manageAppTokens" msgid="1286505717050121370">"app တိုကင်များကို စီမံကွပ်ကဲခြင်း"</string>
- <string name="permdesc_manageAppTokens" msgid="8043431713014395671">"appအား၊ ၎င်းတို့၏ ပုံမှန် Z-အော်ဒါပေးမှုကို ကျော်လွှားပြီး၊ ၎င်းတို့၏ ကိုယ်ပိုင် တိုကင်များကို ဖန်တီးရန် နှင့် စီမံကွပ်ကဲခွင့်ကို ပြုသည်။ သာမန် appများ အတွက ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_manageAppTokens" msgid="8043431713014395671">"appအား၊ ၎င်းတို့၏ ပုံမှန် Z-အော်ဒါပေးမှုကို ကျော်လွှားပြီး၊ ၎င်းတို့၏ ကိုယ်ပိုင် တိုကင်များကို ဖန်တီးရန် နှင့် စီမံကွပ်ကဲခွင့်ကို ပြုသည်။ သာမန် appများ အတွက ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_freezeScreen" msgid="4708181184441880175">"ဖန်သားပြင်အား ရပ်တန့်စေခြင်း"</string>
<string name="permdesc_freezeScreen" msgid="8558923789222670064">"အပလီကေးရှင်းအား ဖန်သားပြည့် ပြသမှုအတွက် ပြောင်းလဲစဉ် ဖန်သားပြင်အား ခဏရပ်ခွင့်ပြုရန်"</string>
- <string name="permlab_injectEvents" msgid="1378746584023586600">"ခလုတ်များနှင့် ထိန်းချုပ်သည့်ခလုတ်များကို နှိပ်ခြင်း"</string>
- <string name="permdesc_injectEvents" product="tablet" msgid="206352565599968632">"appအား ၎င်းကိုယ်နှိုက်၏ ထည့်သွင်းမှုများ (ခလုတ် နှိပ်မှုများ၊ စသဖြင့်)ကို ထည့်ပေးခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး တက်ဘလက်၏ နေရာကို ရယူနိုင်သည်။"</string>
- <string name="permdesc_injectEvents" product="tv" msgid="4681361983270791611">"အခြား app များသို့ ၎င်းကိုယ်တိုင်သွင်းယူထားသော (key presses၊ အစရှိသည့်) ဖြစ်ရပ်များအား ပေးပို့ရန် app အား ခွင့်ပြုပါ။ ဤအရာကို အသုံးပြုရန်အတွက် အန္တရာယ်ရှိသော app များက တီဗွီအား ထိန်းချုပ်နိုင်သည်။"</string>
- <string name="permdesc_injectEvents" product="default" msgid="653128057572326253">"appအား ၎င်းကိုယ်နှိုက်၏ ထည့်သွင်းမှုများ (ခလုတ် နှိပ်မှုများ၊ စသဖြင့်)ကို ထည့်ပေးခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး ဖုန်း၏ နေရာကို ရယူနိုင်သည်။"</string>
- <string name="permlab_readInputState" msgid="469428900041249234">"သင်မည်သည်ကိုရိုက်သွင်းသည်နှင့် လှုပ်ရှားမှုများကို မှတ်တမ်းတင်ခြင်း"</string>
- <string name="permdesc_readInputState" msgid="8387754901688728043">"appအား သင် နှိပ်သည့် ခလုတ်များကို၊ သင်က အခြား app တစ်ခုနှင့် (စကားဝှက် ရိုက်ထည့်မှုလို) အပြန်အလှန် တုံ့ပြန်နေချိန်မှာတောင်၊ စောင့်ကြည့်ခွင့် ပြုသည်။"</string>
- <string name="permlab_bindInputMethod" msgid="3360064620230515776">"ထည့်သွင်းရန်နည်းလမ်းအား ဆက်ရန်"</string>
- <string name="permdesc_bindInputMethod" msgid="3250440322807286331">"စွဲကိုင်ထားသူအား ရိုက်ထည့်ရေး နည်းလမ်း၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_injectEvents" msgid="1378746584023586600">"ခလုတ်များနှင့် ထိန်းချုပ်သည့်ခလုတ်များကို နှိပ်ခြင်း"</string>
+ <string name="permdesc_injectEvents" product="tablet" msgid="206352565599968632">"appအား ၎င်းကိုယ်နှိုက်၏ ထည့်သွင်းမှုများ (ခလုတ် နှိပ်မှုများ၊ စသဖြင့်)ကို ထည့်ပေးခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး တက်ဘလက်၏ နေရာကို ရယူနိုင်သည်။"</string>
+ <string name="permdesc_injectEvents" product="tv" msgid="4681361983270791611">"အခြား app များသို့ ၎င်းကိုယ်တိုင်သွင်းယူထားသော (key presses၊ အစရှိသည့်) ဖြစ်ရပ်များအား ပေးပို့ရန် app အား ခွင့်ပြုပါ။ ဤအရာကို အသုံးပြုရန်အတွက် အန္တရာယ်ရှိသော app များက တီဗွီအား ထိန်းချုပ်နိုင်သည်။"</string>
+ <string name="permdesc_injectEvents" product="default" msgid="653128057572326253">"appအား ၎င်းကိုယ်နှိုက်၏ ထည့်သွင်းမှုများ (ခလုတ် နှိပ်မှုများ၊ စသဖြင့်)ကို ထည့်ပေးခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး ဖုန်း၏ နေရာကို ရယူနိုင်သည်။"</string>
+ <string name="permlab_readInputState" msgid="469428900041249234">"သင်မည်သည်ကိုရိုက်သွင်းသည်နှင့် လှုပ်ရှားမှုများကို မှတ်တမ်းတင်ခြင်း"</string>
+ <string name="permdesc_readInputState" msgid="8387754901688728043">"appအား သင် နှိပ်သည့် ခလုတ်များကို၊ သင်က အခြား app တစ်ခုနှင့် (စကားဝှက် ရိုက်ထည့်မှုလို) အပြန်အလှန် တုံ့ပြန်နေချိန်မှာတောင်၊ စောင့်ကြည့်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_bindInputMethod" msgid="3360064620230515776">"ထည့်သွင်းရန်နည်းလမ်းအား ဆက်ရန်"</string>
+ <string name="permdesc_bindInputMethod" msgid="3250440322807286331">"စွဲကိုင်ထားသူအား ရိုက်ထည့်ရေး နည်းလမ်း၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_bindAccessibilityService" msgid="5357733942556031593">"အသုံးပြုမှု ပေးနိုင်သော ဆားဗစ်တစ်ခုနှင့် ပူးပေါင်းမှု ပြုရန်"</string>
<string name="permdesc_bindAccessibilityService" msgid="7034615928609331368">"ဖုန်းကိုင်ထားသူနဲ့ ရယူခွင့်ပြုသော ဆားဗစ်မှ ထိပ်ပိုင်းအင်တာဖေ့စ် ကို ပူပေါင်းခွင့်ပေးခြင်း။ ပုံမှန် အပလီကေးရှင်းများမှာ မလိုအပ်ပါ။"</string>
<string name="permlab_bindPrintService" msgid="8462815179572748761">"စာထုတ်မှု ဆားဗစ်နှင့် ပူးပေါင်းခြင်း"</string>
@@ -417,100 +417,100 @@
<string name="permlab_bindNfcService" msgid="2752731300419410724">"NFC ဆားဗစ်နှင့်ပူးပေါင်းခြင်း"</string>
<string name="permdesc_bindNfcService" msgid="6120647629174066862">"ဖုန်းကိုင်ထားသူနှင့် NFC ထုတ်လွှတ်နေတဲ့ အပလီကေးရှင်း ကို ပူးပေါင်းခွင့် ပေးခြင်း၊. ပုံမှန် အပလီကေးရှင်းများမှာ မလိုအပ်ပါ"</string>
<string name="permlab_bindTextService" msgid="7358378401915287938">"စာတိုပို့ခြင်းဆားဗစ်နှင့် ပူးပေါင်းခြင်း"</string>
- <string name="permdesc_bindTextService" msgid="8151968910973998670">"စွဲကိုင်ထားသူအား စာသား ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_bindTextService" msgid="8151968910973998670">"စွဲကိုင်ထားသူအား စာသား ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_bindVpnService" msgid="4708596021161473255">"VPNဆားဗစ်နှင့် ပူးပေါင်းခြင်း"</string>
- <string name="permdesc_bindVpnService" msgid="2067845564581693905">"စွဲကိုင်ထားသူအား Vpn ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
- <string name="permlab_bindWallpaper" msgid="8716400279937856462">"နောက်ခံနှင့် ပူးပေါင်းခြင်း"</string>
- <string name="permdesc_bindWallpaper" msgid="7108428692595491668">"စွဲကိုင်ထားသူအား နောက်ခံ ပုံ၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_bindVpnService" msgid="2067845564581693905">"စွဲကိုင်ထားသူအား Vpn ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_bindWallpaper" msgid="8716400279937856462">"နောက်ခံနှင့် ပူးပေါင်းခြင်း"</string>
+ <string name="permdesc_bindWallpaper" msgid="7108428692595491668">"စွဲကိုင်ထားသူအား နောက်ခံ ပုံ၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_bindVoiceInteraction" msgid="5334852580713715068">"အသံ တုံ့ပြန်လုပ်ပေးသူ တစ်ခုဆီသို့ ချိတ်တွဲခြင်း"</string>
- <string name="permdesc_bindVoiceInteraction" msgid="2345721766501778101">"စွဲကိုင်ထားသူအား အသံဖြင့် တုံ့ပြန်ရေး ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_bindVoiceInteraction" msgid="2345721766501778101">"စွဲကိုင်ထားသူအား အသံဖြင့် တုံ့ပြန်ရေး ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_manageVoiceKeyphrases" msgid="1252285102392793548">"အသံ သော့ချက် စကားရပ်များကို စီမံကွပ်ကဲရန်"</string>
- <string name="permdesc_manageVoiceKeyphrases" msgid="8476560722907530008">"စွဲကိုင်ထားသူအား စကားလုံးတို ရှာကြံရေး အတွက် သော့ချက် စကားရပ်များကို စီမံခွင့်ပြုသည်။သာမန် appများ အတွက် ဘယ်တော့မှ လိုအပ်မည် မဟုတ်။"</string>
+ <string name="permdesc_manageVoiceKeyphrases" msgid="8476560722907530008">"စွဲကိုင်ထားသူအား စကားလုံးတို ရှာကြံရေး အတွက် သော့ချက် စကားရပ်များကို စီမံခွင့်ပြုသည်။သာမန် appများ အတွက် ဘယ်တော့မှ လိုအပ်မည် မဟုတ်။"</string>
<string name="permlab_bindRemoteDisplay" msgid="1782923938029941960">"ထိန်းချုပ်ပြသခြင်း နဲ့ ပူးပေါင်းရန်"</string>
<string name="permdesc_bindRemoteDisplay" msgid="1261242718727295981">"ဖုန်းကိုင်ထားသူနဲ့ ထိန်းချုပ်ပြသမှုမှ ထိပ်ပိုင်းအင်တာဖေ့စ် ကို ပူးပေါင်းခွင့်ပေးခြင်း။ ပုံမှန် အပလီကေးရှင်းများမှာ မလိုအပ်ပါ"</string>
- <string name="permlab_bindRemoteViews" msgid="5697987759897367099">"ဝဒ်ဂျက်ဝန်ဆောင်မှုနှင့် ပူးပေါင်းရန်"</string>
- <string name="permdesc_bindRemoteViews" msgid="4717987810137692572">"စွဲကိုင်ထားသူအားဝီဂျက် ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
- <string name="permlab_bindDeviceAdmin" msgid="8704986163711455010">"စက်ပစ္စည်း ထိန်းချုပ်ခြင်းနှင့် တုံ့ပြန်မှု"</string>
- <string name="permdesc_bindDeviceAdmin" msgid="569715419543907930">"စွဲကိုင်ထားသူအား ကိရိယာ စီမံအုပ်ချုပ်သူထံသို့ ရည်ရွယ်ချက်များကို ပို့ခွင့် ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
- <string name="permlab_bindTvInput" msgid="5601264742478168987">"တီဗီ ထည့်သွင်းမှု တစ်ခုဆီသို့ ချိတ်တွဲပေးခြင်း"</string>
- <string name="permdesc_bindTvInput" msgid="2371008331852001924">"စွဲကိုင်ထားသူအား တီဗီ ထည့်သွင်းမှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_bindRemoteViews" msgid="5697987759897367099">"ဝဒ်ဂျက်ဝန်ဆောင်မှုနှင့် ပူးပေါင်းရန်"</string>
+ <string name="permdesc_bindRemoteViews" msgid="4717987810137692572">"စွဲကိုင်ထားသူအားဝီဂျက် ဝန်ဆောင်မှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_bindDeviceAdmin" msgid="8704986163711455010">"စက်ပစ္စည်း ထိန်းချုပ်ခြင်းနှင့် တုံ့ပြန်မှု"</string>
+ <string name="permdesc_bindDeviceAdmin" msgid="569715419543907930">"စွဲကိုင်ထားသူအား ကိရိယာ စီမံအုပ်ချုပ်သူထံသို့ ရည်ရွယ်ချက်များကို ပို့ခွင့် ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_bindTvInput" msgid="5601264742478168987">"တီဗီ ထည့်သွင်းမှု တစ်ခုဆီသို့ ချိတ်တွဲပေးခြင်း"</string>
+ <string name="permdesc_bindTvInput" msgid="2371008331852001924">"စွဲကိုင်ထားသူအား တီဗီ ထည့်သွင်းမှု၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_modifyParentalControls" msgid="4611318225997592242">"မိဘ ထိန်းချုပ်မှုများကို မွမ်းမံရန်"</string>
- <string name="permdesc_modifyParentalControls" msgid="7438482894162282039">"ပိုင်ရှင်အား စနစ်၏ မိဘများ ထိန်းချုပ်ရေး ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ ပုံမှန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_modifyParentalControls" msgid="7438482894162282039">"ပိုင်ရှင်အား စနစ်၏ မိဘများ ထိန်းချုပ်ရေး ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ ပုံမှန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_manageDeviceAdmins" msgid="4248828900045808722">"စက်အက်မင်တစ်ယောက် ကို ထည့်ခြင်း သို့ ထုတ်ခြင်း"</string>
<string name="permdesc_manageDeviceAdmins" msgid="5025608167709942485">"အသုံးပြုသူအား အက်ဒ်မင်များအား ထည့်ခြင်း ထုတ်ခြင်း ပြုလုပ်ခွင့် ပေးခြင်း။ . ပုံမှန် အပလီကေးရှင်းများမှာ မလိုအပ်ပါ"</string>
<string name="permlab_setOrientation" msgid="3365947717163866844">"စကရင်အနေအထားအားပြောင်းခြင်း"</string>
- <string name="permdesc_setOrientation" msgid="3046126619316671476">"appအား မျက်နှာပြင် လည်မှုကို အချိန်မရွေး ရပ်ပစ်ခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_setOrientation" msgid="3046126619316671476">"appအား မျက်နှာပြင် လည်မှုကို အချိန်မရွေး ရပ်ပစ်ခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_setPointerSpeed" msgid="9175371613322562934">"မြားအမြန်နှုန်းအား ပြောင်းခြင်း"</string>
- <string name="permdesc_setPointerSpeed" msgid="6866563234274104233">"appအား မောက်စ်ကို သို့မဟုတ် ထရက်ပဲဒ် ညွှန်တံ၏ နှုန်းကို အချိန်မရွေး ပြောင်းခွင့် ရှိသည်။သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_setPointerSpeed" msgid="6866563234274104233">"appအား မောက်စ်ကို သို့မဟုတ် ထရက်ပဲဒ် ညွှန်တံ၏ နှုန်းကို အချိန်မရွေး ပြောင်းခွင့် ရှိသည်။သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_setKeyboardLayout" msgid="4778731703600909340">"လက်ကွက် အပြင်အဆင်ပြောင်းရန်"</string>
<string name="permdesc_setKeyboardLayout" msgid="8480016771134175879">"အပလီကေးရှင်းအား လက်ကွက်အပြင်အဆင်အား ပြောင်းခွင့်ပြုပါ။ ပုံမှန် အပလီကေးရှင်းများတွင် မလိုအပ်ပါ။"</string>
<string name="permlab_signalPersistentProcesses" msgid="4539002991947376659">"appများသို့ Linux အချက်ပြမှု ပို့ခြင်း"</string>
- <string name="permdesc_signalPersistentProcesses" msgid="4896992079182649141">"appအား ပို့နေသော အချက်ပြမှုကို ရှိနေကြသည့် လုပ်ငန်းစဉ် အားလုံးထံသို့ ပို့ရေးကို တောင်းဆိုခွင့် ပေးသည်။"</string>
+ <string name="permdesc_signalPersistentProcesses" msgid="4896992079182649141">"appအား ပို့နေသော အချက်ပြမှုကို ရှိနေကြသည့် လုပ်ငန်းစဉ် အားလုံးထံသို့ ပို့ရေးကို တောင်းဆိုခွင့် ပေးသည်။"</string>
<string name="permlab_persistentActivity" msgid="8841113627955563938">"appကို အမြဲတမ်း အလုပ်လုပ်စေခြင်း"</string>
<string name="permdesc_persistentActivity" product="tablet" msgid="8525189272329086137">"အပလီကေးရှင်းအား မှတ်ဉာဏ်ထဲတွင် ရေရှည်သိမ်းဆည်ထားရန် ခွင့်ပြုပါ။ ဒီခွင့်ပြုချက်ကြောင့် တခြားအပလီကေးရှင်းအများအတွက် မှတ်ဉာဏ်ရရှိမှု နည်းသွားနိုင်ပြီး တက်ဘလက်လည်း နှေးသွားနိုင်ပါသည်။"</string>
- <string name="permdesc_persistentActivity" product="tv" msgid="5086862529499103587">"မှတ်ဉာဏ်တွင် ၎င်း၏အစိတ်အပိုင်းများကိုယ်တိုင် တည်မြဲနေစေရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် တီဗွီကို နှေးစေသော အခြား app များ၏ မှတ်ဉာဏ်ကို ကန့်သတ်ထားနိုင်သည်။"</string>
+ <string name="permdesc_persistentActivity" product="tv" msgid="5086862529499103587">"မှတ်ဉာဏ်တွင် ၎င်း၏အစိတ်အပိုင်းများကိုယ်တိုင် တည်မြဲနေစေရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် တီဗွီကို နှေးစေသော အခြား app များ၏ မှတ်ဉာဏ်ကို ကန့်သတ်ထားနိုင်သည်။"</string>
<string name="permdesc_persistentActivity" product="default" msgid="4384760047508278272">"အပလီကေးရှင်းအား မှတ်ဉာဏ်ထဲတွင် ရေရှည်သိမ်းဆည်ထားရန် ခွင့်ပြုပါ။ ဒီခွင့်ပြုချက်ကြောင့် တခြားအပလီကေးရှင်းအများအတွက် မှတ်ဉာဏ်ရရှိမှု နည်းသွားနိုင်ပြီး ဖုန်းလည်း နှေးသွားနိုင်ပါသည်။"</string>
<string name="permlab_deletePackages" msgid="184385129537705938">"appများကို ဖျက်ရန်"</string>
- <string name="permdesc_deletePackages" msgid="7411480275167205081">"appအား အန်ဒရွိုက် အထုပ်များကို ဖျက်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် appများကို ဖျက်ပစ်နိုင်သည်။"</string>
+ <string name="permdesc_deletePackages" msgid="7411480275167205081">"appအား အန်ဒရွိုက် အထုပ်များကို ဖျက်ခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် appများကို ဖျက်ပစ်နိုင်သည်။"</string>
<string name="permlab_clearAppUserData" msgid="274109191845842756">"အခြား appများ၏ ဒေတာကို ဖျက်ရန်"</string>
- <string name="permdesc_clearAppUserData" msgid="4625323684125459488">"appအား အသုံးပြုသူ ဒေတာကို ရှင်းပစ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_clearAppUserData" msgid="4625323684125459488">"appအား အသုံးပြုသူ ဒေတာကို ရှင်းပစ်ခွင့် ပြုသည်။"</string>
<string name="permlab_deleteCacheFiles" msgid="3128665571837408675">"အခြား appများ၏ ကက်ရှများကို ဖျက်ရန်"</string>
- <string name="permdesc_deleteCacheFiles" msgid="3812998599006730196">"appအား ကက်ရှ ဖိုင်များကို ဖျက်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_deleteCacheFiles" msgid="3812998599006730196">"appအား ကက်ရှ ဖိုင်များကို ဖျက်ခွင့် ပြုသည်။"</string>
<string name="permlab_getPackageSize" msgid="7472921768357981986">"app သိုလှောင်မှု နေရာကို တိုင်းထွာခြင်း"</string>
- <string name="permdesc_getPackageSize" msgid="3921068154420738296">"appအား ၎င်း၏ ကုဒ်၊ ဒေတာ၊ နှင့် ကက်ရှ ဆိုက်များကို ရယူခွင့် ပြုသည်။"</string>
+ <string name="permdesc_getPackageSize" msgid="3921068154420738296">"appအား ၎င်း၏ ကုဒ်၊ ဒေတာ၊ နှင့် ကက်ရှ ဆိုက်များကို ရယူခွင့် ပြုသည်။"</string>
<string name="permlab_installPackages" msgid="2199128482820306924">"appများကို တိုက်ရိုက် တပ်ဆင်ခြင်း"</string>
- <string name="permdesc_installPackages" msgid="5628530972548071284">"appအား အန်ဒရွိုက် အထုပ် အသစ် သို့မဟုတ် မွမ်းမံပြီးကို တပ်ဆင်ခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး ထင်ရာလုပ်နိုင်သော ကြီးမားသည့် ခွင့်ပြုချက်များ ရှိမည့် appများကို ထည့်ပေးနိုင်ကြသည်။"</string>
+ <string name="permdesc_installPackages" msgid="5628530972548071284">"appအား အန်ဒရွိုက် အထုပ် အသစ် သို့မဟုတ် မွမ်းမံပြီးကို တပ်ဆင်ခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးပြုပြီး ထင်ရာလုပ်နိုင်သော ကြီးမားသည့် ခွင့်ပြုချက်များ ရှိမည့် appများကို ထည့်ပေးနိုင်ကြသည်။"</string>
<string name="permlab_clearAppCache" msgid="7487279391723526815">"app ကက်ရှ ဒေတာ အားလုံးကို ဖျက်ပစ်ရန်"</string>
<string name="permdesc_clearAppCache" product="tablet" msgid="8974640871945434565">"အပလီကေးရှင်းမှာ တခြား အပလီကေးရှင်းများမှ ဒေတာများအား ယာယီ သိုလှောင်မှုနေရာမှ ဖျက်ပစ်ပြီး နေရာလွတ် လုပ်ခွင့်ပြုပါ။ ဒီလိုလုပ်ခြင်းဖြင့် တခြား အပလီကေးရှင်းများ စတင်ရာတွင် နှေးကွေးမှု ဖြစ်စေနိုင်ပါသည်။"</string>
- <string name="permdesc_clearAppCache" product="tv" msgid="244647416303997022">"အခြား အပလီကေးရှင်းများ၏ ကာရှ်လမ်းညွှန်များရှိ ဖိုင်များအား ဖျက်ခြင်းဖြင့် တီဗွီ၏ သိုလှောင်ရုံအား နေရာလွတ်ရနိုင်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် အခြားအပလီကေးရှင်းများသည် ၎င်းတို့၏ဒေတာများကို ပြန်လည်ရယူရန် စတင်သည့်အခါ ပိုမိုနှေးကွေးနေမည်ဖြစ်၏။"</string>
+ <string name="permdesc_clearAppCache" product="tv" msgid="244647416303997022">"အခြား အပလီကေးရှင်းများ၏ ကာရှ်လမ်းညွှန်များရှိ ဖိုင်များအား ဖျက်ခြင်းဖြင့် တီဗွီ၏ သိုလှောင်ရုံအား နေရာလွတ်ရနိုင်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် အခြားအပလီကေးရှင်းများသည် ၎င်းတို့၏ဒေတာများကို ပြန်လည်ရယူရန် စတင်သည့်အခါ ပိုမိုနှေးကွေးနေမည်ဖြစ်၏။"</string>
<string name="permdesc_clearAppCache" product="default" msgid="2459441021956436779">"အပလီကေးရှင်းမှာ တခြား အပလီကေးရှင်းများမှ ဒေတာများအား ယာယီ သိုလှောင်မှုနေရာမှ ဖျက်ပစ်ပြီး နေရာလွတ် လုပ်ခွင့်ပြုပါ။ ဒီလိုလုပ်ခြင်းဖြင့် တခြား အပလီကေးရှင်းများ စတင်ရာတွင် နှေးကွေးမှု ဖြစ်စေနိုင်ပါသည်။"</string>
<string name="permlab_movePackage" msgid="3289890271645921411">"app အရင်းအမြစ်များကို ဖယ်ရှားခြင်း"</string>
- <string name="permdesc_movePackage" msgid="319562217778244524">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်းကို app၏ အရင်းအမြစ်များကို အတွင်းမှ အပြင်သို့ ရွှေ့ပြောင်းခြင်း နှင့် ပြောင်းပြန်လုပ်ခြင်းကို ခွင့်ပြုသည်။"</string>
+ <string name="permdesc_movePackage" msgid="319562217778244524">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်းကို app၏ အရင်းအမြစ်များကို အတွင်းမှ အပြင်သို့ ရွှေ့ပြောင်းခြင်း နှင့် ပြောင်းပြန်လုပ်ခြင်းကို ခွင့်ပြုသည်။"</string>
<string name="permlab_readLogs" msgid="6615778543198967614">"တုံ့ပြန်မှုလွယ်သောစာရင်းဒေတာအားဖတ်ခြင်း"</string>
- <string name="permdesc_readLogs" product="tablet" msgid="82061313293455151">"appအား စနစ်၏ လော့ဂ် ဖိုင် အမျိုးမျိုးတို့ကို ဖတ်ကြားခွင့် ပြုသည်။ သို့ဖြစ်၍ ၎င်းသည် သင်က တက်ဘလက်နှင့် ဘာတွေ လုပ်ကိုင်နေကြောင်း အထွေထွေ အချက်အလက်များကို၊ ဖြစ်နိုင်သည်မှာ ကိုယ်ရေး သို့မဟုတ် ပုဂ္ဂိုလ်ရေး အချက်အလက်များ အပါအဝင် တို့ကိုပါ၊ ရှာတွေ့သိလာနိုင်သည်။"</string>
- <string name="permdesc_readLogs" product="tv" msgid="9023899974809538988">"စနစ်၏ လော့ဂ်ဖိုင်မျိုးစုံ ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် ကိုယ်ရေးကိုယ်တာ သို့မဟုတ် သီးသန့် အချက်အလက်များ အပါအဝင်၊ တီဗွီတွင် သင်လုပ်ဆောင်နေသော အထွေထွေ အချက်အလက်များကို ရှာဖွေတွေ့ရှိရန် ၎င်းအား ခွင့်ပြုခြင်းဖြစ်သည်။"</string>
- <string name="permdesc_readLogs" product="default" msgid="2063438140241560443">"appအား စနစ်၏ လော့ဂ် ဖိုင် အမျိုးမျိုးတို့ကို ဖတ်ကြားခွင့် ပြုသည်။ သို့ဖြစ်၍ ၎င်းသည် သင်က ဖုန်းနှင့် ဘာတွေ လုပ်ကိုင်နေကြောင်း အထွေထွေ အချက်အလက်များကို၊ ဖြစ်နိုင်သည်မှာ ကိုယ်ရေး သို့မဟုတ် ပုဂ္ဂိုလ်ရေး အချက်အလက်များ အပါအဝင် တို့ကိုပါ၊ ရှာတွေ့သိလာနိုင်သည်။"</string>
+ <string name="permdesc_readLogs" product="tablet" msgid="82061313293455151">"appအား စနစ်၏ လော့ဂ် ဖိုင် အမျိုးမျိုးတို့ကို ဖတ်ကြားခွင့် ပြုသည်။ သို့ဖြစ်၍ ၎င်းသည် သင်က တက်ဘလက်နှင့် ဘာတွေ လုပ်ကိုင်နေကြောင်း အထွေထွေ အချက်အလက်များကို၊ ဖြစ်နိုင်သည်မှာ ကိုယ်ရေး သို့မဟုတ် ပုဂ္ဂိုလ်ရေး အချက်အလက်များ အပါအဝင် တို့ကိုပါ၊ ရှာတွေ့သိလာနိုင်သည်။"</string>
+ <string name="permdesc_readLogs" product="tv" msgid="9023899974809538988">"စနစ်၏ လော့ဂ်ဖိုင်မျိုးစုံ ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် ကိုယ်ရေးကိုယ်တာ သို့မဟုတ် သီးသန့် အချက်အလက်များ အပါအဝင်၊ တီဗွီတွင် သင်လုပ်ဆောင်နေသော အထွေထွေ အချက်အလက်များကို ရှာဖွေတွေ့ရှိရန် ၎င်းအား ခွင့်ပြုခြင်းဖြစ်သည်။"</string>
+ <string name="permdesc_readLogs" product="default" msgid="2063438140241560443">"appအား စနစ်၏ လော့ဂ် ဖိုင် အမျိုးမျိုးတို့ကို ဖတ်ကြားခွင့် ပြုသည်။ သို့ဖြစ်၍ ၎င်းသည် သင်က ဖုန်းနှင့် ဘာတွေ လုပ်ကိုင်နေကြောင်း အထွေထွေ အချက်အလက်များကို၊ ဖြစ်နိုင်သည်မှာ ကိုယ်ရေး သို့မဟုတ် ပုဂ္ဂိုလ်ရေး အချက်အလက်များ အပါအဝင် တို့ကိုပါ၊ ရှာတွေ့သိလာနိုင်သည်။"</string>
<string name="permlab_anyCodecForPlayback" msgid="715805555823881818">"မည်သည့် မီဒီယာ ဒီကုဒ်ဒါမဆို ပြသရာတွင် သုံးရန်"</string>
<string name="permdesc_anyCodecForPlayback" msgid="8283912488433189010">"အပလီကေးရှင်းအား သွင်းထားသည့် မီဒီယာ ဒီကုဒ်ဒါ အား သုံးပြီး ဖွင့်ရန် ဒီကုဒ် လုပ်ခွင့် ပြုပါ"</string>
<string name="permlab_manageCaCertificates" msgid="1678391896786882014">"ယုံကြည်ရသော အကောင့်များအား ထိန်းသိမ်းခြင်း"</string>
<string name="permdesc_manageCaCertificates" msgid="4015644047196937014">"အပလီကေးရှင်းအား CA လက်မှတ်များအား ယုံကြည်စိတ်ချရသော အရာ အဖြစ် ထည့်ခွင့် ပြန်ထုတ်ခွင့် ပေးခြင်း။"</string>
- <string name="permlab_bindJobService" msgid="3637568367978271086">"အပလီကေးရှင်း၏ စီစဉ်ထားသည့် နောက်ခံ အလုပ်ကို လုပ်ကိုင်ရန်"</string>
+ <string name="permlab_bindJobService" msgid="3637568367978271086">"အပလီကေးရှင်း၏ စီစဉ်ထားသည့် နောက်ခံ အလုပ်ကို လုပ်ကိုင်ရန်"</string>
<string name="permdesc_bindJobService" msgid="3473288460524119838">"ဒီခွင့်ပြုချက်က တောင်းဆိုလာလျှင် အန်ဒရွိုက် စနစ်အား အပလီကေးရှင်းကို နောက်ခံမှာ အလုပ် လုပ်ကိုင်စေပါသည်။"</string>
<string name="permlab_diagnostic" msgid="8076743953908000342">"diagမှပိုင်ဆိုင်သော ရင်းနှီးမှုများကို ဖတ်/ရေးခြင်း"</string>
- <string name="permdesc_diagnostic" msgid="6608295692002452283">"appအား diag အုပ်စု ပိုင်ဆိုင်သည့် မည်သည့် အရင်းအမြစ်ကို မဆို ရေးခြင်း နှင့် ဖတ်ခြင်းကို ခွင့်ပြုသည်၊ ဥပမာ၊ /dev ထဲက ဖိုင်များ။ ၎င်းက စနစ်၏ တည်ငြိမ်မှု နှင့် လုံခြုံမှုကို ထိပါးနိုင်သည့် အလားအလာ ရှိသည်။ ထုတ်လုပ်သူ သို့မဟုတ် အော်ပရေတာက ဟာ့ဒ်ဝဲ ဆိုင်ရာ ပြဿနာ ရှာဖွေ စူးစမ်းမှု အတွက်သာ ၎င်းကို အသုံးပြုရမည်။"</string>
- <string name="permlab_changeComponentState" msgid="6335576775711095931">"app အစိတ်အပိုင်းများကို ဖွင့်ခြင်း သို့မဟုတ် ပိတ်ခြင်း"</string>
- <string name="permdesc_changeComponentState" product="tablet" msgid="8887435740982237294">"appအား အခြား app တစ်ခု၏ အစိတ်အပိုင်း တစ်ခုမှာ ဖွင့်ထားသည် ဖြစ်စေ ဖွင့်မထားသည် ဖြစ်စေ ပြောင်းလဲခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် တက်ဘလက်၏ လုပ်နိုင်စွမ်းကို ပိတ်ပစ်နိုင်သည်။ app၏ အစိတ်အပိုင်းများကို သုံးမရအောင်၊ စနစ်မမှန်အောင် သို့မဟုတ် အခြေအနေ မတည်ငြိမ်အောင် လုပ်၍ ရနိုင်သောကြောင့် ဒီ ခွင့်ပြုချက်ကို သုံးရာတွင် သတိထားရန် လိုအပ်သည်။"</string>
- <string name="permdesc_changeComponentState" product="tv" msgid="9151634188264231389">"တစ်ခြား app ၏ အစိတ်အပိုင်းတစ်ခုအား ဖွင့်ထားခြင်း ရှိမရှိအား ပြောင်းလဲရန် app အား ခွင့်ပြုပါ။ တီဗွီ၏ အရေးကြီး လုပ်ဆောင်နိုင်မှုများအား ပိတ်ပစ်ရန် ၎င်းအား အန္တရာယ်ရှိသော app များက အသုံးပြုနိုင်သည်။ app ၏ အစိတ်အပိုင်းများ အသုံးပြု၍မရခြင်း၊ မတည်မငြိမ်ဖြစ်ခြင်း၊ သို့မဟုတ် မတည်မြဲခြင်းများ ဖြစ်စေတတ်သောကြောင့်၊ ဤခွင့်ပြုချက်ကို သတိဖြင့် လုပ်ဆောင်ပါ။"</string>
- <string name="permdesc_changeComponentState" product="default" msgid="1827232484416505615">"appအား အခြား app တစ်ခု၏ အစိတ်အပိုင်း တစ်ခုမှာ ဖွင့်ထားသည် ဖြစ်စေ ဖွင့်မထားသည် ဖြစ်စေ ပြောင်းလဲခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် ဖုန်း၏ လုပ်နိုင်စွမ်းကို ပိတ်ပစ်နိုင်သည်။ app၏ အစိတ်အပိုင်းများကို သုံးမရအောင်၊ စနစ်မမှန်အောင် သို့မဟုတ် အခြေအနေ မတည်ငြိမ်အောင် လုပ်၍ ရနိုင်သောကြောင့် ဒီ ခွင့်ပြုချက်ကို သုံးရာတွင် သတိထားရန် လိုအပ်သည်။"</string>
+ <string name="permdesc_diagnostic" msgid="6608295692002452283">"appအား diag အုပ်စု ပိုင်ဆိုင်သည့် မည်သည့် အရင်းအမြစ်ကို မဆို ရေးခြင်း နှင့် ဖတ်ခြင်းကို ခွင့်ပြုသည်၊ ဥပမာ၊ /dev ထဲက ဖိုင်များ။ ၎င်းက စနစ်၏ တည်ငြိမ်မှု နှင့် လုံခြုံမှုကို ထိပါးနိုင်သည့် အလားအလာ ရှိသည်။ ထုတ်လုပ်သူ သို့မဟုတ် အော်ပရေတာက ဟာ့ဒ်ဝဲ ဆိုင်ရာ ပြဿနာ ရှာဖွေ စူးစမ်းမှု အတွက်သာ ၎င်းကို အသုံးပြုရမည်။"</string>
+ <string name="permlab_changeComponentState" msgid="6335576775711095931">"app အစိတ်အပိုင်းများကို ဖွင့်ခြင်း သို့မဟုတ် ပိတ်ခြင်း"</string>
+ <string name="permdesc_changeComponentState" product="tablet" msgid="8887435740982237294">"appအား အခြား app တစ်ခု၏ အစိတ်အပိုင်း တစ်ခုမှာ ဖွင့်ထားသည် ဖြစ်စေ ဖွင့်မထားသည် ဖြစ်စေ ပြောင်းလဲခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် တက်ဘလက်၏ လုပ်နိုင်စွမ်းကို ပိတ်ပစ်နိုင်သည်။ app၏ အစိတ်အပိုင်းများကို သုံးမရအောင်၊ စနစ်မမှန်အောင် သို့မဟုတ် အခြေအနေ မတည်ငြိမ်အောင် လုပ်၍ ရနိုင်သောကြောင့် ဒီ ခွင့်ပြုချက်ကို သုံးရာတွင် သတိထားရန် လိုအပ်သည်။"</string>
+ <string name="permdesc_changeComponentState" product="tv" msgid="9151634188264231389">"တစ်ခြား app ၏ အစိတ်အပိုင်းတစ်ခုအား ဖွင့်ထားခြင်း ရှိမရှိအား ပြောင်းလဲရန် app အား ခွင့်ပြုပါ။ တီဗွီ၏ အရေးကြီး လုပ်ဆောင်နိုင်မှုများအား ပိတ်ပစ်ရန် ၎င်းအား အန္တရာယ်ရှိသော app များက အသုံးပြုနိုင်သည်။ app ၏ အစိတ်အပိုင်းများ အသုံးပြု၍မရခြင်း၊ မတည်မငြိမ်ဖြစ်ခြင်း၊ သို့မဟုတ် မတည်မြဲခြင်းများ ဖြစ်စေတတ်သောကြောင့်၊ ဤခွင့်ပြုချက်ကို သတိဖြင့် လုပ်ဆောင်ပါ။"</string>
+ <string name="permdesc_changeComponentState" product="default" msgid="1827232484416505615">"appအား အခြား app တစ်ခု၏ အစိတ်အပိုင်း တစ်ခုမှာ ဖွင့်ထားသည် ဖြစ်စေ ဖွင့်မထားသည် ဖြစ်စေ ပြောင်းလဲခွင့် ပြုသည်။ အကြံအဖန် appများက ၎င်းကို အသုံးပြုပြီး အရေးကြီးသည့် ဖုန်း၏ လုပ်နိုင်စွမ်းကို ပိတ်ပစ်နိုင်သည်။ app၏ အစိတ်အပိုင်းများကို သုံးမရအောင်၊ စနစ်မမှန်အောင် သို့မဟုတ် အခြေအနေ မတည်ငြိမ်အောင် လုပ်၍ ရနိုင်သောကြောင့် ဒီ ခွင့်ပြုချက်ကို သုံးရာတွင် သတိထားရန် လိုအပ်သည်။"</string>
<string name="permlab_grantRevokePermissions" msgid="4627315351093508795">"ခွင့်ပြုချက် ထောက်ခံခြင်း သို့ ပယ်ဖျက်ခြင်း"</string>
<string name="permdesc_grantRevokePermissions" msgid="4088642654085850662">"အပလီကေးရှင်းအား ကိုယ်တိုင် ဒါမှမဟုတ် တခြား အပလီကေးရှင်းအတွက် ခွင့်ပြုချက်များအား ခွင့်ပြုခြင်း၊ပယ်ဖျယ်ခြင်း လုပ်ခွင့်ပြုပါ။ အန္တရာယ်ရှိသော အပလီကေးရှင်းများမှ ဒီခွင့်ပြုချက်အားသုံးပြီး အခွင့်မရှိသော စွမ်းဆောင်ချက်များအား သုံးနိုင်ပါသည်"</string>
- <string name="permlab_setPreferredApplications" msgid="8463181628695396391">"ပိုကြိုက်သည့် appများကို သတ်မှတ်ခြင်း"</string>
- <string name="permdesc_setPreferredApplications" msgid="4973986762241783712">"appအား သင် နှစ်ခြုက်သည့် appများကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက ဖွင့်ထားသည့် appများကို တိတ်တဆိတ် ပြောင်းလဲပစ်ကာ၊ ရှိနေကြသည့် သင်၏ appများကို သင့်ထံမှ သင်၏ ကိုယ်ရေး ဒေတာများကို စုစည်းရန် ခိုင်းနိုင်သည်။"</string>
+ <string name="permlab_setPreferredApplications" msgid="8463181628695396391">"ပိုကြိုက်သည့် appများကို သတ်မှတ်ခြင်း"</string>
+ <string name="permdesc_setPreferredApplications" msgid="4973986762241783712">"appအား သင် နှစ်ခြုက်သည့် appများကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက ဖွင့်ထားသည့် appများကို တိတ်တဆိတ် ပြောင်းလဲပစ်ကာ၊ ရှိနေကြသည့် သင်၏ appများကို သင့်ထံမှ သင်၏ ကိုယ်ရေး ဒေတာများကို စုစည်းရန် ခိုင်းနိုင်သည်။"</string>
<string name="permlab_writeSettings" msgid="2226195290955224730">"စနစ်အပြင်အဆင်အား မွမ်းမံခြင်း"</string>
- <string name="permdesc_writeSettings" msgid="7775723441558907181">"appအား စနစ်၏ ဆက်တင် ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများက သင့် စနစ်၏ စီစဉ်ဖွဲ့စည်းမှုကို ဖျက်ဆီးပစ်နိုင်သည်။"</string>
+ <string name="permdesc_writeSettings" msgid="7775723441558907181">"appအား စနစ်၏ ဆက်တင် ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများက သင့် စနစ်၏ စီစဉ်ဖွဲ့စည်းမှုကို ဖျက်ဆီးပစ်နိုင်သည်။"</string>
<string name="permlab_writeSecureSettings" msgid="204676251876718288">"စနစ်အပြင်အဆင်လုံခြုံမှုအား မွမ်းမံခြင်း"</string>
- <string name="permdesc_writeSecureSettings" msgid="8159535613020137391">"appအား စနစ်၏ လုံခြုံစိတ်ချရသည့် ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
+ <string name="permdesc_writeSecureSettings" msgid="8159535613020137391">"appအား စနစ်၏ လုံခြုံစိတ်ချရသည့် ဒေတာကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
<string name="permlab_writeGservices" msgid="2149426664226152185">"ဂူဂဲလ်ဝန်ဆောင်မှုမြေပုံအားမွမ်းမံခြင်း"</string>
- <string name="permdesc_writeGservices" msgid="1287309437638380229">"appအယဒ Google ဝန်ဆောင်မှုများ မြေပုံကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
+ <string name="permdesc_writeGservices" msgid="1287309437638380229">"appအယဒ Google ဝန်ဆောင်မှုများ မြေပုံကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
<string name="permlab_receiveBootCompleted" msgid="5312965565987800025">"အစတွင် လုပ်ဆောင်ရန်"</string>
- <string name="permdesc_receiveBootCompleted" product="tablet" msgid="7390304664116880704">"appအား စနစ်၏ စတင်မှု ပြီးဆုံးသည့်နှင့် မိမိကိုမိမိ စတင်ခွင့် ပြုသည်။ သို့ဖြစ်၍ ဖုန်း စတင်မှုမှာ အချိန် ပိုကြာနိုင်ပြီး appက တချိန်လုံး အလုပ်လုပ်နေခြင်းကြောင့် တက်ဘလက်၏ အလုပ် တစ်ခုလုံးကို နှေးကွေးလာစေနိုင်သည်။"</string>
- <string name="permdesc_receiveBootCompleted" product="tv" msgid="4525890122209673621">"စနစ် စတင်ပြီးသည်နှင့် တစ်ပြိုင်နက် အလိုလို အစပြုရန် app အားခွင့်ပြုပါ။ ထိုသို့ခွင့်ပြုခြင်းဖြင့် တီဗွီအား စရန် အချိန်ကြာစေပြီး အစဉ်အမြဲဖွင့်ထားခြင်းဖြင့် တက်ဘလက်အား နှေးသွားစေရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_receiveBootCompleted" product="default" msgid="513950589102617504">"appအား စနစ်၏ စတင်မှု ပြီးဆုံးသည့်နှင့် မိမိကိုမိမိ စတင်ခွင့် ပြုသည်။ သို့ဖြစ်၍ ဖုန်း စတင်မှုမှာ အချိန် ပိုကြာနိုင်ပြီး appက တချိန်လုံး အလုပ်လုပ်နေခြင်းကြောင့် ဖုန်း၏ အလုပ် တစ်ခုလုံးကို နှေးကွေးလာစေနိုင်သည်။"</string>
+ <string name="permdesc_receiveBootCompleted" product="tablet" msgid="7390304664116880704">"appအား စနစ်၏ စတင်မှု ပြီးဆုံးသည့်နှင့် မိမိကိုမိမိ စတင်ခွင့် ပြုသည်။ သို့ဖြစ်၍ ဖုန်း စတင်မှုမှာ အချိန် ပိုကြာနိုင်ပြီး appက တချိန်လုံး အလုပ်လုပ်နေခြင်းကြောင့် တက်ဘလက်၏ အလုပ် တစ်ခုလုံးကို နှေးကွေးလာစေနိုင်သည်။"</string>
+ <string name="permdesc_receiveBootCompleted" product="tv" msgid="4525890122209673621">"စနစ် စတင်ပြီးသည်နှင့် တစ်ပြိုင်နက် အလိုလို အစပြုရန် app အားခွင့်ပြုပါ။ ထိုသို့ခွင့်ပြုခြင်းဖြင့် တီဗွီအား စရန် အချိန်ကြာစေပြီး အစဉ်အမြဲဖွင့်ထားခြင်းဖြင့် တက်ဘလက်အား နှေးသွားစေရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_receiveBootCompleted" product="default" msgid="513950589102617504">"appအား စနစ်၏ စတင်မှု ပြီးဆုံးသည့်နှင့် မိမိကိုမိမိ စတင်ခွင့် ပြုသည်။ သို့ဖြစ်၍ ဖုန်း စတင်မှုမှာ အချိန် ပိုကြာနိုင်ပြီး appက တချိန်လုံး အလုပ်လုပ်နေခြင်းကြောင့် ဖုန်း၏ အလုပ် တစ်ခုလုံးကို နှေးကွေးလာစေနိုင်သည်။"</string>
<string name="permlab_broadcastSticky" msgid="7919126372606881614">"ကြာရှည်ခံ ထုတ်လွှတ်မှု အားပေးပို့ခြင်း"</string>
<string name="permdesc_broadcastSticky" product="tablet" msgid="7749760494399915651">"အပလီကေးရှင်းအား ကြာရှည်ခံ ထုတ်လွှင့်မှု ပြုပါ။ ဒီထုတ်လွှင့်မှုများဟာ ထုတ်လွှင့်မှု ပြီးဆုံးပြီးသွားတည့်တိုင် ကျန်နေမည် ဖြစ်ပါသည်။ အလွန်အကျွံသုံးခြင်းကြောင့် မက်မိုရီ အသုံးများပြီး တက်ဘလက်နှေးခြင်း၊ မတည်ငြိမ်ခြင်း ဖြစ်နိုင်ပါသည်"</string>
- <string name="permdesc_broadcastSticky" product="tv" msgid="6839285697565389467">"ထုတ်လွှင့်ခြင်းများ ပြီးဆုံးသည့်နောက် ဆက်လက်ရှိနေသည့်၊ တည်မြဲ ထုတ်လွှင့်မှုများပို့ရန် app အား ခွင့်ပြုပါ။ အလွန်အကျွံ လုပ်ဆောင်ပါက တီဗွီ နှေးသွားခြင်း သို့မဟုတ် မှတ်ဉာဏ်အသုံးများမှုကြောင့် မတည်မငြိမ်ဖြစ်ခြင်းများ ဖြစ်တတ်၏။"</string>
+ <string name="permdesc_broadcastSticky" product="tv" msgid="6839285697565389467">"ထုတ်လွှင့်ခြင်းများ ပြီးဆုံးသည့်နောက် ဆက်လက်ရှိနေသည့်၊ တည်မြဲ ထုတ်လွှင့်မှုများပို့ရန် app အား ခွင့်ပြုပါ။ အလွန်အကျွံ လုပ်ဆောင်ပါက တီဗွီ နှေးသွားခြင်း သို့မဟုတ် မှတ်ဉာဏ်အသုံးများမှုကြောင့် မတည်မငြိမ်ဖြစ်ခြင်းများ ဖြစ်တတ်၏။"</string>
<string name="permdesc_broadcastSticky" product="default" msgid="2825803764232445091">"အပလီကေးရှင်းအား ကြာရှည်ခံ ထုတ်လွှင့်မှု ပြုပါ။ ဒီထုတ်လွှင့်မှုများဟာ ထုတ်လွှင့်မှု ပြီးဆုံးပြီးသွားတည့်တိုင် ကျန်နေမည် ဖြစ်ပါသည်။ အလွန်အကျွံသုံးခြင်းကြောင့် မှတ်ဉာဏ်အသုံးများပြီး ဖုန်းနှေးခြင်း၊ မတည်ငြိမ်ခြင်း ဖြစ်နိုင်ပါသည်"</string>
<string name="permlab_readContacts" msgid="8348481131899886131">"အဆက်အသွယ်များအား ဖတ်ခြင်း"</string>
<string name="permdesc_readContacts" product="tablet" msgid="5294866856941149639">"အပလီကေးရှင်းအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်အကြိမ်ရေ၊ တခြားဆက်သွယ်မှုများစသည်ကဲ့သို့ သင့်တက်ဘလက်မှာ သိမ်းဆည်းထားသော အဆက်အသွယ်များရဲ့ အချက်အလက်ကို ဖတ်ခွင့်ပြုပါ။ ဤသို့ခွင့်ပြုခြင်းအားဖြင့် အပလီကေးရှင်းများကို သင့် အဆက်အသွယ်၏ အချက်မလက်များကို သိမ်းဆည်းရန် ခွင့်ပြုပြီး အန္တရာယ်ရှိသော အပလီကေးရှင်းများမှ ထိုအချက်အလက်များ ကို သင် မသိစေပဲ ဖြန့်ဝေနိုင််မည် ဖြစ်ပါသည်။"</string>
- <string name="permdesc_readContacts" product="tv" msgid="1839238344654834087">"တစ်ဦးတစ်ယောက်ထံ သင်ခေါ်ထားသော၊ အီးမေးိပု့ထားသော၊ သို့မဟုတ် တစ်ခြားနည်းဖြင့် အဆက်အသွယ်ပြုထားသော အကြိမ်အရေအတွက် အပါအဝင်၊ သင့်တီဗွီတွင် သိမ်းထားသည့် အဆက်အသွယ်ဆိုင်ရာ အချက်အလက်များ ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် သင့် အဆက်အသွယ် အချက်အလက်များအား သိမ်းဆည်းရန် app အား ခွင့်ပြုထားခြင်းဖြစ်ပြီး၊ အဆက်အသွယ် အချက်အလက်များအား အန္တရာယ်ရှိသော app များက သင်မသိဘဲ ဝေမျှနိုင်သည်။"</string>
+ <string name="permdesc_readContacts" product="tv" msgid="1839238344654834087">"တစ်ဦးတစ်ယောက်ထံ သင်ခေါ်ထားသော၊ အီးမေးိပု့ထားသော၊ သို့မဟုတ် တစ်ခြားနည်းဖြင့် အဆက်အသွယ်ပြုထားသော အကြိမ်အရေအတွက် အပါအဝင်၊ သင့်တီဗွီတွင် သိမ်းထားသည့် အဆက်အသွယ်ဆိုင်ရာ အချက်အလက်များ ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် သင့် အဆက်အသွယ် အချက်အလက်များအား သိမ်းဆည်းရန် app အား ခွင့်ပြုထားခြင်းဖြစ်ပြီး၊ အဆက်အသွယ် အချက်အလက်များအား အန္တရာယ်ရှိသော app များက သင်မသိဘဲ ဝေမျှနိုင်သည်။"</string>
<string name="permdesc_readContacts" product="default" msgid="8440654152457300662">"အပလီကေးရှင်းအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်အကြိမ်ရေ၊ တခြားဆက်သွယ်မှုများစသည်ကဲ့သို့ သင့်ဖုန်းမှာ သိမ်းဆည်းထားသော အဆက်အသွယ်များရဲ့ အချက်အလက်ကို ဖတ်ခွင့်ပြုပါ။ ဤသို့ခွင့်ပြုခြင်းအားဖြင့် အပလီကေးရှင်းများကို သင့် အဆက်အသွယ်၏ အချက်မလက်များကို သိမ်းဆည်းရန် ခွင့်ပြုပြီး အန္တရာယ်ရှိသော အပလီကေးရှင်းများမှ ထိုအချက်အလက်များ ကို သင် မသိစေပဲ ဖြန့်ဝေနိုင််မည် ဖြစ်ပါသည်။"</string>
<string name="permlab_writeContacts" msgid="5107492086416793544">"အဆက်အသွယ်များအား ပြင်ဆင်ခြင်း"</string>
<string name="permdesc_writeContacts" product="tablet" msgid="897243932521953602">"အပလီကေးရှင်းအား သင့်တက်ဘလက်မှာ သိမ်းဆည်းထားသော အဆက်အသွယ်များရဲ့ အချက်အလက် (အထူးအဆက်အသွယ်များအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်ပို့သောအကြိမ်ရေ သို့ အခြားနည်းလမ်းဖြင့်ဆက်သွယ်မှုများ) ကို ပြင်ဆင်ခွင့်ပြုခြင်း။ ဒီခွင့်ပြုချက်က အပလီကေးရှင်းများအား အဆက်အသွယ် အချက်အလက်များ ဖျက်စီးခြင်း လုပ်ဆောင်စေနိုင်မှာ ဖြစ်ပါသည်။"</string>
- <string name="permdesc_writeContacts" product="tv" msgid="5438230957000018959">"အထူးအဆက်အသွယ်များအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်ပို့သောအကြိမ်ရေ သို့ အခြားနည်းလမ်းဖြင့်ဆက်သွယ်မှုများ အပါအဝင်၊ သင့်တီဗွီတွင် သိမ်းဆည်းထားသော အဆက်အသွယ်များ၏ အချက်အလက်အား ပြင်ဆင်ရန် အပလီကေးရှင်းအား ခွင့်ပြုပါ။ ဤသို့ ခွင့်ပြုခြင်းသည် အဆက်အသွယ် အချက်အလက်များ ဖျက်ဆီးရန် အပလီကေးရှင်းများအား ခွင့်ပြုခြင်းဖြစ်၏။"</string>
+ <string name="permdesc_writeContacts" product="tv" msgid="5438230957000018959">"အထူးအဆက်အသွယ်များအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်ပို့သောအကြိမ်ရေ သို့ အခြားနည်းလမ်းဖြင့်ဆက်သွယ်မှုများ အပါအဝင်၊ သင့်တီဗွီတွင် သိမ်းဆည်းထားသော အဆက်အသွယ်များ၏ အချက်အလက်အား ပြင်ဆင်ရန် အပလီကေးရှင်းအား ခွင့်ပြုပါ။ ဤသို့ ခွင့်ပြုခြင်းသည် အဆက်အသွယ် အချက်အလက်များ ဖျက်ဆီးရန် အပလီကေးရှင်းများအား ခွင့်ပြုခြင်းဖြစ်၏။"</string>
<string name="permdesc_writeContacts" product="default" msgid="589869224625163558">"အပလီကေးရှင်းအား သင့်ဖုန်းမှာ သိမ်းဆည်းထားသော အဆက်အသွယ်များရဲ့ အချက်အလက် (အထူးအဆက်အသွယ်များအား ခေါ်ဆိုသော အကြိမ်ရေ၊ အီးမေးလ်ပို့သောအကြိမ်ရေ သို့ အခြားနည်းလမ်းဖြင့်ဆက်သွယ်မှုများ) ကို ပြင်ဆင်ခွင့်ပြုခြင်း။ ဒီခွင့်ပြုချက်က အပလီကေးရှင်းများအား အဆက်အသွယ် အချက်အလက်များ ဖျက်စီးခြင်း လုပ်ဆောင်စေနိုင်မှာ ဖြစ်ပါသည်။"</string>
<string name="permlab_readCallLog" msgid="3478133184624102739">"ခေါ်ဆိုမှု မှတ်တမ်းအား ဖတ်ခြင်း"</string>
<string name="permdesc_readCallLog" product="tablet" msgid="3700645184870760285">"အပလီကေးရှင်းအား တက်ဘလက်၏ အထွက် အဝင် ခေါ်ဆိုမှုများ အပါအဝင် ခေါ်ဆိုမှု မှတ်တမ်းအား ကြည့်ရှုခွင့်ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် ခေါ်ဆိုမှု မှတ်တမ်းအား သိုလှောင်ခြင်း၊ မျှဝေခြင်းများကို သင် မသိရှိပဲ ပြုလုပ်နိုင်မှာ ဖြစ်ပါသည်"</string>
- <string name="permdesc_readCallLog" product="tv" msgid="5611770887047387926">"အဝင်အထွက် ခေါ်ဆိုထားသော ဒေတာများ အပါအဝင်၊ သင့် တီဗွီ၏ ခေါ်ဆိုမှု မှတ်တမ်းအား ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် သင့် ခေါ်ဆိုမှုမှတ်တမ်းဒေတာကို သိမ်းဆည်းရန် app အား ခွင့်ပြုပြီး၊ အန္တရာယ်ရှိသော app များက သင်အား အသိမပေးဘဲ ခေါ်ဆိုမှုမှတ်တမ်းဒေတာကို ဝေမျှနိုင်သည်။"</string>
+ <string name="permdesc_readCallLog" product="tv" msgid="5611770887047387926">"အဝင်အထွက် ခေါ်ဆိုထားသော ဒေတာများ အပါအဝင်၊ သင့် တီဗွီ၏ ခေါ်ဆိုမှု မှတ်တမ်းအား ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် သင့် ခေါ်ဆိုမှုမှတ်တမ်းဒေတာကို သိမ်းဆည်းရန် app အား ခွင့်ပြုပြီး၊ အန္တရာယ်ရှိသော app များက သင်အား အသိမပေးဘဲ ခေါ်ဆိုမှုမှတ်တမ်းဒေတာကို ဝေမျှနိုင်သည်။"</string>
<string name="permdesc_readCallLog" product="default" msgid="5777725796813217244">"အပလီကေးရှင်းအား ဖုန်း၏ အဝင်အထွက် ခေါ်ဆိုမှုများ အပါအဝင် ခေါ်ဆိုမှု မှတ်တမ်းအား ကြည့်ရှုခွင့်ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် ခေါ်ဆိုမှု မှတ်တမ်းအား သိုလှောင်ခြင်း၊ မျှဝေခြင်းများကို သင် မသိရှိပဲ ပြုလုပ်နိုင်မှာ ဖြစ်ပါသည်။"</string>
<string name="permlab_writeCallLog" msgid="8552045664743499354">"ခေါ်ဆိုမှုမှတ်တမ်း ရေးသားခြင်း"</string>
<string name="permdesc_writeCallLog" product="tablet" msgid="6661806062274119245">"အပလီကေးရှင်းအား သင့်တက်ဘလက်၏ ဖုန်းခေါ်ဆိုမှု မှတ်တမ်း (အဝင်အထွက်ခေါ်ဆိုမှု အချက်အလက်များ) ကို ပြင်ဆင်ခွင့် ပေးခြင်း။ အန္တရာယ်ရှိ အပလီကေးရှင်းများမှ ဤအချက်ကို အသုံးပြု၍ သင့် ဖုန်းခေါ်ဆိုမှု မှတ်တမ်းကို ဖျက်ပစ်ခြင်း၊ ပြင်ဆင်ခြင်းများ ပြုလုပ်နိုင်ပါသည်"</string>
@@ -520,34 +520,34 @@
<string name="permdesc_readProfile" product="default" msgid="5462475151849888848">"အပလီကေးရှင်းအား စက်မှာ သိမ်းထားသော သင့်နာမည် နှင့် အဆက်အသွယ် သတင်းအချက်အလက်များကဲ့သို့သော ကိုယ်ရေးကိုယ်တာ အချက်အလက်များအား ဖတ်ခွင့် ပြုခြင်း။ အပလီကေးရှင်းမှ သင့်အား သိရှိနိုင်ပြီး သင့်ကိုယ်ရေးအချက်အလက်များအား အခြားသူများကို ပေးပို့နိုင်ပါသည်"</string>
<string name="permlab_writeProfile" msgid="907793628777397643">"သင့်ရဲ့ အဆက်အသွယ်ကဒ် အား ပြင်ရန်"</string>
<string name="permdesc_writeProfile" product="default" msgid="5552084294598465899">"အပလီကေးရှင်းအား စက်မှာ သိမ်းထားသော သင့်နာမည် နှင့် အဆက်အသွယ် သတင်းအချက်အလက်များကဲ့သို့သော ကိုယ်ရေးကိုယ်တာ အချက်အလက်များအား ပြင်ဆင်ခွင့် သို့ ထည့်ခွင့် ပြုခြင်း။ အပလီကေးရှင်းမှ သင့်အား သိရှိနိုင်ပြီး သင့်ကိုယ်ရေးအချက်အလက်များအား အခြားသူများကို ပေးပို့နိုင်ပါသည်"</string>
- <string name="permlab_bodySensors" msgid="4871091374767171066">"ခန္ဓာကိုယ် အာရံခံကိရိယာများ (နှလုံးခုန်နှုန်း စောင့်ကြည့်စက် လို)"</string>
- <string name="permdesc_bodySensors" product="default" msgid="4380015021754180431">"သင်၏ နှလုံးခုန်နှုန်းလို ရုပ်ပိုင်း အခြေအနေကို စောင့်ကြပ်သည့် အာရုံခံစက်များထံမှ ဒေတာများကို appအား ရယူသုံးခွင့် ပြုပါ။"</string>
- <string name="permlab_readSocialStream" product="default" msgid="1268920956152419170">"သင့်လူမှုရေးရာအဖွဲ့အစည်းတွင်ရေးသားရန်"</string>
+ <string name="permlab_bodySensors" msgid="4871091374767171066">"ခန္ဓာကိုယ် အာရံခံကိရိယာများ (နှလုံးခုန်နှုန်း စောင့်ကြည့်စက် လို)"</string>
+ <string name="permdesc_bodySensors" product="default" msgid="4380015021754180431">"သင်၏ နှလုံးခုန်နှုန်းလို ရုပ်ပိုင်း အခြေအနေကို စောင့်ကြပ်သည့် အာရုံခံစက်များထံမှ ဒေတာများကို appအား ရယူသုံးခွင့် ပြုပါ။"</string>
+ <string name="permlab_readSocialStream" product="default" msgid="1268920956152419170">"သင့်လူမှုရေးရာအဖွဲ့အစည်းတွင်ရေးသားရန်"</string>
<string name="permdesc_readSocialStream" product="default" msgid="4255706027172050872">"အပလီကေးရှင်းအား သင်နှင့် သင့်သူငယ်ချင်းတို့၏ ဆိုရှယ်နက်ဝဘ်မှ နောက်ဆုံးပေါ် အချက်အလက်များအား အသုံးပြုခွင့်နင့် ထပ်တူညီအောင် လုပ်ဆောင်ခွင့် ပြုပါ။ သတင်းအချက်အလက် မျှဝေခြင်းတွင် သတိပြုရန် -- ဤသို့ ခွင့်ပြုခြင်းဖြင့် အပလီကေးရှင်းမှ ယုံကြည်စိတ်ချရမှုကို ဂရုမပြုပဲ သင် နှင့် သူငယ်ချင်းများကြား ဆက်သွယ်မှုများအား သိရှိနိုင်ပါသည်။ မှတ်ချက်။ ဤခွင့်ပြုချက်အား ဆိုရှယ်နက်ဝဘ် အားလုံးတွင် ခွင့်ပြုခြင်း မလုပ်သင့်ပါ။"</string>
- <string name="permlab_writeSocialStream" product="default" msgid="3504179222493235645">"သင့်လူမှုရေးရာအဖွဲ့အစည်းတွင်ရေးသားရန်"</string>
+ <string name="permlab_writeSocialStream" product="default" msgid="3504179222493235645">"သင့်လူမှုရေးရာအဖွဲ့အစည်းတွင်ရေးသားရန်"</string>
<string name="permdesc_writeSocialStream" product="default" msgid="3086557552204114849">"အပလီကေးရှင်းအား သူငယ်ချင်းများရဲ့ ဆိုရှယ်နက်ဝဘ်မှနောက်ဆုံးပေါ် အချက်အလက်များအား ဖန်သားပြင်ပေါ်တွင် ပြခွင့်ပြုရန်။ သတင်းအချက်အလက် မျှဝေခြင်းတွင် သတိပြုရန် -- ဤသို့ ခွင့်ပြုခြင်းဖြင့် အပလီကေးရှင်းမှ သူငယ်ချင်းများထံမှ လာသကဲ့သို့ သတင်းများ ပြုလုပ်နိုင်ပါသည်။ မှတ်ချက်၊ ဤခွင့်ပြုချက်အား ဆိုရှယ်နက်ဝဘ် အားလုံးတွင် ခွင့်ပြုခြင်း မလုပ်သင့်ပါ။"</string>
- <string name="permlab_readCalendar" msgid="5972727560257612398">"ပြက္ခဒိန်အဖြစ်အပျက်များနှင့် လှို့ဝှက်အချက်အလက်များအား ဖတ်ခြင်း"</string>
+ <string name="permlab_readCalendar" msgid="5972727560257612398">"ပြက္ခဒိန်အဖြစ်အပျက်များနှင့် လှို့ဝှက်အချက်အလက်များအား ဖတ်ခြင်း"</string>
<string name="permdesc_readCalendar" product="tablet" msgid="4216462049057658723">"အပလီကေးရှင်းအား တက်ဘလက်ထဲတွင် သိမ်းထားသော သူငယ်ချင်းနှင့် လုပ်ဖော်ကိုင်ဘက်များ၏ ပြက္ခဒိန် အဖြစ်အပျက်များအပါအဝင် အားလုံးကို ဖတ်ရှုခွင့်ပြုပါ။ ဒီခွင့်ပြုချက်ကြောင့် အပလီကေးရှင်းမှ ပြက္ခဒိန် အဖြစ်အပျက်များအား လျှို့ဝှက်မှု သို့ ဂရုပြုမှု ကို ထည့်သွင်းမစဉ်းစားပဲ သိမ်းဆည်းခြင်း၊ မျှဝေခြင်း ပြုလုပ်စေနိုင်ပါသည်"</string>
- <string name="permdesc_readCalendar" product="tv" msgid="3191352452242394196">"သူငယ်ချင်းများ သို့မဟုတ် လုပ်ဖော်ကိုင်ဖက်များ၏ ဖြစ်ရပ်များ အပါအဝင်၊ သင့် တီဗွီတွင် သိမ်းထားသော ပြက္ခဒိန်ရှိ ဖြစ်ရပ်များအား ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် ယုံကြည်စိတ်ချရမှု သို့မဟုတ် ထိခိုက်လွယ်မှုတို့နှင့် မသက်ဆိုင်ဘဲ၊ သင့် ပြက္ခဒိန်ရှိ ဒေတာကို ဝေမျှရန် သို့မဟုတ် သိမ်းဆည်းရန် app အား ခွင့်ပြုသည်။"</string>
+ <string name="permdesc_readCalendar" product="tv" msgid="3191352452242394196">"သူငယ်ချင်းများ သို့မဟုတ် လုပ်ဖော်ကိုင်ဖက်များ၏ ဖြစ်ရပ်များ အပါအဝင်၊ သင့် တီဗွီတွင် သိမ်းထားသော ပြက္ခဒိန်ရှိ ဖြစ်ရပ်များအား ဖတ်ရန် app အား ခွင့်ပြုပါ။ ဤနည်းဖြင့် ယုံကြည်စိတ်ချရမှု သို့မဟုတ် ထိခိုက်လွယ်မှုတို့နှင့် မသက်ဆိုင်ဘဲ၊ သင့် ပြက္ခဒိန်ရှိ ဒေတာကို ဝေမျှရန် သို့မဟုတ် သိမ်းဆည်းရန် app အား ခွင့်ပြုသည်။"</string>
<string name="permdesc_readCalendar" product="default" msgid="7434548682470851583">"အပလီကေးရှင်းအားဖုန်းထဲတွင် သိမ်းထားသော သူငယ်ချင်းနှင့် လုပ်ဖော်ကိုင်ဘက်များ၏ ပြက္ခဒိန် အဖြစ်အပျက်များအပါအဝင် အားလုံးကို ဖတ်ရှုခွင့်ပြုပါ။ ဒီခွင့်ပြုချက်ကြောင့် အပလီကေးရှင်းမှ ပြက္ခဒိန် အဖြစ်အပျက်များအား လျှို့ဝှက်မှု သို့ ဂရုပြုမှု ကို ထည့်သွင်းမစဉ်းစားပဲ သိမ်းဆည်းခြင်း၊ မျှဝေခြင်း ပြုလုပ်စေနိုင်ပါသည်"</string>
- <string name="permlab_writeCalendar" msgid="8438874755193825647">"ပြက္ခဒိန်အဖြစ်အပျက်များကို ထပ်ထည့်ရန် သို့မဟုတ် မွမ်းမံရန်နှင့် ပိုင်ရှင်၏အသိမပေးပဲ ဧည့်သည်များထံ အီးမေးလ်ပို့ရန်"</string>
+ <string name="permlab_writeCalendar" msgid="8438874755193825647">"ပြက္ခဒိန်အဖြစ်အပျက်များကို ထပ်ထည့်ရန် သို့မဟုတ် မွမ်းမံရန်နှင့် ပိုင်ရှင်၏အသိမပေးပဲ ဧည့်သည်များထံ အီးမေးလ်ပို့ရန်"</string>
<string name="permdesc_writeCalendar" product="tablet" msgid="6679035520113668528">"အပလီကေးရှင်းအား သင်၏ တက်ဘလက်တွင် သူငယ်ချင်း အလုပ်ဖော်များ အပါအဝင် သင်၏ ပြောင်းလဲအဖြစ်အပျက်များအား ထည့်ခြင်း၊ ထုတ်ခြင်းအား ခွင့်ပြုရန်။ ဤခွင့်ပြုချက်သည် အပလီကေးရှင်းအား သတင်းများပို့ခြင်းကို ပြက္ခဒိန်ပိုင်ရှင်ဆီမှ လာသလို အနေဖြင့် ပေးပို့ခြင်း သို့မဟုတ် အဖြစ်အပျက်များကို ပိုင်ရှင်မသိပဲ ပြင်ဆင်နိုင်ပါသည်။"</string>
- <string name="permdesc_writeCalendar" product="tv" msgid="1273290605500902507">"သင့် သူငယ်ချင်းများ သို့မဟုတ် လုပ်ဖော်ကိုင်ဖက်များ၏ လှုပ်ရှားမှုများ အပါအဝင်၊ သင့်တီဗွီရှိ လှုပ်ရှားမှုများကို ထပ်ထည့်ရန်၊ ဖယ်ထုတ်ရန်၊ ပြောင်းလဲရန် app အား ခွင့်ပြုပါ။ ဤသို့ပြုပါက ပြက္ခဒိန် ပိုင်ရှင်ဆီမှ စာတိုများ လာသကဲ့သို့ စာများပို့ရန်၊ သို့မဟုတ် ပိုင်ရှင်၏ ခွင့်ပြုချက်မရှိဘဲ လှုပ်ရှားမှုများကို ပြင်ဆင်ရန် app အား ခွင့်ပြုထားခြင်း ဖြစ်၏။"</string>
+ <string name="permdesc_writeCalendar" product="tv" msgid="1273290605500902507">"သင့် သူငယ်ချင်းများ သို့မဟုတ် လုပ်ဖော်ကိုင်ဖက်များ၏ လှုပ်ရှားမှုများ အပါအဝင်၊ သင့်တီဗွီရှိ လှုပ်ရှားမှုများကို ထပ်ထည့်ရန်၊ ဖယ်ထုတ်ရန်၊ ပြောင်းလဲရန် app အား ခွင့်ပြုပါ။ ဤသို့ပြုပါက ပြက္ခဒိန် ပိုင်ရှင်ဆီမှ စာတိုများ လာသကဲ့သို့ စာများပို့ရန်၊ သို့မဟုတ် ပိုင်ရှင်၏ ခွင့်ပြုချက်မရှိဘဲ လှုပ်ရှားမှုများကို ပြင်ဆင်ရန် app အား ခွင့်ပြုထားခြင်း ဖြစ်၏။"</string>
<string name="permdesc_writeCalendar" product="default" msgid="2324469496327249376">"အပလီကေးရှင်းအား သင်၏ ဖုန်းတွင် သူငယ်ချင်း အလုပ်ဖော်များ အပါအဝင် သင်၏ ပြောင်းလဲအဖြစ်အပျက်များအား ထည့်ခြင်း၊ ထုတ်ခြင်းအား ခွင့်ပြုရန်။ ဤခွင့်ပြုချက်သည် အပလီကေးရှင်းအား သတင်းများပို့ခြင်းကို ပြက္ခဒိန်ပိုင်ရှင်ဆီမှ လာသလို အနေဖြင့် ပေးပို့ခြင်း သို့မဟုတ် အဖြစ်အပျက်များကို ပိုင်ရှင်မသိပဲ ပြင်ဆင်နိုင်ပါသည်။"</string>
<string name="permlab_accessMockLocation" msgid="8688334974036823330">"စမ်းသပ်ရန်အတွက် တည်နေရာပုံစံတုမူရင်း"</string>
<string name="permdesc_accessMockLocation" msgid="5808711039482051824">"စမ်းသပ်ရန် သို့ နေရာပြပံ့ပို့းမှု အသစ်သွင်းရန် တည်နေရာဇစ်မြစ်အတုကို ဖန်တီးပါ။ ဤသို့လုပ်ခြင်းအားဖြင့် အပလီကေးရှင်းမှ တည်နေရာကို ကျော်ဖြတ်ပြင်ဆင်ခြင်းနှင်ူ ဂျီပီအက်စ် သို့ နေရာပြပံ့ပိုးမှုကဲ့သို့သော အခြား တည်နေရာဇစ်မြစ်များ၏ အခြေအနေကို ပြန်ပို့ပေးနိုင်မည်ဖြစ်သည်။"</string>
- <string name="permlab_accessLocationExtraCommands" msgid="2836308076720553837">"တည်နေရာပံ့ပိုးမှုညွှန်ကြားချက်အပိုအား ဝင်ရောက်ကြည့်ခြင်း"</string>
- <string name="permdesc_accessLocationExtraCommands" msgid="6078307221056649927">"appအား တည်နေရာ စီမံပေးရေး ညွှန်ကြားချက် အပိုများကို ရယူခွင့်ပြုသည်။ သို့ဖြစ်၍ appသည် GPS သို့မဟုတ် အခြား တည်နေရာ ရင်းမြစ်ကို သုံးကြသူတို့၏ လုပ်ငန်းများကို ဝင်စွက်ခွင့် ပြုနိုင်သည်။"</string>
- <string name="permlab_installLocationProvider" msgid="6578101199825193873">"တည်နေရာဝန်ဆောင်မှုပေးသူအားထည့်သွင်းရန်ခွင့်ပြုခြင်း"</string>
+ <string name="permlab_accessLocationExtraCommands" msgid="2836308076720553837">"တည်နေရာပံ့ပိုးမှုညွှန်ကြားချက်အပိုအား ဝင်ရောက်ကြည့်ခြင်း"</string>
+ <string name="permdesc_accessLocationExtraCommands" msgid="6078307221056649927">"appအား တည်နေရာ စီမံပေးရေး ညွှန်ကြားချက် အပိုများကို ရယူခွင့်ပြုသည်။ သို့ဖြစ်၍ appသည် GPS သို့မဟုတ် အခြား တည်နေရာ ရင်းမြစ်ကို သုံးကြသူတို့၏ လုပ်ငန်းများကို ဝင်စွက်ခွင့် ပြုနိုင်သည်။"</string>
+ <string name="permlab_installLocationProvider" msgid="6578101199825193873">"တည်နေရာဝန်ဆောင်မှုပေးသူအားထည့်သွင်းရန်ခွင့်ပြုခြင်း"</string>
<string name="permdesc_installLocationProvider" msgid="9066146120470591509">"စမ်းသပ်ရန် သို့ နေရာပြပံ့ပို့းမှု အသစ်သွင်းရန် တည်နေရာဇစ်မြစ်အတုကို ဖန်တီးပါ။ ဤသို့လုပ်ခြင်းအားဖြင့် အပလီကေးရှင်းမှ တည်နေရာကို ကျော်ဖြတ်ပြင်ဆင်ခြင်းနှင်ူ ဂျီပီအက်စ် သို့ နေရာပြပံ့ပိုးမှုကဲ့သို့သော အခြား တည်နေရာဇစ်မြစ်များ၏ အခြေအနေကို ပြန်ပို့ပေးနိုင်မည်ဖြစ်သည်။"</string>
<string name="permlab_accessFineLocation" msgid="1191898061965273372">"တည်နေရာ အတိအကျ (ဂျီပီအက်စ် နှင့် ကွန်ရက်အခြေခံ)"</string>
<string name="permdesc_accessFineLocation" msgid="5295047563564981250">"အပလီကေးရှင်းမှ သင့်ရဲ့ တိကျသောနေရာကို ဂျီပီအက်စ် သို့ ဆယ်လူလာတာဝါတိုင်၊ ဝိုင်ဖိုင် အချက်အလက်များ သုံးပြီး ရှာခြင်း ခွင့်ယူပါ။ နေရာပြ ဆားဗစ်များ စက်ပေါ်မှာ ရှိရမှာ ဖြစ်သလို ဖွင့်ထားရမှာလည်း ဖြစ်ပါသည်။ အပလီကေးရှင်းမှ ဒီဆားဗစ်များကို သုံး၍ ရှာဖွေသောကြောင့် ဘက်ထရီ ပိုကုန်နိုင်ပါသည်။"</string>
<string name="permlab_accessCoarseLocation" msgid="4887895362354239628">"အကြမ်းဖျင်းနေရာ (ကွန်ရက်အခြေခံ)"</string>
<string name="permdesc_accessCoarseLocation" msgid="2538200184373302295">"သင့်ရဲ့ ပျမ်းမျတည်နေရာကို အပလီကေးရှင်း အား သိခွင့် ပြုရန်။ ဒီ တည်နေရာကို တည်နေရာရှာဖွေရေး ဆားဗစ်မှ မိုဘိုင်း တာဝါတိုင်၊ ဝိုင်ဖိုင် စသည်တို့မှ တဆင့် ရယူပါသည်။ အပလီကေးရှင်း အနေဖြင့် ဒီ ဆားဗစ်များ ရှိနေရန် လိုအပ်ပါသည်။ ဒီအရာများကို အသုံးပြု၍ သင့်နေရာကို သိနိုင်ပါသည်။"</string>
<string name="permlab_accessSurfaceFlinger" msgid="2363969641792388947">"SurfaceFlingerအား ချိတ်ဆက်ရန်"</string>
- <string name="permdesc_accessSurfaceFlinger" msgid="1041619516733293551">"ဒီ appအား InputFlinger အဆင့်နိမ့် အင်္ဂါရပ်များကို သုံးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_accessSurfaceFlinger" msgid="1041619516733293551">"ဒီ appအား InputFlinger အဆင့်နိမ့် အင်္ဂါရပ်များကို သုံးခွင့် ပြုသည်။"</string>
<string name="permlab_readFrameBuffer" msgid="6690504248178498136">"frame bufferအားဖတ်ခြင်း"</string>
- <string name="permdesc_readFrameBuffer" msgid="4937405521809454680">"appအား ဘောင် စပ်ကြား နေရာ ထဲက အကြောင်းအရာကို ဖတ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_readFrameBuffer" msgid="4937405521809454680">"appအား ဘောင် စပ်ကြား နေရာ ထဲက အကြောင်းအရာကို ဖတ်ခွင့် ပြုသည်။"</string>
<string name="permlab_accessInputFlinger" msgid="5348635270689553857">"InputFlinger အား သုံးခွင့်"</string>
<string name="permdesc_accessInputFlinger" msgid="2104864941201226616">"အပလီကေးရှင်းကို InputFlinger low-level features ပေးသုံးခြင်း"</string>
<string name="permlab_configureWifiDisplay" msgid="5595661694746742168">"ဝိုင်ဖိုင်ဖြင့် ပြသမှုအား ပြင်ဆင်ရန်"</string>
@@ -555,26 +555,26 @@
<string name="permlab_controlWifiDisplay" msgid="393641276723695496">"ဝိုင်ဖိုင်ဖြင့် ပြသမှု အား ထိန်းချုပ်ရန်"</string>
<string name="permdesc_controlWifiDisplay" msgid="4543912292681826986">"အပလီကေးရှင်းအား စက်ရဲ့ အနိမ့်ပိုင်းမှာ ရှိသော ဝိုင်ဖိုင် ပြသမှုအား ထိန်းချုပ်ခွင့်ပြုပါ"</string>
<string name="permlab_controlVpn" msgid="2618442789397588200">"ကိုယ်ပိုင်ကွန်ယက်အတုကို ထိန်းချုပ်ရန်"</string>
- <string name="permdesc_controlVpn" msgid="762852603315861214">"ကိုယ်ပိုင်ကွန်ယက်အတု၏ အရည်အသွေးနိမ့်လုပ်ဆောင်ချက်များကို ထိန်းချုပ်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_controlVpn" msgid="762852603315861214">"ကိုယ်ပိုင်ကွန်ယက်အတု၏ အရည်အသွေးနိမ့်လုပ်ဆောင်ချက်များကို ထိန်းချုပ်ရန် app အား ခွင့်ပြုပါ။"</string>
<string name="permlab_captureAudioOutput" msgid="6857134498402346708">"အသံထွက်မှု အား ဖမ်းယူခြင်း"</string>
<string name="permdesc_captureAudioOutput" msgid="6210597754212208853">"အပလီကေးရှင်းကို အသံဖမ်းခွင့် လမ်းကြောင်းလွှဲခွင့်များ ခွင့်ပြုခြင်း"</string>
- <string name="permlab_captureAudioHotword" msgid="1890553935650349808">"အသံဖြင့်ညွှန်ကြားရန်အတိုကောက်များအား ဖမ်းယူ သိနိုင်မှု"</string>
- <string name="permdesc_captureAudioHotword" msgid="9151807958153056810">"အပလီကေးရှင်းကို အသံဖြင့်ညွှန်းကြားရန်အတိုကောက်များ အတွက် အသံဖမ်းယူခွင့်ပြုခြင်း။ နောက်ကွယ်မှာ ဖြစ်နိုင်ပေမယ့် တခြားအသံဖမ်းခြင်းများ (ဥပမာ ရုပ်သံဖမ်းစက်) များကို ပိတ်ပင်မှု မဖြစ်စေပါ"</string>
+ <string name="permlab_captureAudioHotword" msgid="1890553935650349808">"အသံဖြင့်ညွှန်ကြားရန်အတိုကောက်များအား ဖမ်းယူ သိနိုင်မှု"</string>
+ <string name="permdesc_captureAudioHotword" msgid="9151807958153056810">"အပလီကေးရှင်းကို အသံဖြင့်ညွှန်းကြားရန်အတိုကောက်များ အတွက် အသံဖမ်းယူခွင့်ပြုခြင်း။ နောက်ကွယ်မှာ ဖြစ်နိုင်ပေမယ့် တခြားအသံဖမ်းခြင်းများ (ဥပမာ ရုပ်သံဖမ်းစက်) များကို ပိတ်ပင်မှု မဖြစ်စေပါ"</string>
<string name="permlab_modifyAudioRouting" msgid="7738060354490807723">"အသံ လမ်းကြောင်း"</string>
- <string name="permdesc_modifyAudioRouting" msgid="7205731074267199735">"အက်ပ်အား အသံ လမ်းကြောင်းကို တိုက်ရိုက် ထိန်းချုပ်ခွင့် နှင့် အသံ မူဝါဒ ဆုံးဖြတ်ချက်များကို ကျော်ပြီးလုပ်ပိုင်ခွင့် ပေးသည်။"</string>
+ <string name="permdesc_modifyAudioRouting" msgid="7205731074267199735">"အက်ပ်အား အသံ လမ်းကြောင်းကို တိုက်ရိုက် ထိန်းချုပ်ခွင့် နှင့် အသံ မူဝါဒ ဆုံးဖြတ်ချက်များကို ကျော်ပြီးလုပ်ပိုင်ခွင့် ပေးသည်။"</string>
<string name="permlab_captureVideoOutput" msgid="2246828773589094023">"ရုပ်သံလွှင့်မှုအား ဖမ်းယူရန်"</string>
<string name="permdesc_captureVideoOutput" msgid="359481658034149860">"အပလီကေးရှင်းကို ရုပ်သံဖမ်းခွင့် လမ်းကြောင်းလွှဲခွင့်များ ခွင့်ပြုခြင်း"</string>
<string name="permlab_captureSecureVideoOutput" msgid="7815398969303382016">"လုံခြုံသော ရုပ်သံလွှင့်မှုအား ဖမ်းယူရန်"</string>
<string name="permdesc_captureSecureVideoOutput" msgid="2779793064709350289">"အပလီကေးရှင်းကို လုံးခြုံစိတ်ချရသော အသံဖမ်းခြင်း လမ်းကြောင်းလွှဲခွင့်များ ခွင့်ပြုခြင်း"</string>
<string name="permlab_mediaContentControl" msgid="8749790560720562511">"မီဒီယာ ပလေးဘက် နဲ့ မက်တာဒေတာ အသုံးပြုခွင့် အား ထိန်းချုပ်ခြင်း"</string>
<string name="permdesc_mediaContentControl" msgid="1637478200272062">"အပလီကေးရှင်းအား ရုပ်သံ ပြန်လည်ပြသမှု နှင့် မီဒီယာ အချက်အလက် (ခေါင်းစဉ်၊ ရေးသားသူ) များကို ထိန်းချုပ်ခွင့် ပေးခြင်း"</string>
- <string name="permlab_modifyAudioSettings" msgid="6095859937069146086">"သင့်အသံအပြင်အဆင်အားပြောင်းခြင်း"</string>
+ <string name="permlab_modifyAudioSettings" msgid="6095859937069146086">"သင့်အသံအပြင်အဆင်အားပြောင်းခြင်း"</string>
<string name="permdesc_modifyAudioSettings" msgid="3522565366806248517">"အပလီကေးရှင်းအား အသံအတိုးအကျယ်နှင့် အထွက်ကို မည်သည့်စပီကာကို သုံးရန်စသည်ဖြင့် စက်တစ်ခုလုံးနှင့်ဆိုင်သော အသံဆိုင်ရာ ဆက်တင်များ ပြင်ဆင်ခွင့် ပြုရန်"</string>
<string name="permlab_recordAudio" msgid="3876049771427466323">"အသံဖမ်းခြင်း"</string>
- <string name="permdesc_recordAudio" msgid="4906839301087980680">"အပလီကေးရှင်းအား မိုက်ခရိုဖုန်းဖြင့် အသံသွင်းခွင့် ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် သင့် ခွင့်ပြုချက် မပါပဲ အချိန်မရွေး အသံဖမ်းနိုင်ပါမည်"</string>
+ <string name="permdesc_recordAudio" msgid="4906839301087980680">"အပလီကေးရှင်းအား မိုက်ခရိုဖုန်းဖြင့် အသံသွင်းခွင့် ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် သင့် ခွင့်ပြုချက် မပါပဲ အချိန်မရွေး အသံဖမ်းနိုင်ပါမည်"</string>
<string name="permlab_sim_communication" msgid="1180265879464893029">"ဆင်းမ်ကဒ် ဆက်သွယ်ရေး"</string>
<string name="permdesc_sim_communication" msgid="5725159654279639498">"အပလီကေးရှင်းအား ဆင်းမ်ကဒ်ဆီသို့ အမိန့်များ ပေးပို့ခွင့် ပြုခြင်း။ ဒီ ခွင့်ပြုမှုဟာ အန်တရယ် အလွန် ရှိပါသည်။."</string>
- <string name="permlab_camera" msgid="3616391919559751192">"ဓါတ်ပုံနှင့်ဗွီဒီယိုရိုက်ခြင်း"</string>
+ <string name="permlab_camera" msgid="3616391919559751192">"ဓါတ်ပုံနှင့်ဗွီဒီယိုရိုက်ခြင်း"</string>
<string name="permdesc_camera" msgid="8497216524735535009">"အပလီကေးရှင်းအား အလိုအလျောက် ဓာတ်ပုံရိုက်ခွင့်၊ ဗီဒီယို ရိုက်ကူးခွင့် ပြုပါ။ ဒီခွင့်ပြုချက်က အပလီကေးရှင်းကို အချိန်မရွေး ကင်မရာအား ခွင့်ပြုချက် မလိုအပ်ပဲ သုံးခွင့်ပြုပါသည်။"</string>
<string name="permlab_cameraDisableTransmitLed" msgid="2651072630501126222">"ထုတ်လွှင့်မှုပြ အချက်ပေး မီးအား ကင်မရာ သုံးနေစဉ် ပိတ်ရန်"</string>
<string name="permdesc_cameraDisableTransmitLed" msgid="4764585465480295341">"ကြိုတင်သွင်းထားသော စစ်စတန် စနစ်တစ်ခုကို ကင်မရာ သုံးနေသော မီးအား ထိန်းချုပ်ခွင့်ပေးခြင်း"</string>
@@ -582,58 +582,58 @@
<string name="permlab_brick" product="tv" msgid="4912674222121249410">"တီဗွီအား အပြီးပိတ်ရန်"</string>
<string name="permlab_brick" product="default" msgid="8337817093326370537">"ဖုန်းကို အမြဲတမ်း အလုပ်မလုပ်ရန်ပိတ်ခြင်း"</string>
<string name="permdesc_brick" product="tablet" msgid="4334818808001699530">"appအား တက်ဘလက် တစ်ခုလုံးကို ထာဝရ ပိတ်ပစ်ခွင် ပြုသည်။ ၎င်းမှာ အထူး အန္တရာယ် ရှိနိုင်သည်။"</string>
- <string name="permdesc_brick" product="tv" msgid="7070924544316356349">"တီဗွီတစ်ခုလုံးကို အမြဲပိတ်ပစ်ရန် app အား ခွင့်ပြုပါ။ ဤသည်မှာ လွန်စွာ အန္တရာယ်ရှိ၏။"</string>
+ <string name="permdesc_brick" product="tv" msgid="7070924544316356349">"တီဗွီတစ်ခုလုံးကို အမြဲပိတ်ပစ်ရန် app အား ခွင့်ပြုပါ။ ဤသည်မှာ လွန်စွာ အန္တရာယ်ရှိ၏။"</string>
<string name="permdesc_brick" product="default" msgid="5788903297627283099">"appအား ဖုန်း တစ်ခုလုံးကို ထာဝရ ပိတ်ပစ်ခွင် ပြုသည်။ ၎င်းမှာ အထူး အန္တရာယ် ရှိနိုင်သည်။"</string>
<string name="permlab_reboot" product="tablet" msgid="3436634972561795002">"တက်ဘလက် မဖြစ်မနေပြန်လည်စတင်လုပ်ဆောင်ရန်"</string>
<string name="permlab_reboot" product="tv" msgid="2112102119558886236">"တီဗွီအား မဖြစ်မနေ ပြန်လည်စတင်ရန်"</string>
<string name="permlab_reboot" product="default" msgid="2898560872462638242">"ဖုန်းကို မဖြစ်မနေပြန်လည်စတင်လုပ်ဆောင်ရန်"</string>
- <string name="permdesc_reboot" product="tablet" msgid="8172056180063700741">"appအား တက်ဘလက်ကို ပြန်စတင်ရန် အတင်းအကြပ် ပြုလုပ်ခွင့် ပြုပါသည်။"</string>
- <string name="permdesc_reboot" product="tv" msgid="7116222694344401650">"တီဗွီအား ပြန်လည်စတင်ခိုင်းရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_reboot" product="default" msgid="5326008124289989969">"appအား ဖုန်းကို ပြန်စတင်ရန် အတင်းအကြပ် ပြုလုပ်ခွင့် ပြုပါသည်။"</string>
+ <string name="permdesc_reboot" product="tablet" msgid="8172056180063700741">"appအား တက်ဘလက်ကို ပြန်စတင်ရန် အတင်းအကြပ် ပြုလုပ်ခွင့် ပြုပါသည်။"</string>
+ <string name="permdesc_reboot" product="tv" msgid="7116222694344401650">"တီဗွီအား ပြန်လည်စတင်ခိုင်းရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_reboot" product="default" msgid="5326008124289989969">"appအား ဖုန်းကို ပြန်စတင်ရန် အတင်းအကြပ် ပြုလုပ်ခွင့် ပြုပါသည်။"</string>
<string name="permlab_mount_unmount_filesystems" product="nosdcard" msgid="2927361537942591841">"USBသိုလှောင်ရာဖိုင်စနစ်အား အသုံးပြုခွင့်ပေးရန်"</string>
<string name="permlab_mount_unmount_filesystems" product="default" msgid="4402305049890953810">"SDကတ် ဖိုင် စနစ် အား အသုံးပြုခွင့်ပေးရန်"</string>
- <string name="permdesc_mount_unmount_filesystems" msgid="1829290701658992347">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်း၏ ဖိုင် စနစ်များကို တပ်ဆင်ခြင်း နှင့် ဖြုတ်ခြင်းကို ပြုလုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_mount_unmount_filesystems" msgid="1829290701658992347">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်း၏ ဖိုင် စနစ်များကို တပ်ဆင်ခြင်း နှင့် ဖြုတ်ခြင်းကို ပြုလုပ်ခွင့် ပြုသည်။"</string>
<string name="permlab_mount_format_filesystems" product="nosdcard" msgid="6227819582624904972">"USBသိုလှောင်ရာအား ဖျက်ရန်"</string>
<string name="permlab_mount_format_filesystems" product="default" msgid="262582698639274056">"SDကတ်အား ဖျက်ရန်"</string>
- <string name="permdesc_mount_format_filesystems" msgid="8784268246779198627">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်းကို ပုံစံပြန်ချခွင့် ပြုသည်။"</string>
+ <string name="permdesc_mount_format_filesystems" msgid="8784268246779198627">"appအား ဖယ်ရှားရနိုင်သော သိုလှောင်ခန်းကို ပုံစံပြန်ချခွင့် ပြုသည်။"</string>
<string name="permlab_asec_access" msgid="3411338632002193846">"စက်တွင်းသိုလှောင်ခြင်း၏အချက်အလက်ရယူရန်"</string>
- <string name="permdesc_asec_access" msgid="3094563844593878548">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းထဲက အချက်အလက်များကို ရယူခွင့် ပြုသည်။"</string>
+ <string name="permdesc_asec_access" msgid="3094563844593878548">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းထဲက အချက်အလက်များကို ရယူခွင့် ပြုသည်။"</string>
<string name="permlab_asec_create" msgid="6414757234789336327">"စက်တွင်းသိုလှောင်ခြင်း ပြုလုပ်ဖန်တီးရန်"</string>
- <string name="permdesc_asec_create" msgid="4558869273585856876">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို ဖန်တီးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_asec_create" msgid="4558869273585856876">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို ဖန်တီးခွင့် ပြုသည်။"</string>
<string name="permlab_asec_destroy" msgid="526928328301618022">"စက်တွင်းသိုလှောင်ခြင်းအား ဖျက်စီးရန်"</string>
- <string name="permdesc_asec_destroy" msgid="7218749286145526537">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို ဖျက်ပစ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_asec_destroy" msgid="7218749286145526537">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို ဖျက်ပစ်ခွင့် ပြုသည်။"</string>
<string name="permlab_asec_mount_unmount" msgid="8877998101944999386">"အတွင်းပိုင်း သိုလှောင်ခန်းကို တပ်ဆင်/ဖြုတ်ခြင်း"</string>
- <string name="permdesc_asec_mount_unmount" msgid="3451360114902490929">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို တပ်ဆင်/ဖြုတ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_asec_mount_unmount" msgid="3451360114902490929">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို တပ်ဆင်/ဖြုတ်ခွင့် ပြုသည်။"</string>
<string name="permlab_asec_rename" msgid="7496633954080472417">"စက်တွင်းသိုလှောင်မှုအားအမည်ပြောင်းခြင်း"</string>
- <string name="permdesc_asec_rename" msgid="1794757588472127675">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို အမည်ပြောင်းခွင့် ပြုသည်။"</string>
+ <string name="permdesc_asec_rename" msgid="1794757588472127675">"appအား အတွင်းပိုင်း သိုလှောင်ခန်းကို အမည်ပြောင်းခွင့် ပြုသည်။"</string>
<string name="permlab_vibrate" msgid="7696427026057705834">"တုန်ခုန်မှုအား ထိန်းချုပ်ခြင်း"</string>
- <string name="permdesc_vibrate" msgid="6284989245902300945">"appအား တုန်ခါစက်ကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_vibrate" msgid="6284989245902300945">"appအား တုန်ခါစက်ကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
<string name="permlab_flashlight" msgid="2155920810121984215">"ဓါတ်မီးအား ထိန်းသိမ်းရန်"</string>
- <string name="permdesc_flashlight" msgid="6522284794568368310">"appအား ကား ဖလက်ရှမီးကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
- <string name="permlab_manageUsb" msgid="1113453430645402723">"USB စက်ပစ္စည်းများအတွက် ကြိုက်နှစ်သက်ရာနှင့်ခွင့်ပြုချက်များကို စီမံရန်"</string>
- <string name="permdesc_manageUsb" msgid="7776155430218239833">"appအား USB ကိရိယာများ၏ နှစ်ခြိုက်မှုများ နှင့် ခွင့်ပြုချက်များကို စီမံခန့်ခွဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_flashlight" msgid="6522284794568368310">"appအား ကား ဖလက်ရှမီးကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_manageUsb" msgid="1113453430645402723">"USB စက်ပစ္စည်းများအတွက် ကြိုက်နှစ်သက်ရာနှင့်ခွင့်ပြုချက်များကို စီမံရန်"</string>
+ <string name="permdesc_manageUsb" msgid="7776155430218239833">"appအား USB ကိရိယာများ၏ နှစ်ခြိုက်မှုများ နှင့် ခွင့်ပြုချက်များကို စီမံခန့်ခွဲခွင့် ပြုသည်။"</string>
<string name="permlab_accessMtp" msgid="4953468676795917042">"MTPပရိုတိုကောအား စတင်ရန်"</string>
- <string name="permdesc_accessMtp" msgid="6532961200486791570">"MTP USBပရိုတိုကော အကောင်အထည်ဖော်ဆောင်ရွက်ရန် kernel MTPဒရိုင်ဘာအား သုံးစွဲခွင့်ပြုမည်။"</string>
+ <string name="permdesc_accessMtp" msgid="6532961200486791570">"MTP USBပရိုတိုကော အကောင်အထည်ဖော်ဆောင်ရွက်ရန် kernel MTPဒရိုင်ဘာအား သုံးစွဲခွင့်ပြုမည်။"</string>
<string name="permlab_hardware_test" msgid="4148290860400659146">"စက်ပစ္စည်းများကိုစမ်းသပ်ခြင်း"</string>
- <string name="permdesc_hardware_test" msgid="6597964191208016605">"appအယဒ ဟာ့ဒ်ဝဲကို စမ်းသပ်ရန် ရည်ရွယ်ချက်ဖြင့် သာမည အစိတ်အပိုင်း အမျိုးမျိုးကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_hardware_test" msgid="6597964191208016605">"appအယဒ ဟာ့ဒ်ဝဲကို စမ်းသပ်ရန် ရည်ရွယ်ချက်ဖြင့် သာမည အစိတ်အပိုင်း အမျိုးမျိုးကို ထိန်းချုပ်ခွင့် ပြုသည်။"</string>
<string name="permlab_fm" msgid="8749504526866832">"FM ရေဒီယိုကို ရယူသုံးရန်"</string>
- <string name="permdesc_fm" msgid="4145699441237962818">"appအား FM ရေဒီယို ဖွင့်လျက် နားထောင်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_fm" msgid="4145699441237962818">"appအား FM ရေဒီယို ဖွင့်လျက် နားထောင်ခွင့် ပြုသည်။"</string>
<string name="permlab_callPhone" msgid="3925836347681847954">"ဖုန်းနံပါတ်များကိုတိုက်ရိုက်ခေါ်ဆိုခြင်း"</string>
<string name="permdesc_callPhone" msgid="3740797576113760827">"အပလီကေးရှင်းအား အလိုအလျောက် ဖုန်းခေါ်ခွင့် ပြုပါ။ မလိုအပ်သော ဖုန်းခ များ ဖြစ်ပေါ်နိုင်ပါသည်။ ဒီခွင့်ပြုခြင်းမှာ အရေးပေါ်ဖုန်းခေါ်ခြင်း မပါဝင်ပါ။ သံသယဖြစ်စရာ အပလီကေးရှင်းများက သင့်မသိပဲ ဖုန်းခေါ်ခြင်းဖြင့် ဖုန်းခ ပိုမိုကျနိုင်ပါသည်။"</string>
- <string name="permlab_callPrivileged" msgid="4198349211108497879">"မည်သည့်ဖုန်းနံပါတ်မဆိုအားတိုက်ရိုက်ခေါ်ဆိုခြင်း"</string>
- <string name="permdesc_callPrivileged" msgid="1689024901509996810">"appအား ဘယ် ဖုန်း နံပါတ်ကိုမဆို၊ အရေးပေါ် နံပါတ်များ အပါအဝင်ကို၊ သင်၏ စွက်ဖက်မှု မပါဘဲ၊ ခေါ်ဆိုခွင့် ပြုသည်။ အကြံအဖန် appများက အရေးပေါ် ဝန်ဆောင်မှုများ ထံသို့ မလိုလားအပ်သော သို့မဟုတ် တရားမဝင်သော ခေါ်ဆိုမှုများ ပြုလုပ်လာနိုင်ကြမည်။"</string>
+ <string name="permlab_callPrivileged" msgid="4198349211108497879">"မည်သည့်ဖုန်းနံပါတ်မဆိုအားတိုက်ရိုက်ခေါ်ဆိုခြင်း"</string>
+ <string name="permdesc_callPrivileged" msgid="1689024901509996810">"appအား ဘယ် ဖုန်း နံပါတ်ကိုမဆို၊ အရေးပေါ် နံပါတ်များ အပါအဝင်ကို၊ သင်၏ စွက်ဖက်မှု မပါဘဲ၊ ခေါ်ဆိုခွင့် ပြုသည်။ အကြံအဖန် appများက အရေးပေါ် ဝန်ဆောင်မှုများ ထံသို့ မလိုလားအပ်သော သို့မဟုတ် တရားမဝင်သော ခေါ်ဆိုမှုများ ပြုလုပ်လာနိုင်ကြမည်။"</string>
<string name="permlab_performCdmaProvisioning" product="tablet" msgid="4842576994144604821">"CDMAတက်ပလက်အစသတ်မှတ်ခြင်းကို တိုက်ရိုက်စတင်ရန်"</string>
<string name="permlab_performCdmaProvisioning" product="tv" msgid="3485391974208100809">"CDMA TV ပြင်ဆင်သတ်မှတ်မှုအား တိုက်ရိုက်စတင်ရန်"</string>
<string name="permlab_performCdmaProvisioning" product="default" msgid="5604848095315421425">"CDMAဖုန်း အစသတ်မှတ်ခြင်းကို တိုက်ရိုက်စတင်ရန်"</string>
- <string name="permdesc_performCdmaProvisioning" msgid="1994193538802314186">"appအား CDMA အတွက် စီမံလုပ်ကိုင်မှုကို စတင်ခွင့် ပြုသည်။ ကြံဖန် appများက မလိုအပ်ဘဲနှင့် CDMA အတွက် စီမံလုပ်ကိုင်မှုကို စတင်နိုင်ကြသည်။"</string>
- <string name="permlab_locationUpdates" msgid="7785408253364335740">"တည်နေရာအဆင့်မြှင့်ခြင်းသတိပေးချက်အားထိန်းချုပ်ရန်"</string>
- <string name="permdesc_locationUpdates" msgid="1120741557891438876">"appအား ရေဒီယိုထံမှ တည်နေရာ မွမ်းမံမှု အကြောင်းကြားစာများကို ပိတ်/ဖွင့်ခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်နိုင်ပါ။"</string>
+ <string name="permdesc_performCdmaProvisioning" msgid="1994193538802314186">"appအား CDMA အတွက် စီမံလုပ်ကိုင်မှုကို စတင်ခွင့် ပြုသည်။ ကြံဖန် appများက မလိုအပ်ဘဲနှင့် CDMA အတွက် စီမံလုပ်ကိုင်မှုကို စတင်နိုင်ကြသည်။"</string>
+ <string name="permlab_locationUpdates" msgid="7785408253364335740">"တည်နေရာအဆင့်မြှင့်ခြင်းသတိပေးချက်အားထိန်းချုပ်ရန်"</string>
+ <string name="permdesc_locationUpdates" msgid="1120741557891438876">"appအား ရေဒီယိုထံမှ တည်နေရာ မွမ်းမံမှု အကြောင်းကြားစာများကို ပိတ်/ဖွင့်ခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်နိုင်ပါ။"</string>
<string name="permlab_checkinProperties" msgid="7855259461268734914">"ချက်ခ်အင်ဂုဏ်သတ္တိများအား ဝင်ရောက်ချိတ်ဆက်ခြင်း"</string>
- <string name="permdesc_checkinProperties" msgid="4024526968630194128">"appအား စစ်ဆေးရေး ဝန်ဆောင်မှုက အာပ်လုဒ် လုပ်ခဲ့သည့် အရည်အချင်းများကို ရယူသုံးလျက် ရေး/ဖတ် ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
+ <string name="permdesc_checkinProperties" msgid="4024526968630194128">"appအား စစ်ဆေးရေး ဝန်ဆောင်မှုက အာပ်လုဒ် လုပ်ခဲ့သည့် အရည်အချင်းများကို ရယူသုံးလျက် ရေး/ဖတ် ခွင့် ပြုသည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
<string name="permlab_bindGadget" msgid="776905339015863471">"ဝဒ်ဂျက်အား ရွေးရန်"</string>
- <string name="permdesc_bindGadget" msgid="8261326938599049290">"appအား မည်သည့် ဝီဂျက်ကို မည်သည့် app သုံးနိုင်ကြောင်းကို စနစ်များ ပြောခွင့် ပေးသည်။ ယင်း ခွင့်ပြုချက်မျိုး ရှိသော appသည် အခြား appများအား ကိုယ်ရေး ဒေတာများကို ရယူသုံးခွင့် ပေးနိုင်သည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
+ <string name="permdesc_bindGadget" msgid="8261326938599049290">"appအား မည်သည့် ဝီဂျက်ကို မည်သည့် app သုံးနိုင်ကြောင်းကို စနစ်များ ပြောခွင့် ပေးသည်။ ယင်း ခွင့်ပြုချက်မျိုး ရှိသော appသည် အခြား appများအား ကိုယ်ရေး ဒေတာများကို ရယူသုံးခွင့် ပေးနိုင်သည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
<string name="permlab_modifyPhoneState" msgid="8423923777659292228">"ဖုန်းအခြေအနေအား မွမ်းမံခြင်း"</string>
- <string name="permdesc_modifyPhoneState" msgid="1029877529007686732">"appအား ဖုန်း၏ အင်္ဂါရပ်များကို ထိန်းချုပ်ခွင့် ပြုသည်။ ယင်း ခွင့်ပြုချက် ရှိသော appသည် ကွန်ရက်များကို ပြောင်းလဲခြင်း၊ ဖုန်း ရေဒီယိုကို ပိတ်ဖွင့်ခြင်း နှင့် အလားတူများကို သင့်ကို အကြောင်းတောင် မကြားဘဲ ပြုလုပ်နိုင်သည်။"</string>
+ <string name="permdesc_modifyPhoneState" msgid="1029877529007686732">"appအား ဖုန်း၏ အင်္ဂါရပ်များကို ထိန်းချုပ်ခွင့် ပြုသည်။ ယင်း ခွင့်ပြုချက် ရှိသော appသည် ကွန်ရက်များကို ပြောင်းလဲခြင်း၊ ဖုန်း ရေဒီယိုကို ပိတ်ဖွင့်ခြင်း နှင့် အလားတူများကို သင့်ကို အကြောင်းတောင် မကြားဘဲ ပြုလုပ်နိုင်သည်။"</string>
<string name="permlab_readPhoneState" msgid="9178228524507610486">"ဖုန်းရဲ့ အခြေအနေ နှင့် အမှတ်သညာအား ဖတ်ခြင်း"</string>
<string name="permdesc_readPhoneState" msgid="1639212771826125528">"အပလီကေးရှင်းအား ဖုန်းရဲ့ စွမ်းဆောင်ချက်များအား သုံးခွင့်ပြုပါ။ အပလီကေးရှင်းအနေဖြင့် ဖုန်းနံပါတ်၊ စက်နံပါတ်၊ ဖုန်းခေါ်နေမှု ရှိမရှိနှင့် တဖက်မှ ဖုန်းနံပါတ် များအား သိရှိနိုင်ပါသည်"</string>
<string name="permlab_readPrecisePhoneState" msgid="5476483020282007597">"ဖုန်းရဲ့ တိကျသော အခြေအနေအား ဖတ်ရှုခြင်း"</string>
@@ -641,99 +641,99 @@
<string name="permlab_wakeLock" product="tablet" msgid="1531731435011495015">"တက်ပလက်အား ပိတ်ခြင်းမှ ကာကွယ်ခြင်း"</string>
<string name="permlab_wakeLock" product="tv" msgid="2601193288949154131">"တီဗွီအား နားနေခြင်းမှ ကာကွယ်ရန်"</string>
<string name="permlab_wakeLock" product="default" msgid="573480187941496130">"ဖုန်းအနားယူခြင်းမပြုလုပ်စေရန်"</string>
- <string name="permdesc_wakeLock" product="tablet" msgid="7311319824400447868">"appအား တက်ဘလက်ကို အနားမယူနိုင်အောင် ဟန့်တားခွင့် ပြုသည်။"</string>
- <string name="permdesc_wakeLock" product="tv" msgid="3208534859208996974">"တီဗွီ ရပ်နားသွားခြင်းအား ကာကွယ်ရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_wakeLock" product="default" msgid="8559100677372928754">"appအား ဖုန်းကို အနားမယူနိုင်အောင် ဟန့်တားခွင့် ပြုသည်။"</string>
+ <string name="permdesc_wakeLock" product="tablet" msgid="7311319824400447868">"appအား တက်ဘလက်ကို အနားမယူနိုင်အောင် ဟန့်တားခွင့် ပြုသည်။"</string>
+ <string name="permdesc_wakeLock" product="tv" msgid="3208534859208996974">"တီဗွီ ရပ်နားသွားခြင်းအား ကာကွယ်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_wakeLock" product="default" msgid="8559100677372928754">"appအား ဖုန်းကို အနားမယူနိုင်အောင် ဟန့်တားခွင့် ပြုသည်။"</string>
<string name="permlab_transmitIr" msgid="7545858504238530105">"အနီအောက်ရောင်ခြည် ထုတ်လွှတ်ခြင်း"</string>
<string name="permdesc_transmitIr" product="tablet" msgid="5358308854306529170">"အပလီကေးရှင်းအား တက်ဘလက်ရဲ့ အနီအောက်ရောင်ခြည် ထုတ်လွှတ်ခြင်းအား သုံးခွင့်ပေးခြင်း"</string>
- <string name="permdesc_transmitIr" product="tv" msgid="3926790828514867101">"တီဗွီ၏ အင်ဖရာရက် ထုတ်လွှတ်မှုအား အသုံးပြုရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_transmitIr" product="tv" msgid="3926790828514867101">"တီဗွီ၏ အင်ဖရာရက် ထုတ်လွှတ်မှုအား အသုံးပြုရန် app အား ခွင့်ပြုပါ။"</string>
<string name="permdesc_transmitIr" product="default" msgid="7957763745020300725">"အပလီကေးရှင်းအား ဖုန်းရဲ့ အနီအောက်ရောင်ခြည် ထုတ်လွှတ်ခြင်းအား သုံးခွင့်ပေးခြင်း"</string>
- <string name="permlab_devicePower" product="tablet" msgid="2787034722616350417">"တက်ဘလက် အဖွင့်အပိတ်"</string>
- <string name="permlab_devicePower" product="tv" msgid="7579718349658943416">"တီဗွီ ပါဝါ ဖွင့်ရန် သို့ ပိတ်ရန်"</string>
- <string name="permlab_devicePower" product="default" msgid="4928622470980943206">"ဖုန်းဖွင့် (သို့)ပိတ်"</string>
- <string name="permdesc_devicePower" product="tablet" msgid="6689862878984631831">"appအား တက်ဘလက်ကို ဖွင့် သို့မဟုတ် ပိတ်ခွင့် ပြုသည်။"</string>
- <string name="permdesc_devicePower" product="tv" msgid="1334908641773273512">"တီဗွီအား ဖွင့်ရန် သို့မဟုတ် ပိတ်ရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_devicePower" product="default" msgid="6037057348463131032">"appအား ဖုန်းကို ဖွင့် သို့မဟုတ် ပိတ်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_devicePower" product="tablet" msgid="2787034722616350417">"တက်ဘလက် အဖွင့်အပိတ်"</string>
+ <string name="permlab_devicePower" product="tv" msgid="7579718349658943416">"တီဗွီ ပါဝါ ဖွင့်ရန် သို့ ပိတ်ရန်"</string>
+ <string name="permlab_devicePower" product="default" msgid="4928622470980943206">"ဖုန်းဖွင့် (သို့)ပိတ်"</string>
+ <string name="permdesc_devicePower" product="tablet" msgid="6689862878984631831">"appအား တက်ဘလက်ကို ဖွင့် သို့မဟုတ် ပိတ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_devicePower" product="tv" msgid="1334908641773273512">"တီဗွီအား ဖွင့်ရန် သို့မဟုတ် ပိတ်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_devicePower" product="default" msgid="6037057348463131032">"appအား ဖုန်းကို ဖွင့် သို့မဟုတ် ပိတ်ခွင့် ပြုသည်။"</string>
<string name="permlab_userActivity" msgid="1677844893921729548">"မျက်နှာပြင်မှိန်ချိန် ပြန်ညှိရန်"</string>
<string name="permdesc_userActivity" msgid="651746160252248024">"မျက်နှာပြင်မှိန်ချိန် ပြန်ညှိရန် app ကိုခွင့်ပြုပါ။"</string>
- <string name="permlab_factoryTest" msgid="3715225492696416187">"စက်ရုံစမ်းသပ်စနစ်ဖြင့် အလုပ်လုပ်ဆောင်စေရန်"</string>
- <string name="permdesc_factoryTest" product="tablet" msgid="3952059318359653091">"ထုတ်လုပ်သူ၏အနိမ့်စားအဆင့်စမ်းသပ်မှုအနေဖြင့်လုပ်ဆောင်စေမည် တက်ပလက်စက်အား လုံးဝဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုမည်။ တက်ပလက်မှာ ထုတ်လုပ်သူ၏စမ်းသပ်မှုစနစ်ဖြင့် လုပ်ဆောင်နေစဥ်သာ ရရှိမည်။"</string>
- <string name="permdesc_factoryTest" product="tv" msgid="2105643629211155695">"တီဗွီ၏ ဟာ့ဒ်ဝဲစက်ပိုင်းဆိုင်ရာသို့ အပြည့်အစုံဝင်ခွင့်ပြုရင်း၊ အဆင့်နိမ့်ထုတ်လုပ်သူ၏ စမ်းသပ်မှုအား လုပ်ဆောင်ပါ။ တီဗွီအား ထုတ်လုပ်သူ၏ စမ်းသပ်မုဒ်တွင် ဖွင့်ထားစဉ်တွင်သာ လုပ်ဆောင်နိုင်မည်။"</string>
- <string name="permdesc_factoryTest" product="default" msgid="8136644990319244802">"ထုတ်လုပ်သူ၏အနိမ့်စားအဆင့်စမ်းသပ်မှုအနေဖြင့်လုပ်ဆောင်စေမည် ဖုန်းစက်အား လုံးဝဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုမည် ဖုန်းမှာ ထုတ်လုပ်သူ၏စမ်းသပ်မှုစနစ်ဖြင့် လုပ်ဆောင်နေစဥ်သာ ရရှိမည်"</string>
+ <string name="permlab_factoryTest" msgid="3715225492696416187">"စက်ရုံစမ်းသပ်စနစ်ဖြင့် အလုပ်လုပ်ဆောင်စေရန်"</string>
+ <string name="permdesc_factoryTest" product="tablet" msgid="3952059318359653091">"ထုတ်လုပ်သူ၏အနိမ့်စားအဆင့်စမ်းသပ်မှုအနေဖြင့်လုပ်ဆောင်စေမည် တက်ပလက်စက်အား လုံးဝဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုမည်။ တက်ပလက်မှာ ထုတ်လုပ်သူ၏စမ်းသပ်မှုစနစ်ဖြင့် လုပ်ဆောင်နေစဥ်သာ ရရှိမည်။"</string>
+ <string name="permdesc_factoryTest" product="tv" msgid="2105643629211155695">"တီဗွီ၏ ဟာ့ဒ်ဝဲစက်ပိုင်းဆိုင်ရာသို့ အပြည့်အစုံဝင်ခွင့်ပြုရင်း၊ အဆင့်နိမ့်ထုတ်လုပ်သူ၏ စမ်းသပ်မှုအား လုပ်ဆောင်ပါ။ တီဗွီအား ထုတ်လုပ်သူ၏ စမ်းသပ်မုဒ်တွင် ဖွင့်ထားစဉ်တွင်သာ လုပ်ဆောင်နိုင်မည်။"</string>
+ <string name="permdesc_factoryTest" product="default" msgid="8136644990319244802">"ထုတ်လုပ်သူ၏အနိမ့်စားအဆင့်စမ်းသပ်မှုအနေဖြင့်လုပ်ဆောင်စေမည် ဖုန်းစက်အား လုံးဝဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုမည် ဖုန်းမှာ ထုတ်လုပ်သူ၏စမ်းသပ်မှုစနစ်ဖြင့် လုပ်ဆောင်နေစဥ်သာ ရရှိမည်"</string>
<string name="permlab_setWallpaper" msgid="6627192333373465143">"နောက်ခံအား သတ်မှတ်ရန်"</string>
- <string name="permdesc_setWallpaper" msgid="7373447920977624745">"appအား စနစ် နောက်ခံပုံကို သတ်မှတ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_setWallpaper" msgid="7373447920977624745">"appအား စနစ် နောက်ခံပုံကို သတ်မှတ်ခွင့် ပြုသည်။"</string>
<string name="permlab_setWallpaperHints" msgid="3278608165977736538">"နောက်ခံပုံအား အရွယ်အစားပြောင်းရန်"</string>
- <string name="permdesc_setWallpaperHints" msgid="8235784384223730091">"appအား စနစ် နောက်ခံပုံ ဆိုက်ဆိုင်ရာ ညွှန်းချက်များကို သတ်မှတ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_setWallpaperHints" msgid="8235784384223730091">"appအား စနစ် နောက်ခံပုံ ဆိုက်ဆိုင်ရာ ညွှန်းချက်များကို သတ်မှတ်ခွင့် ပြုသည်။"</string>
<string name="permlab_masterClear" msgid="2315750423139697397">"စနစ်အား မူလစက်ရုံအခြအေနေထံ ပြန်လည်သတ်မှတ်ရန်"</string>
- <string name="permdesc_masterClear" msgid="3665380492633910226">"appအား စနစ်ကို စက်ရုံအတိုင်း လုံးဝ ပြန်ညှိခြင်း၊ ဒေတာများ၊ စီစင်ဖွဲ့စည်းမှု နှင့် တပ်ဆင်ပြီး appများ အားလုံးကို ဖျက်ပစ်ခြင်း လုပ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_masterClear" msgid="3665380492633910226">"appအား စနစ်ကို စက်ရုံအတိုင်း လုံးဝ ပြန်ညှိခြင်း၊ ဒေတာများ၊ စီစင်ဖွဲ့စည်းမှု နှင့် တပ်ဆင်ပြီး appများ အားလုံးကို ဖျက်ပစ်ခြင်း လုပ်ခွင့် ပြုသည်။"</string>
<string name="permlab_setTime" msgid="2021614829591775646">"အချိန်သတ်မှတ်ရန်"</string>
- <string name="permdesc_setTime" product="tablet" msgid="1896341438151152881">"appအား တက်ဘလက်၏ နာရီ အချိန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
- <string name="permdesc_setTime" product="tv" msgid="1826398919861882682">"တီဗွီ၏ အချိန်နာရီအား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_setTime" product="default" msgid="1855702730738020">"appအား ဖုန်း၏ နာရီ အချိန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_setTime" product="tablet" msgid="1896341438151152881">"appအား တက်ဘလက်၏ နာရီ အချိန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_setTime" product="tv" msgid="1826398919861882682">"တီဗွီ၏ အချိန်နာရီအား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_setTime" product="default" msgid="1855702730738020">"appအား ဖုန်း၏ နာရီ အချိန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
<string name="permlab_setTimeZone" msgid="2945079801013077340">"အချိန်ဇုန်းအား သတ်မှတ်ခြင်း"</string>
- <string name="permdesc_setTimeZone" product="tablet" msgid="1676983712315827645">"appအား တက်ဘလက်၏ နာရီ ဇုန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
- <string name="permdesc_setTimeZone" product="tv" msgid="888864653946175955">"တီဗွီ၏ အချိန်အပိုင်းအခြားဇုန်အား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_setTimeZone" product="default" msgid="4499943488436633398">"appအား ဖုန်း၏ နာရီ ဇုန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
- <string name="permlab_accountManagerService" msgid="4829262349691386986">"AccountManagerServiceအနေဖြင့်ပြုမူရန်"</string>
+ <string name="permdesc_setTimeZone" product="tablet" msgid="1676983712315827645">"appအား တက်ဘလက်၏ နာရီ ဇုန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_setTimeZone" product="tv" msgid="888864653946175955">"တီဗွီ၏ အချိန်အပိုင်းအခြားဇုန်အား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_setTimeZone" product="default" msgid="4499943488436633398">"appအား ဖုန်း၏ နာရီ ဇုန်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permlab_accountManagerService" msgid="4829262349691386986">"AccountManagerServiceအနေဖြင့်ပြုမူရန်"</string>
<string name="permdesc_accountManagerService" msgid="1948455552333615954">"အပလီကေးရှင်းအား အကောင့် စစ်ဆေးသော အရာများအား ဖုန်းခေါ်ခွင့်ပြုပါ"</string>
<string name="permlab_getAccounts" msgid="1086795467760122114">"စက်ပေါ်မှာ အကောင့်များ ရှာဖွေခြင်း"</string>
<string name="permdesc_getAccounts" product="tablet" msgid="2741496534769660027">"အပလီကေးရှင်းအား တက်ဘလက်မှ သိရှိထားသော အကောင့်များအား ရယူခွင့်ပေးပါ။ ဒီထဲတွင် သင် ထည့်သွင်းထားသော အပလီကေးရှင်းများမှတဆင့် ပြုလုပ်ထားသော အကောင့်များပါ ပါဝင်နိုင်ပါသည်။"</string>
- <string name="permdesc_getAccounts" product="tv" msgid="4190633395633907543">"တီဗွီ သိသော အကောင့်စာရင်းအား ရယူခွင့်ကို app အား ခွင့်ပြုပါ။ သင်ထည့်သွင်းထားသည့် အပလီကေးရှင်းများမှ ဖန်တီးထားသော မည်သည့်အကောင့်မဆို ပါဝင်မည်။"</string>
+ <string name="permdesc_getAccounts" product="tv" msgid="4190633395633907543">"တီဗွီ သိသော အကောင့်စာရင်းအား ရယူခွင့်ကို app အား ခွင့်ပြုပါ။ သင်ထည့်သွင်းထားသည့် အပလီကေးရှင်းများမှ ဖန်တီးထားသော မည်သည့်အကောင့်မဆို ပါဝင်မည်။"</string>
<string name="permdesc_getAccounts" product="default" msgid="3448316822451807382">"အပလီကေးရှင်းအား ဖုန်းမှ သိရှိထားသော အကောင့်စာရင်းများအား ရယူခွင့်ပေးပါ။ ဒီထဲတွင် သင် ထည့်သွင်းထားသော အပလီကေးရှင်းများမှတဆင့် ပြုလုပ်ထားသော အကောင့်များပါ ပါဝင်နိုင်ပါသည်။"</string>
<string name="permlab_authenticateAccounts" msgid="5265908481172736933">"အကောင့်များ ဖန်တီးရန်နှင့် စကားဝှက်များ ရွေးချယ်ရန်"</string>
- <string name="permdesc_authenticateAccounts" msgid="5472124296908977260">"appအား အကောင့် မန်နေဂျာ၏ အကောင့် စိစစ်ရေး လုပ်နိုင်စွမ်းများကို၊ အကောင့်များ ဖန်တီးခြင်း နှင့် ၎င်းတို့၏ စကားဝှက်များကို ရယူခြင်း နှင့် သတ်မှတ်ခြင်း အပါအဝင်ကို၊ အသုံးချခွင့် ပြုသည်။"</string>
+ <string name="permdesc_authenticateAccounts" msgid="5472124296908977260">"appအား အကောင့် မန်နေဂျာ၏ အကောင့် စိစစ်ရေး လုပ်နိုင်စွမ်းများကို၊ အကောင့်များ ဖန်တီးခြင်း နှင့် ၎င်းတို့၏ စကားဝှက်များကို ရယူခြင်း နှင့် သတ်မှတ်ခြင်း အပါအဝင်ကို၊ အသုံးချခွင့် ပြုသည်။"</string>
<string name="permlab_manageAccounts" msgid="4983126304757177305">"အကောင့်များအား ထည့် သို့ ထုတ်ပါ"</string>
- <string name="permdesc_manageAccounts" msgid="8698295625488292506">"appအား အကောင့်များ ထည့်ခြင်း နှင့် ဖယ်ရှားခြင်း နှင့် ၎င်းတို့၏ စကားဝှက်များကို ဖျက်ခြင်းလို လုပ်ရပ်များကို လုပ်ကိုင်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_manageAccounts" msgid="8698295625488292506">"appအား အကောင့်များ ထည့်ခြင်း နှင့် ဖယ်ရှားခြင်း နှင့် ၎င်းတို့၏ စကားဝှက်များကို ဖျက်ခြင်းလို လုပ်ရပ်များကို လုပ်ကိုင်ခွင့် ပြုသည်။"</string>
<string name="permlab_useCredentials" msgid="235481396163877642">"စက်ပေါ်ရှိ သုံးစွဲသူအကောင့်များ"</string>
- <string name="permdesc_useCredentials" msgid="7984227147403346422">"appအား အထောက်အထား စိစစ်ရေး တိုကင်များကို တောင်းဆိုခွင့် ပြုသည်။"</string>
+ <string name="permdesc_useCredentials" msgid="7984227147403346422">"appအား အထောက်အထား စိစစ်ရေး တိုကင်များကို တောင်းဆိုခွင့် ပြုသည်။"</string>
<string name="permlab_accessNetworkState" msgid="4951027964348974773">"ကွန်ရက် ချိတ်ဆက်မှုများအား ကြည့်ရန်"</string>
<string name="permdesc_accessNetworkState" msgid="8318964424675960975">"အပလီကေးရှင်းအား မည်သည့်ကွန်ရက်နက်ဝဘ်ရှိသလဲ၊ မည်သည့်ကွန်ရက်နှင့် ချိတ်ဆက်ထားလဲ စသည်ဖြင့် ကွန်ရက်ချိတ်ဆက်မှုများ၏ သတင်းအချက်အလက်များကို ကြည့်ခွင့်ပေးရန်"</string>
<string name="permlab_createNetworkSockets" msgid="8018758136404323658">"အပြည့်အ၀ ကွန်ရက်သုံးခွင့်ရရန်"</string>
<string name="permdesc_createNetworkSockets" msgid="3403062187779724185">"အပလီကေးရှင်းအား ကွန်ရက်ဆော့ကတ်များ တည်ဆောက်ခွင့်၊ တသီးတသန့် ကွန်ရက် ပရိုတိုကောလ်များ သုံးခွင့် ပြုပါ။ အင်တာနက်မှ အချက်အလက်များ ပေးပို့ခြင်းကို ဘရောက်ဇာနှင့် တခြား အပလီကေးရှင်းများက လုပ်ဆောင်ပေးသောကြောင့် ဒီခွင့်ပြုချက်က အင်တာနက်မှ အချက်အလက် ပေးပို့ခြင်း မလိုအပ်ပါ"</string>
- <string name="permlab_writeApnSettings" msgid="505660159675751896">"ကွန်ယက်အပြင်အဆင်နှင့် အသွားအလာများကို ပြောင်းလဲ/ကြားဖြတ်စေခြင်း"</string>
- <string name="permdesc_writeApnSettings" msgid="5333798886412714193">"appအား ကွန်ရက် ဆက်တင်များကို ပြောင်းလဲလျက် ကွန်ရက် ဆက်သွယ်မှုများ အားလုံးကို ကြားဖြတ်ယူခြင်း နှင့် စုံစမ်းစစ်ဆေးခြင်း၊ ဥပမာ၊ မည်သည့် APN ၏ ပရော့က်စီ နှင့် ပို့တ်များကို ပြောင်းလဲခြင်း၊ ပြုလုပ်ခွင့် ပြုသည်။ ကြံဖန် appများက သင် မသိရဘဲနှင့် ကွန်ရက် အထုပ်များကို စောင့်ကြည့်ခြင်း၊ အခြားသို့ ညွှန်းပို့ခြင်း၊ သို့မဟုတ် မွမ်းမံခြင်းကို ပြုလုပ်နိုင်သည်။"</string>
+ <string name="permlab_writeApnSettings" msgid="505660159675751896">"ကွန်ယက်အပြင်အဆင်နှင့် အသွားအလာများကို ပြောင်းလဲ/ကြားဖြတ်စေခြင်း"</string>
+ <string name="permdesc_writeApnSettings" msgid="5333798886412714193">"appအား ကွန်ရက် ဆက်တင်များကို ပြောင်းလဲလျက် ကွန်ရက် ဆက်သွယ်မှုများ အားလုံးကို ကြားဖြတ်ယူခြင်း နှင့် စုံစမ်းစစ်ဆေးခြင်း၊ ဥပမာ၊ မည်သည့် APN ၏ ပရော့က်စီ နှင့် ပို့တ်များကို ပြောင်းလဲခြင်း၊ ပြုလုပ်ခွင့် ပြုသည်။ ကြံဖန် appများက သင် မသိရဘဲနှင့် ကွန်ရက် အထုပ်များကို စောင့်ကြည့်ခြင်း၊ အခြားသို့ ညွှန်းပို့ခြင်း၊ သို့မဟုတ် မွမ်းမံခြင်းကို ပြုလုပ်နိုင်သည်။"</string>
<string name="permlab_changeNetworkState" msgid="958884291454327309">"ကွန်ယက်ဆက်သွယ်မှုအားပြောင်းခြင်း"</string>
- <string name="permdesc_changeNetworkState" msgid="6789123912476416214">"appအား ကွန်ရက် ချိတ်ဆက်နိုင်စွမ်း အခြေအနေကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
- <string name="permlab_changeTetherState" msgid="5952584964373017960">"တစ်ဆင့်ပွါးဆက်သွယ်မှုအားပြောင်းခြင်း"</string>
- <string name="permdesc_changeTetherState" msgid="1524441344412319780">"appအား ချိတ်တွဲထားသည့် ကွန်ရက် ချိတ်ဆက်နိုင်စွမ်း အခြေအနေကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_changeNetworkState" msgid="6789123912476416214">"appအား ကွန်ရက် ချိတ်ဆက်နိုင်စွမ်း အခြေအနေကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permlab_changeTetherState" msgid="5952584964373017960">"တစ်ဆင့်ပွါးဆက်သွယ်မှုအားပြောင်းခြင်း"</string>
+ <string name="permdesc_changeTetherState" msgid="1524441344412319780">"appအား ချိတ်တွဲထားသည့် ကွန်ရက် ချိတ်ဆက်နိုင်စွမ်း အခြေအနေကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
<string name="permlab_changeBackgroundDataSetting" msgid="1400666012671648741">"နောက်ခံဒေတာအသုံးပြုခြင်းဆက်တင်အား ပြောင်းခြင်း"</string>
- <string name="permdesc_changeBackgroundDataSetting" msgid="5347729578468744379">"appအား နောက်ခံ ဒေတာ သုံးစွဲမှု ဆက်တင်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
+ <string name="permdesc_changeBackgroundDataSetting" msgid="5347729578468744379">"appအား နောက်ခံ ဒေတာ သုံးစွဲမှု ဆက်တင်ကို ပြောင်းလဲခွင့် ပြုသည်။"</string>
<string name="permlab_accessWifiState" msgid="5202012949247040011">"ဝိုင်ဖိုင် ချိတ်ဆက်မှများအား ကြည့်ရန်"</string>
<string name="permdesc_accessWifiState" msgid="5002798077387803726">"အပလီကေးရှင်းအား ဝိုင်ဖိုင် ဖွင့်ထား မထား၊ ချိတ်ဆက်ထားသော ပိုင်ဖိုင် စက်ပစ္စည်း စသဖြင့် ဝိုင်ဖိုင်နှင့် သက်ဆိုင်သော အချက်အလက် ကြည့်ခွင့်ပေးရန်"</string>
<string name="permlab_changeWifiState" msgid="6550641188749128035">"ဝိုင်ဖိုင်အား ချိတ်ဆက်ရန် နှင့် ဆက်သွယ်မှု ဖြတ်တောက်ရန်"</string>
<string name="permdesc_changeWifiState" msgid="7137950297386127533">"အပလီကေးရှင်းအား ဝိုင်ဖိုင်တည်နေရာများအား ဆက်သွယ်ခြင်း၊ ဆက်သွယ်မှု ရပ်ဆိုင်းခြင်း၊ ဝိုင်ဖိုင်ကွန်ရက်အတွက် စက်အပြင်အဆင်များ ပြုလုပ်ခြင်း ခွင့်ပြုပါ"</string>
- <string name="permlab_changeWifiMulticastState" msgid="1368253871483254784">"Wi-Fi Multicastလက်ခံခြင်းကိုခွင့်ပြုရန်"</string>
+ <string name="permlab_changeWifiMulticastState" msgid="1368253871483254784">"Wi-Fi Multicastလက်ခံခြင်းကိုခွင့်ပြုရန်"</string>
<string name="permdesc_changeWifiMulticastState" product="tablet" msgid="7969774021256336548">"အပလီကေးရှင်းအား ဝိုင်ဖိုင်ကွန်ရက်ပေါ်တွင် သင့်တက်ဘလက်တစ်ခုထဲအားမဟုတ်ပဲ multicast လိပ်စာအား သုံးပြီး လွှင့်ထုတ်သော အချက်အလက်များ လက်ခံခွင့် ပြုပါ။ ဒီလိုသုံးခြင်းမှာ non-multicast ထက် ဘက်ထရီ ပိုကုန်ပါသည်။"</string>
- <string name="permdesc_changeWifiMulticastState" product="tv" msgid="9031975661145014160">"သင့် တီဗွီနှင့်သာ မဟုတ်ဘဲ၊ ကွန်ယက်လိပ်စာများစွာ သုံးသော ဝိုင်ဖိုင်ကွန်ယက်ရှိ စက်ကိရိယာအားလုံးသို့ ပို့သော ပက်ကက်များအား လက်ခံရရှိရန် app အားခွင့်ပြုပါ။ ၎င်းသည် ကွန်ယက်လိပ်စာများစွာမသုံးသောမုဒ်ထက် စွမ်းအားပိုသုံး၏။"</string>
+ <string name="permdesc_changeWifiMulticastState" product="tv" msgid="9031975661145014160">"သင့် တီဗွီနှင့်သာ မဟုတ်ဘဲ၊ ကွန်ယက်လိပ်စာများစွာ သုံးသော ဝိုင်ဖိုင်ကွန်ယက်ရှိ စက်ကိရိယာအားလုံးသို့ ပို့သော ပက်ကက်များအား လက်ခံရရှိရန် app အားခွင့်ပြုပါ။ ၎င်းသည် ကွန်ယက်လိပ်စာများစွာမသုံးသောမုဒ်ထက် စွမ်းအားပိုသုံး၏။"</string>
<string name="permdesc_changeWifiMulticastState" product="default" msgid="6851949706025349926">"အပလီကေးရှင်းအား ဝိုင်ဖိုင်နက်ဘ်ပေါ်တွင် သင့်ဖုန်းတစ်ခုထဲအားမဟုတ်ပဲ multicast လိပ်စာအား သုံးပြီး လွှင့်ထုတ်သော အချက်အလက်များ လက်ခံခွင့် ပြုပါ။ ဒီလိုသုံးခြင်းမှာ non-multicast ထက် ဘက်ထရီ ပိုကုန်ပါသည်။"</string>
<string name="permlab_bluetoothAdmin" msgid="6006967373935926659">"ဘလူးတု ဆက်တင်များအား သုံးခွင့်ပေးရန်"</string>
- <string name="permdesc_bluetoothAdmin" product="tablet" msgid="6921177471748882137">"appအား ဒေသန္တရ ဘလူးတုသ် တက်ဘလက်ကို စီစဉ်ဖွဲ့စည်းခွင့်ကို၎င်း၊ အဝေးထိန်း ကိရိယာများကို ရှာကြံလျက် ချိတ်တွဲခွင့်ကို၎င်း ပေးထားသည်။"</string>
- <string name="permdesc_bluetoothAdmin" product="tv" msgid="3373125682645601429">"ကွန်ယက်တွင်းရှိ ဘလူးတုသ် တီဗွီအား ပုံစံပြင်ရန်နှင့်၊ အဝေးရှိ စက်ကိရိယာများအား ရှာဖွေတွဲဖက်ရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_bluetoothAdmin" product="default" msgid="8931682159331542137">"appအား ဒေသန္တရ ဘလူးတုသ် ဖုန်းကို စီစဉ်ဖွဲ့စည်းခွင့်ကို၎င်း၊ အဝေးထိန်း ကိရိယာများကို ရှာကြံလျက် ချိတ်တွဲခွင့်ကို၎င်း ပေးထားသည်။"</string>
+ <string name="permdesc_bluetoothAdmin" product="tablet" msgid="6921177471748882137">"appအား ဒေသန္တရ ဘလူးတုသ် တက်ဘလက်ကို စီစဉ်ဖွဲ့စည်းခွင့်ကို၎င်း၊ အဝေးထိန်း ကိရိယာများကို ရှာကြံလျက် ချိတ်တွဲခွင့်ကို၎င်း ပေးထားသည်။"</string>
+ <string name="permdesc_bluetoothAdmin" product="tv" msgid="3373125682645601429">"ကွန်ယက်တွင်းရှိ ဘလူးတုသ် တီဗွီအား ပုံစံပြင်ရန်နှင့်၊ အဝေးရှိ စက်ကိရိယာများအား ရှာဖွေတွဲဖက်ရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_bluetoothAdmin" product="default" msgid="8931682159331542137">"appအား ဒေသန္တရ ဘလူးတုသ် ဖုန်းကို စီစဉ်ဖွဲ့စည်းခွင့်ကို၎င်း၊ အဝေးထိန်း ကိရိယာများကို ရှာကြံလျက် ချိတ်တွဲခွင့်ကို၎င်း ပေးထားသည်။"</string>
<string name="permlab_bluetoothPriv" msgid="4009494246009513828">"အပလီကေးရှင်းသုံးပြီး ဘလူးတုသ်နှင့် ပူးတွဲချိတ်ဆက်ခြင်း အား ခွင့်ပြုရန်"</string>
<string name="permdesc_bluetoothPriv" product="tablet" msgid="8045735193417468857">"အပလီကေးရှင်းကို အဝေးက စက်များနဲ့ ကိုင်ထားသူ မလုပ်ဆောင်ပဲ ပူးတွဲခွင့်ပေးခြင်း"</string>
<string name="permdesc_bluetoothPriv" product="tv" msgid="8045735193417468857">"အပလီကေးရှင်းကို အဝေးက စက်များနဲ့ ကိုင်ထားသူ မလုပ်ဆောင်ပဲ ပူးတွဲခွင့်ပေးခြင်း"</string>
<string name="permdesc_bluetoothPriv" product="default" msgid="8045735193417468857">"အပလီကေးရှင်းကို အဝေးက စက်များနဲ့ ကိုင်ထားသူ မလုပ်ဆောင်ပဲ ပူးတွဲခွင့်ပေးခြင်း"</string>
<string name="permlab_bluetoothMap" msgid="6372198338939197349">"ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးရန်"</string>
- <string name="permdesc_bluetoothMap" product="tablet" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
- <string name="permdesc_bluetoothMap" product="tv" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
- <string name="permdesc_bluetoothMap" product="default" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_bluetoothMap" product="tablet" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_bluetoothMap" product="tv" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_bluetoothMap" product="default" msgid="5784090105926959958">"appအား ဘလူးတုသ် MAP ဒေတာကို ရယူသုံးခွင့် ပြုသည်။"</string>
<string name="permlab_accessWimaxState" msgid="4195907010610205703">"ဝိုင်မက်စ် နှင့် ချိတ်ဆက်ရန်နှင့် ဆက်သွယ်မှု ဖြတ်တောက်ရန်"</string>
<string name="permdesc_accessWimaxState" msgid="6360102877261978887">"အပလီကေးရှင်းအား ဝိုင်မက်စ် အခြေအနေ ကြည့်ခွင့်ပေးရန် ဥပမာ ဝိုင်မက်စ် ဖွင့်ထား မထား၊ ဝိုင်မက်စ် ချိတ်ဆက်ထားသော ကွန်ရက်အခြေအနေ"</string>
<string name="permlab_changeWimaxState" msgid="2405042267131496579">"ဝိုက်မက်စ် အခြေအနေအား ပြင်ရန်"</string>
<string name="permdesc_changeWimaxState" product="tablet" msgid="3156456504084201805">"အပလီကေးရှင်းအား တက်ဘလက်ကို ဝိုင်မက်စ် ကွန်ရက်များနဲ့ ဆက်သွယ်ခြင်း၊ ဆက်သွယ်မှု ရပ်ဆိုင်းခြင်းများ လုပ်ခွင့်ပြုပါ"</string>
- <string name="permdesc_changeWimaxState" product="tv" msgid="6022307083934827718">"တီဗွီနှင့် ချိတ်ဆက်ရန် app အား ခွင့်ပြုပြီး တီဗွီနှင့် WiMAX ကွန်ယက်များ ချိတ်ဆက်ထားမှုအား ဖြတ်တောက်ပါ။"</string>
+ <string name="permdesc_changeWimaxState" product="tv" msgid="6022307083934827718">"တီဗွီနှင့် ချိတ်ဆက်ရန် app အား ခွင့်ပြုပြီး တီဗွီနှင့် WiMAX ကွန်ယက်များ ချိတ်ဆက်ထားမှုအား ဖြတ်တောက်ပါ။"</string>
<string name="permdesc_changeWimaxState" product="default" msgid="697025043004923798">"အပလီကေးရှင်းအား ဖုန်းကို ဝိုင်မက်စ် ကွန်ရက်များနဲ့ ဆက်သွယ်ခြင်း၊ ဆက်သွယ်မှု ရပ်ဆိုင်းခြင်းများ လုပ်ခွင့်ပြုပါ"</string>
<string name="permlab_scoreNetworks" msgid="6445777779383587181">"ကွန်ရက်များကို အမှတ်ပေးခြင်း"</string>
- <string name="permdesc_scoreNetworks" product="tablet" msgid="1304304745850215556">"appအား ကွန်ရက်များကို အဆင့်အတန်း သတ်မှတ်ခွင့် ပြုကာ တက်ဘလက် အနေနှင့် မည်သည့် ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်းကို ဆုံးဖြတ်စေနိုင်သည်။"</string>
- <string name="permdesc_scoreNetworks" product="tv" msgid="5444434643862417649">"ကွန်ယက်များအား အဆင့်အတန်း သတ်မှတ်ပြီး တီဗွီသည် မည်သည့်ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်း အားသာပေးစေရန် app အား ခွင့်ပြုပါ။"</string>
- <string name="permdesc_scoreNetworks" product="default" msgid="1831501848178651379">"appအား ကွန်ရက်များကို အဆင့်အတန်း သတ်မှတ်ခွင့် ပြုကာ ဖုန်း အနေနှင့် မည်သည့် ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်းကို ဆုံးဖြတ်စေနိုင်သည်။"</string>
+ <string name="permdesc_scoreNetworks" product="tablet" msgid="1304304745850215556">"appအား ကွန်ရက်များကို အဆင့်အတန်း သတ်မှတ်ခွင့် ပြုကာ တက်ဘလက် အနေနှင့် မည်သည့် ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်းကို ဆုံးဖြတ်စေနိုင်သည်။"</string>
+ <string name="permdesc_scoreNetworks" product="tv" msgid="5444434643862417649">"ကွန်ယက်များအား အဆင့်အတန်း သတ်မှတ်ပြီး တီဗွီသည် မည်သည့်ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်း အားသာပေးစေရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_scoreNetworks" product="default" msgid="1831501848178651379">"appအား ကွန်ရက်များကို အဆင့်အတန်း သတ်မှတ်ခွင့် ပြုကာ ဖုန်း အနေနှင့် မည်သည့် ကွန်ရက်ကို ပိုနှစ်ခြိုက်သင့်ကြောင်းကို ဆုံးဖြတ်စေနိုင်သည်။"</string>
<string name="permlab_bluetooth" msgid="6127769336339276828">"ဘလူးတု စက်များနှင့် အတူတွဲချိတ်ရန်"</string>
<string name="permdesc_bluetooth" product="tablet" msgid="3480722181852438628">"အပလီကေးရှင်းအား တက်ဘလက်ပေါ်မှ ဘလူးတုသ် အပြင်အဆင်အား ကြည့်ခွင့်၊ တခြားစက်များနဲ့ ဆက်သွယ်ခြင်း၊ ဆက်သွယ်ခြင်းကို လက်ခံခွင့်ပြုပါ။"</string>
- <string name="permdesc_bluetooth" product="tv" msgid="3974124940101104206">"တီဗွီတွင် ဘလူးတုသ်အတွက် ပုံစံပြင်ခြင်းများ ဝင်ကြည့်ရန်နှင့်၊ တွဲဖက်ထားသည့် စက်ကိရိယာများအား ချိတ်ဆက်မှုပြုရန်နှင့်လက်ခံရန် app အား ခွင့်ပြုပါ။"</string>
+ <string name="permdesc_bluetooth" product="tv" msgid="3974124940101104206">"တီဗွီတွင် ဘလူးတုသ်အတွက် ပုံစံပြင်ခြင်းများ ဝင်ကြည့်ရန်နှင့်၊ တွဲဖက်ထားသည့် စက်ကိရိယာများအား ချိတ်ဆက်မှုပြုရန်နှင့်လက်ခံရန် app အား ခွင့်ပြုပါ။"</string>
<string name="permdesc_bluetooth" product="default" msgid="3207106324452312739">"အပလီကေးရှင်းအား ဖုန်းမှဘလူးတု အပြင်အဆင်အား ကြည့်ခွင့်၊ တခြားစက်များနဲ့ ဆက်သွယ်ခြင်း၊ ဆက်သွယ်ခြင်းကို လက်ခံခွင့်ပြုပါ။"</string>
<string name="permlab_nfc" msgid="4423351274757876953">"Near Field Communicationအား ထိန်းချုပ်ရန်"</string>
- <string name="permdesc_nfc" msgid="7120611819401789907">"appအား တာတို စက်ကွင်း ဆက်သွယ်ရေး (NFC) တဲဂ်များ၊ ကဒ်များ နှင့် ဖတ်ကြသူတို့နှင့် ဆက်သွယ်ပြောဆိုခွင့် ပြုသည်။"</string>
+ <string name="permdesc_nfc" msgid="7120611819401789907">"appအား တာတို စက်ကွင်း ဆက်သွယ်ရေး (NFC) တဲဂ်များ၊ ကဒ်များ နှင့် ဖတ်ကြသူတို့နှင့် ဆက်သွယ်ပြောဆိုခွင့် ပြုသည်။"</string>
<string name="permlab_disableKeyguard" msgid="3598496301486439258">"ဖန်သားပြင် သော့ချခြင်းအား မလုပ်နိုင်အောင် ပိတ်ရန်"</string>
<string name="permdesc_disableKeyguard" msgid="6034203065077122992">"အပလီကေးရှင်းအား သော့ချခြင်းနှင့် သက်ဆိုင်ရာ စကားဝှက်သတ်မှတ်ခြင်းများအား မသုံးနိုင်အောင် ပိတ်ခြင်းကို ခွင့်ပြုရန်။ ဥပမာ ဖုန်းလာလျှင် သော့ပိတ်ခြင်း ပယ်ဖျက်ခြင်း၊ ဖုန်းပြောပြီးလျှင် သော့ကို အလိုအလျောက် ပြန်ပိတ်ခြင်း"</string>
<string name="permlab_readSyncSettings" msgid="6201810008230503052">"ထပ်တူပြုအဆင်အပြင်အားဖတ်ခြင်း"</string>
@@ -742,48 +742,48 @@
<string name="permdesc_writeSyncSettings" msgid="8956262591306369868">"အကောင့်တစ်ခုအတွက် ထပ်တူညီအောင်လုပ်သော ဆက်တင်များကို ပြင်ရန် အပလီကေးရှင်းကို ခွင့်ပြုရန်။ ဥပမာ People အပလီကေးရှင်း က အကောင့်တစ်ခုနှင့် ထပ်တူညီအောင် လုပ်ဆောင်ခြင်းအား ဖွင့်ရန် သုံးနိုင်သည်။"</string>
<string name="permlab_readSyncStats" msgid="7396577451360202448">"ထပ်တူကူးခြင်း ကိန်းဂဏန်းအချက်အလက်များကို ဖတ်ခြင်း"</string>
<string name="permdesc_readSyncStats" msgid="1510143761757606156">"အပလီကေးရှင်းအား အကောင့်တစ်ခု၏ ထပ်တူညီအောင် လုပ်ဆောင်မှု အခြေအနေ (ပြီးခဲ့သော အဖြစ်အပျက်၊ ဒေတာ ပမာဏ ပါဝင်မှု များအပါအဝင်)ကို ဖတ်ရှုခွင့် ပြုပါ။"</string>
- <string name="permlab_subscribedFeedsRead" msgid="4756609637053353318">"အမည်သွင်းထားသောဖိဖ့်များကို ဖတ်ခြင်း"</string>
- <string name="permdesc_subscribedFeedsRead" msgid="5557058907906144505">"appအား လောလောဆယ် စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများ ဆိုင်ရာ အသေးစိတ်များကို ရယူခွင့်ပြုသည်။"</string>
- <string name="permlab_subscribedFeedsWrite" msgid="9015246325408209296">"အမည်သွင်းထားသောဖိဖ့်များကို ရေးခြင်း"</string>
- <string name="permdesc_subscribedFeedsWrite" msgid="6928930188826089413">"appအား လောလောဆယ် စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများကို ပြောင်းပစ်နိုင်သည်။"</string>
+ <string name="permlab_subscribedFeedsRead" msgid="4756609637053353318">"အမည်သွင်းထားသောဖိဖ့်များကို ဖတ်ခြင်း"</string>
+ <string name="permdesc_subscribedFeedsRead" msgid="5557058907906144505">"appအား လောလောဆယ် စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများ ဆိုင်ရာ အသေးစိတ်များကို ရယူခွင့်ပြုသည်။"</string>
+ <string name="permlab_subscribedFeedsWrite" msgid="9015246325408209296">"အမည်သွင်းထားသောဖိဖ့်များကို ရေးခြင်း"</string>
+ <string name="permdesc_subscribedFeedsWrite" msgid="6928930188826089413">"appအား လောလောဆယ် စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက သင်၏ စင့်က် လုပ်ပြီးသား ထည့်သွင်းမှုများကို ပြောင်းပစ်နိုင်သည်။"</string>
<string name="permlab_readDictionary" msgid="4107101525746035718">"အဘိဓာန်သို့ သင့် ထည့်ထားသည်များအား ဖတ်ခြင်း"</string>
<string name="permdesc_readDictionary" msgid="659614600338904243">"အပလီကေးရှင်းအား အဘိဓာန်တွင် သိမ်းဆည်းထားသော စာလုံးအားလုံး၊ နာမည်များနှင့် စာစုများ ဖတ်ရှုခွင့် ပြုရန်"</string>
<string name="permlab_writeDictionary" msgid="2183110402314441106">"သုံးစွဲသူ၏ အဘိဓာန် ထဲသို့ စာလုံးများ ထည့်ခြင်း"</string>
- <string name="permdesc_writeDictionary" msgid="8185385716255065291">"အသုံးပြုသူ အဘိဓာန်ထဲသို့ စာလုံး အသစ်များကို ရေးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_writeDictionary" msgid="8185385716255065291">"အသုံးပြုသူ အဘိဓာန်ထဲသို့ စာလုံး အသစ်များကို ရေးခွင့် ပြုသည်။"</string>
<string name="permlab_sdcardRead" product="nosdcard" msgid="367275095159405468">"USB သိုလှောင်မှုမှ အချက်အလက်များအား ဖတ်ခြင်း"</string>
<string name="permlab_sdcardRead" product="default" msgid="2188156462934977940">"SD ကဒ်မှ အချက်အလက်များအား ဖတ်ခြင်း"</string>
<string name="permdesc_sdcardRead" product="nosdcard" msgid="3446988712598386079">"အပလီကေးရှင်းအား USB သိုလှောင်မှုပေါ်မှ ဒေတာများ ဖတ်ရှုခွင့်ပြုခြင်း"</string>
<string name="permdesc_sdcardRead" product="default" msgid="2607362473654975411">"အပလီကေးရှင်းအား အက်စ်ဒီ ကဒ်ပေါ်မှ ဒေတာများ ဖတ်ရှုခွင့်ပြုခြင်း"</string>
<string name="permlab_sdcardWrite" product="nosdcard" msgid="8485979062254666748">"USBမှဒေတာအား ပြင် သို့ ဖျက်ရန်"</string>
<string name="permlab_sdcardWrite" product="default" msgid="8805693630050458763">"SD ကဒ်ပေါ်မှ အချက်အလက်များအား ပြင်ဆင်ခြင်း သို့ ဖျက်ပစ်ခြင်း"</string>
- <string name="permdesc_sdcardWrite" product="nosdcard" msgid="6175406299445710888">"appအား USB သိုလှောင်ခန်းသို့ ရေးခွင့် ပြုသည်။"</string>
- <string name="permdesc_sdcardWrite" product="default" msgid="4337417790936632090">"appအား SD ကဒ်သို့ ရေးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_sdcardWrite" product="nosdcard" msgid="6175406299445710888">"appအား USB သိုလှောင်ခန်းသို့ ရေးခွင့် ပြုသည်။"</string>
+ <string name="permdesc_sdcardWrite" product="default" msgid="4337417790936632090">"appအား SD ကဒ်သို့ ရေးခွင့် ပြုသည်။"</string>
<string name="permlab_mediaStorageWrite" product="default" msgid="6859839199706879015">"စက်တွင်းမီဒီယာသိမ်းဆည်းမှုအကြောင်းအရာများကို မွမ်းမံ/ပယ်ဖျက်ရန်"</string>
- <string name="permdesc_mediaStorageWrite" product="default" msgid="8189160597698529185">"appအား အတွင်းပိုင်း မီဒီယာ သိုလှော်ခန်း အကြေင်းအရာများကို မွမ်းမံခွင့် ပြုသည်။"</string>
+ <string name="permdesc_mediaStorageWrite" product="default" msgid="8189160597698529185">"appအား အတွင်းပိုင်း မီဒီယာ သိုလှော်ခန်း အကြေင်းအရာများကို မွမ်းမံခွင့် ပြုသည်။"</string>
<string name="permlab_manageDocs" product="default" msgid="5778318598448849829">"စာရွက်စာတန်းများ သိုလှောင်မှုကို ထိန်းသိမ်းခြင်း"</string>
<string name="permdesc_manageDocs" product="default" msgid="8704323176914121484">"အပလီကေးရှင်းအား စာရွက်စာတမ်းများအား ထိန်းချုပ်ခွင့်ပေးခြင်း"</string>
<string name="permlab_sdcardAccessAll" msgid="8150613823900460576">"အသုံးပြုသူ အားလုံး၏ ပြင်ပသိုလှောင်ရာအား အသုံးပြုရန်"</string>
<string name="permdesc_sdcardAccessAll" msgid="3215208357415891320">"အပလီကေးရှင်းအား သုံးစွဲသူ အားလုံးအတွက် ပြင်ပသိမ်းဆည်မှုအား သုံးခွင့် ပြုပါ။"</string>
<string name="permlab_cache_filesystem" msgid="5656487264819669824">"cache ဖိုင်စနစ်အား ဝင်ရောက်ချိတ်ဆက်ခြင်း"</string>
- <string name="permdesc_cache_filesystem" msgid="5578967642265550955">"appအား ဖိုင်စနစ်၏ကက်ရှကို ဖတ် နှင့် ရေး ခွင့်ပြုသည်။"</string>
+ <string name="permdesc_cache_filesystem" msgid="5578967642265550955">"appအား ဖိုင်စနစ်၏ကက်ရှကို ဖတ် နှင့် ရေး ခွင့်ပြုသည်။"</string>
<string name="permlab_use_sip" msgid="2052499390128979920">"SIP ခေါ်ဆိုမှုများ ခေါ်ရန်/လက်ခံရန်"</string>
<string name="permdesc_use_sip" msgid="2297804849860225257">"SIP ခေါ်ဆိုမှုများ ခေါ်ရန်နှင့် လက်ခံနိုင်ရန် app ကို ခွင့်ပြုပါ။"</string>
<string name="permlab_register_sim_subscription" msgid="3166535485877549177">"တယ်လီကွမ် ဆင်းမ် ချိတ်ဆက်မှုများကို မှတ်ပုံတင်ပါ"</string>
- <string name="permdesc_register_sim_subscription" msgid="2138909035926222911">"appအား တယ်လီကွမ် ဆင်းမ် ချိတ်ဆက်မှုကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_register_sim_subscription" msgid="2138909035926222911">"appအား တယ်လီကွမ် ဆင်းမ် ချိတ်ဆက်မှုကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
<string name="permlab_register_call_provider" msgid="108102120289029841">"တယ်လီကွမ် တယ်လီကွမ် ချိတ်ဆက်မှု အသစ်များကို မှတ်ပုံတင်ပါ"</string>
- <string name="permdesc_register_call_provider" msgid="7034310263521081388">"appအား တယ်လီကွမ် ချိတ်ဆက်မှု အသစ်များကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_register_call_provider" msgid="7034310263521081388">"appအား တယ်လီကွမ် ချိတ်ဆက်မှု အသစ်များကို မှတ်ပုံတင်ခွင့် ပြုသည်။"</string>
<string name="permlab_connection_manager" msgid="1116193254522105375">"တယ်လီကွမ် ဆက်သွယ်မှုများကို စီမံရန်"</string>
- <string name="permdesc_connection_manager" msgid="5925480810356483565">"appအား တယ်လီကွမ် ဆက်သွယ်မှုများကို စီမံခွင့် ပြုပါ။"</string>
+ <string name="permdesc_connection_manager" msgid="5925480810356483565">"appအား တယ်လီကွမ် ဆက်သွယ်မှုများကို စီမံခွင့် ပြုပါ။"</string>
<string name="permlab_bind_incall_service" msgid="6773648341975287125">"ခေါ်ဆိုမှု-အဝင် မျက်နှာပြင်နဲ့ တုံ့ပြန်လုပ်ကိုင်ရန်"</string>
<string name="permdesc_bind_incall_service" msgid="8343471381323215005">"appအား အသုံးပြုသူက ခေါ်ဆိုမှုအဝင် မျက်နှာပြင် ဘယ်အချိန်မှာ ဘယ်လို မြင်ရမှာကို ထိန်းချုပ်ခွင့်ပေးရန်"</string>
- <string name="permlab_bind_connection_service" msgid="3557341439297014940">"တယ်လီဖုန်း ဝန်ဆောင်မှုများနှင့် အပြန်အလှန် တုံ့ပြန်မှု"</string>
- <string name="permdesc_bind_connection_service" msgid="4008754499822478114">"appအား ခေါ်ဆိုမှုများ လုပ်ခြင်း/လက်ခံခြင်း ပြုလုပ်နိုင်ရန် တယ်လီဖုန်း ဝန်ဆောင်မှုများနှင့် အပြန်အလှန် တုံ့ပြန်မှုကို ခွင့်ပြုသည်။"</string>
+ <string name="permlab_bind_connection_service" msgid="3557341439297014940">"တယ်လီဖုန်း ဝန်ဆောင်မှုများနှင့် အပြန်အလှန် တုံ့ပြန်မှု"</string>
+ <string name="permdesc_bind_connection_service" msgid="4008754499822478114">"appအား ခေါ်ဆိုမှုများ လုပ်ခြင်း/လက်ခံခြင်း ပြုလုပ်နိုင်ရန် တယ်လီဖုန်း ဝန်ဆောင်မှုများနှင့် အပြန်အလှန် တုံ့ပြန်မှုကို ခွင့်ပြုသည်။"</string>
<string name="permlab_control_incall_experience" msgid="9061024437607777619">"အသုံးပြုသူ အတွက် ခေါ်ဆိုမှုအဝင် လုပ်ကိုင်ပုံကို စီစဉ်ပေးခြင်း"</string>
- <string name="permdesc_control_incall_experience" msgid="915159066039828124">"appအား အသုံးပြုသူ အတွက် ခေါ်ဆိုမှုအဝင် လုပ်ကိုင်ပုံကို စီစဉ်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_control_incall_experience" msgid="915159066039828124">"appအား အသုံးပြုသူ အတွက် ခေါ်ဆိုမှုအဝင် လုပ်ကိုင်ပုံကို စီစဉ်ခွင့် ပြုသည်။"</string>
<string name="permlab_readNetworkUsageHistory" msgid="7862593283611493232">"ရာဇဝင်အလိုက် ကွန်ယက်သုံစွဲမှုအား ဖတ်ခြင်း"</string>
- <string name="permdesc_readNetworkUsageHistory" msgid="7689060749819126472">"appအား အထူး ကွန်ရက်များ နှင့် appများ အတွက် ကွန်ရက် အသုံးပြုမှု မှတ်တမ်းကို ဖတ်ကြားခွင့် ပြုသည်။"</string>
+ <string name="permdesc_readNetworkUsageHistory" msgid="7689060749819126472">"appအား အထူး ကွန်ရက်များ နှင့် appများ အတွက် ကွန်ရက် အသုံးပြုမှု မှတ်တမ်းကို ဖတ်ကြားခွင့် ပြုသည်။"</string>
<string name="permlab_manageNetworkPolicy" msgid="2562053592339859990">"ကွန်ယက်မူဝါဒအား စီမံခြင်း"</string>
- <string name="permdesc_manageNetworkPolicy" msgid="7537586771559370668">"appအား ကွန်ရက် မူဝါဒများကို စီမံခန့်ခွဲခွင့် နှင့် app-ဆိုင်ရာ စည်းကမ်းချက်များကို ပြဌာန်းခွင့် ပြုသည်။"</string>
+ <string name="permdesc_manageNetworkPolicy" msgid="7537586771559370668">"appအား ကွန်ရက် မူဝါဒများကို စီမံခန့်ခွဲခွင့် နှင့် app-ဆိုင်ရာ စည်းကမ်းချက်များကို ပြဌာန်းခွင့် ပြုသည်။"</string>
<string name="permlab_modifyNetworkAccounting" msgid="5088217309088729650">"ကွန်ယက်အသုံးပြုမှုစာရင်းအား မွမ်းမံခြင်း"</string>
<string name="permdesc_modifyNetworkAccounting" msgid="5443412866746198123">"အပလီကေးရှင်းအား တခြားအပလီကေးရှင်းများမှ ကွန်ရက်အသုံးပြုမှု တွက်ချက်ခြင်းအား ပြင်ဆင်ခွင့် ပြုပါ။ ပုံမှန် အပလီကေးရှင်းများအတွက် မလိုအပ်ပါ။"</string>
<string name="permlab_accessNotifications" msgid="7673416487873432268">"သတိပေးချက်များအား အသုံးပြုခွင့်"</string>
@@ -791,31 +791,31 @@
<string name="permlab_bindNotificationListenerService" msgid="7057764742211656654">"သတိပေးချက် နားထောင်ခြင်း ဆားဗစ် နှင့် ပူးပေါင်းခြင်း"</string>
<string name="permdesc_bindNotificationListenerService" msgid="985697918576902986">"ဖုန်းကိုင်ထားသူနှင့် အကြောင်းကြားချက် နားစွင့်သော ဆားဗစ်မှ ထိပ်ပိုင်းအင်တာဖေ့စ် ကို ပူးပေါင်းခွင့်ပေးခြင်း။ ပုံမှန် အပလီကေးရှင်းများမှာ မလိုအပ်ပါ"</string>
<string name="permlab_bindConditionProviderService" msgid="1180107672332704641">"အခြေအနေ စီမံပေးရေး ဝန်ဆောင်မှု တစ်ခုဆီသို့ ချိတ်တွဲခြင်း"</string>
- <string name="permdesc_bindConditionProviderService" msgid="1680513931165058425">"စွဲကိုင်ထားသူအား အခြေအနေကို စီမံပေးသူ၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_bindConditionProviderService" msgid="1680513931165058425">"စွဲကိုင်ထားသူအား အခြေအနေကို စီမံပေးသူ၏ ထိပ်သီး အဆင့် အင်တာဖေ့စ်သို့ ချိတ်တွဲခွင့်ကို ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_bindDreamService" msgid="4153646965978563462">"အိပ်မက် ဝန်ဆောင်မှုသို့ ပေါင်းစည်းမည်"</string>
<string name="permdesc_bindDreamService" msgid="7325825272223347863">"အိမ်မက်ဝန်ဆောင်မှု၏ ထိပ်တန်းအဆင့် မျက်နှာပြင်အား ကိုင်ဆောင်သူမှ ပေါင်းစည်းရန် ခွင့်ပြုမည်။ သာမန် အပလီကေးရှင်းများတွင် မလိုအပ်ပါ။"</string>
<string name="permlab_invokeCarrierSetup" msgid="3699600833975117478">"မိုဘိုင်းဆက်သွယ်ရေးဝန်ဆောင်မှုဌာန မှ ထည့်သွင်းပေးသော အခြေအနေများအား ပယ်ဖျက်ခြင်း"</string>
<string name="permdesc_invokeCarrierSetup" msgid="4159549152529111920">"ကိုင်ဆောင်သူအားမိုဘိုင်းဆက်သွယ်ရေးဝန်ဆောင်မှုဌာနမှ ထည့်သွင်းထားတဲ့ အပြင်အဆင်အား ပယ်ဖျက်ခွင့် ပေးခြင်း။ ပုံမှန် အပလီကေးရှင်းများမှာ မလိုပါ"</string>
<string name="permlab_accessNetworkConditions" msgid="8206077447838909516">"ကွန်ယက်အခြေအနေအား လေ့လာနေမှုအား နားထောင်ခွင့်"</string>
<string name="permdesc_accessNetworkConditions" msgid="6899102075825272211">"အပလီကေးရှင်းကို နက်ဝေါ့ ပေါ်က အခြေအနေကို သတိထားခွင့် ပေးခြင်း၊. ပုံမှန် အပလီကေးရှင်း များတွင် မလိုအပ်ပါ"</string>
- <string name="permlab_setInputCalibration" msgid="4902620118878467615">"change ထည့်သွင်းရေး ကိရိယာ တိုင်းထွာညှိနှိုင်းမှု ပြောင်းလဲခြင်း"</string>
- <string name="permdesc_setInputCalibration" msgid="4527511047549456929">"appအား တို့ထိရေး မျက်နှာပြင် တိုင်းထွာစံညှိမှုကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permlab_setInputCalibration" msgid="4902620118878467615">"change ထည့်သွင်းရေး ကိရိယာ တိုင်းထွာညှိနှိုင်းမှု ပြောင်းလဲခြင်း"</string>
+ <string name="permdesc_setInputCalibration" msgid="4527511047549456929">"appအား တို့ထိရေး မျက်နှာပြင် တိုင်းထွာစံညှိမှုကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_accessDrmCertificates" msgid="7436886640723203615">"DRM လက်မှတ်များကို ရယူသုံးခြင်း"</string>
- <string name="permdesc_accessDrmCertificates" msgid="8073288354426159089">"အပလီကေးရှင်း တစ်ခုအား စီမံလုပ်ကိုင်ခွင့် DRM လက်မှတ်များ သုံးခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_accessDrmCertificates" msgid="8073288354426159089">"အပလီကေးရှင်း တစ်ခုအား စီမံလုပ်ကိုင်ခွင့် DRM လက်မှတ်များ သုံးခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_handoverStatus" msgid="1159132046126626731">"အန်ဒရွိုက်၏ အလင်းတန်းထိုး လွှဲပြောင်းမှု အခြေအနေကို ရယူရန်"</string>
- <string name="permdesc_handoverStatus" msgid="4788144087245714948">"ဒီအပလီကေးရှင်းအား အန်ဒရွိုက်၏ လက်ရှိ အလင်းတန်းထိုး လွှဲပြောင်းမှု အကြောင်း အချက်အလက်ကို ရယူခွင့် ပြုသည်"</string>
+ <string name="permdesc_handoverStatus" msgid="4788144087245714948">"ဒီအပလီကေးရှင်းအား အန်ဒရွိုက်၏ လက်ရှိ အလင်းတန်းထိုး လွှဲပြောင်းမှု အကြောင်း အချက်အလက်ကို ရယူခွင့် ပြုသည်"</string>
<string name="permlab_removeDrmCertificates" msgid="7044888287209892751">"DRM လက်မှတ်များ ဖယ်ရှားရန်"</string>
- <string name="permdesc_removeDrmCertificates" msgid="7272999075113400993">"အပလီကေးရှင်းအား DRM လက်မှတ်များကို ဖယ်ရှားခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_removeDrmCertificates" msgid="7272999075113400993">"အပလီကေးရှင်းအား DRM လက်မှတ်များကို ဖယ်ရှားခွင့် ပြုသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_bindCarrierMessagingService" msgid="1490229371796969158">"စာပို့စာယူ ဆက်သွယ်ရေးဝန်ဆောင်မှုတစ်ခုအား ပူးပေါင်းခွင့်ပြုရန်"</string>
<string name="permdesc_bindCarrierMessagingService" msgid="2762882888502113944">"စာပို့စာယူဆက်သွယ်ရေးဝန်ဆောင်မှုတစ်ခု၏ ထိပ်ဆုံးရှိအင်တာဖေ့စ်ဖြင့် ပူးပေါင်းရန် ပိုင်ရှင်အားခွင့်ပြုပါ။ ပုံမှန် app များအတွက် မလိုအပ်ပါ။"</string>
<string name="policylab_limitPassword" msgid="4497420728857585791">"စကားဝှက်စည်းမျဥ်းကိုသတ်မှတ်ရန်"</string>
<string name="policydesc_limitPassword" msgid="3252114203919510394">"မျက်နှာပြင် သော့ဖွင့်ရန် လိုအပ်သော စကားလုံးအရေအတွက်နှင့် အမျိုးအစားအား ထိန်းချုပ်ရန်"</string>
- <string name="policylab_watchLogin" msgid="914130646942199503">"မော်နီတာမျက်နှာပြင်ဖွင့်ရန် ကြိုးစားခွင့်များ"</string>
- <string name="policydesc_watchLogin" product="tablet" msgid="3215729294215070072">"မျက်နှာပြင်ကို သော့ဖွင့်ရန် အတွက် စကားဝှက် မမှန်မကန် ထည့်သွင်းမှု အရေအတွက်ကို စောင့်ကြည့်လျက်၊ စကားဝှက် ရိုက်ထည့်မှု သိပ်များနေလျှင် တက်ဘလက်ကို သော့ခတ်ရန် သို့မဟုတ် တက်ဘလက် ဒေတာ အားလုံးကို ဖျက်ပစ်ရန်။"</string>
- <string name="policydesc_watchLogin" product="TV" msgid="2707817988309890256">"ဖန်မျက်နှာပြင်အား သော့ဖွင့်စဉ် လျှို့ဝှက်ကုဒ်အမှားများ ရိုက်သွင်းမှုအား စောင့်ကြည့်ရန်နှင့်၊ လျှို့ဝှက်ကုဒ်အမှားများ များစွာ ရိုက်သွင်းပါက တီဗွီအား သော့ချခြင်း သို့မဟုတ် တီဗွီ၏ အချက်အလက်များအား ဖျက်ပစ်ခြင်းများ ပြုရန်။"</string>
- <string name="policydesc_watchLogin" product="default" msgid="5712323091846761073">"မျက်နှာပြင်ကို သော့ဖွင့်ရန် အတွက် စကားဝှက် မမှန်မကန် ထည့်သွင်းမှု အရေအတွက်ကို စောင့်ကြည့်လျက်၊ စကားဝှက် ရိုက်ထည့်မှု သိပ်များနေလျှင် ဖုန်းကို သော့ခတ်ရန် သို့မဟုတ် ဖုန်း ဒေတာ အားလုံးကို ဖျက်ပစ်ရန်။"</string>
- <string name="policylab_resetPassword" msgid="2620077191242688955">"မျက်နှာပြင်ဖွင့်ရန်စကားဝှက်အား ပြောင်းခြင်း"</string>
- <string name="policydesc_resetPassword" msgid="605963962301904458">"မျက်နှာပြင်ဖွင့်ရန်စကားဝှက်အား ပြောင်းခြင်း"</string>
+ <string name="policylab_watchLogin" msgid="914130646942199503">"မော်နီတာမျက်နှာပြင်ဖွင့်ရန် ကြိုးစားခွင့်များ"</string>
+ <string name="policydesc_watchLogin" product="tablet" msgid="3215729294215070072">"မျက်နှာပြင်ကို သော့ဖွင့်ရန် အတွက် စကားဝှက် မမှန်မကန် ထည့်သွင်းမှု အရေအတွက်ကို စောင့်ကြည့်လျက်၊ စကားဝှက် ရိုက်ထည့်မှု သိပ်များနေလျှင် တက်ဘလက်ကို သော့ခတ်ရန် သို့မဟုတ် တက်ဘလက် ဒေတာ အားလုံးကို ဖျက်ပစ်ရန်။"</string>
+ <string name="policydesc_watchLogin" product="TV" msgid="2707817988309890256">"ဖန်မျက်နှာပြင်အား သော့ဖွင့်စဉ် လျှို့ဝှက်ကုဒ်အမှားများ ရိုက်သွင်းမှုအား စောင့်ကြည့်ရန်နှင့်၊ လျှို့ဝှက်ကုဒ်အမှားများ များစွာ ရိုက်သွင်းပါက တီဗွီအား သော့ချခြင်း သို့မဟုတ် တီဗွီ၏ အချက်အလက်များအား ဖျက်ပစ်ခြင်းများ ပြုရန်။"</string>
+ <string name="policydesc_watchLogin" product="default" msgid="5712323091846761073">"မျက်နှာပြင်ကို သော့ဖွင့်ရန် အတွက် စကားဝှက် မမှန်မကန် ထည့်သွင်းမှု အရေအတွက်ကို စောင့်ကြည့်လျက်၊ စကားဝှက် ရိုက်ထည့်မှု သိပ်များနေလျှင် ဖုန်းကို သော့ခတ်ရန် သို့မဟုတ် ဖုန်း ဒေတာ အားလုံးကို ဖျက်ပစ်ရန်။"</string>
+ <string name="policylab_resetPassword" msgid="2620077191242688955">"မျက်နှာပြင်ဖွင့်ရန်စကားဝှက်အား ပြောင်းခြင်း"</string>
+ <string name="policydesc_resetPassword" msgid="605963962301904458">"မျက်နှာပြင်ဖွင့်ရန်စကားဝှက်အား ပြောင်းခြင်း"</string>
<string name="policylab_forceLock" msgid="2274085384704248431">"မျက်နှာပြင်အားသော့ချရန်"</string>
<string name="policydesc_forceLock" msgid="1141797588403827138">"မည်သည့်အချိန်တွင် ဖန်သားပြင်အား မည်ကဲ့သို့နည်းဖြင် သော့ချရန် ထိန်းချုပ်ခြင်း"</string>
<string name="policylab_wipeData" msgid="3910545446758639713">"ဒေတာအားလုံးအားဖျက်ခြင်း"</string>
@@ -823,7 +823,7 @@
<string name="policydesc_wipeData" product="tv" msgid="5816221315214527028">"စက်ရုံထုတ်အခြေအနေအားပြန်လည်ရယူပါက တီဗွီရှိ အချက်အလက်များအား ကြိုတင်အသိပေးခြင်းမရှိဘဲ ဖျက်ပစ်နိုင်သည်။"</string>
<string name="policydesc_wipeData" product="default" msgid="5096895604574188391">"စက်ရုံထုတ် အခြေအနေအား ပြန်ပြောင်းခြင်းဖြင့် ဖုန်းရှိ အချက်အလက်များအား ကြိုတင်သတိပေးမှုမရှိပဲ ဖျက်စီးရန်"</string>
<string name="policylab_setGlobalProxy" msgid="2784828293747791446">"တကမာ္ဘလုံးဆိုင်ရာပရော်စီကို သတ်မှတ်ခြင်း"</string>
- <string name="policydesc_setGlobalProxy" msgid="6387497466660154931">"မူဝါဒအသုံးပြုခွင့်ရလျှင် စက်ပစ္စည်းတကမ္ဘာလုံးဆိုင်ရာပရော်စီအားသုံးရန် သတ်မှတ်ခြင်း။ ပထမဦးဆုံးသောစက်၏ထိန်းချုပ်သူသာ တကမ္ဘာလုံးဆိုင်ရာပရော်စီသာအားအကျိုးသက်ရောက်စေရန် သတ်မှတ်နိုင်သည်။"</string>
+ <string name="policydesc_setGlobalProxy" msgid="6387497466660154931">"မူဝါဒအသုံးပြုခွင့်ရလျှင် စက်ပစ္စည်းတကမ္ဘာလုံးဆိုင်ရာပရော်စီအားသုံးရန် သတ်မှတ်ခြင်း။ ပထမဦးဆုံးသောစက်၏ထိန်းချုပ်သူသာ တကမ္ဘာလုံးဆိုင်ရာပရော်စီသာအားအကျိုးသက်ရောက်စေရန် သတ်မှတ်နိုင်သည်။"</string>
<string name="policylab_expirePassword" msgid="885279151847254056">"စကားဝှက်သက်တမ်းသတ်မှတ်ရန်"</string>
<string name="policydesc_expirePassword" msgid="1729725226314691591">"ဖန်သားပြင်သော့ချခြင်း စကားဝှက် ပြင်ဆင်ခွင့် အကြိမ်ရေအား ထိန်းချုပ်ခြင်း"</string>
<string name="policylab_encryptedStorage" msgid="8901326199909132915">"သိုလှောင်လျို့ဝှက်ခြင်းသတ်မှတ်"</string>
@@ -946,21 +946,21 @@
<string name="sipAddressTypeWork" msgid="6920725730797099047">"အလုပ်အကိုင်"</string>
<string name="sipAddressTypeOther" msgid="4408436162950119849">"တခြား"</string>
<string name="quick_contacts_not_available" msgid="746098007828579688">"ဒီအဆက်အသွယ်အား ကြည့်ရှုရန် အပလီကေးရှင်း မတွေ့ပါ"</string>
- <string name="keyguard_password_enter_pin_code" msgid="3037685796058495017">"PIN ကုဒ် ရိုက်ထည့်ပါ"</string>
- <string name="keyguard_password_enter_puk_code" msgid="4800725266925845333">"PUK နှင့် PIN ကုဒ် အသစ်ကို ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_pin_code" msgid="3037685796058495017">"PIN ကုဒ် ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_puk_code" msgid="4800725266925845333">"PUK နှင့် PIN ကုဒ် အသစ်ကို ရိုက်ထည့်ပါ"</string>
<string name="keyguard_password_enter_puk_prompt" msgid="1341112146710087048">"PUK နံပါတ်"</string>
<string name="keyguard_password_enter_pin_prompt" msgid="8027680321614196258">"PIN ကုဒ် အသစ်"</string>
<string name="keyguard_password_entry_touch_hint" msgid="7858547464982981384"><font size="17">"စကားဝှက် ရိုက်ရန် ထိပါ"</font></string>
- <string name="keyguard_password_enter_password_code" msgid="1054721668279049780">"သော့ဖွင့်ရန် စကားဝှက်ကို ရိုက်ထည့်ပါ"</string>
- <string name="keyguard_password_enter_pin_password_code" msgid="6391755146112503443">"သော့ဖွင့်ရန် PIN ကို ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_password_code" msgid="1054721668279049780">"သော့ဖွင့်ရန် စကားဝှက်ကို ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_pin_password_code" msgid="6391755146112503443">"သော့ဖွင့်ရန် PIN ကို ရိုက်ထည့်ပါ"</string>
<string name="keyguard_password_wrong_pin_code" msgid="2422225591006134936">"ပင်နံပါတ်မှားနေပါသည်"</string>
- <string name="keyguard_label_text" msgid="861796461028298424">"သော့ဖွင့်ရန် Menu ထိုနောက်0ကိုနှိပ်ပါ"</string>
+ <string name="keyguard_label_text" msgid="861796461028298424">"သော့ဖွင့်ရန် Menu ထိုနောက်0ကိုနှိပ်ပါ"</string>
<string name="emergency_call_dialog_number_for_display" msgid="696192103195090970">"အရေးပေါ်နံပါတ်"</string>
<string name="lockscreen_carrier_default" msgid="8963839242565653192">"ဆားဗစ် မရှိပါ"</string>
<string name="lockscreen_screen_locked" msgid="7288443074806832904">"မျက်နှာပြင်အားသော့ချထားသည်"</string>
- <string name="lockscreen_instructions_when_pattern_enabled" msgid="46154051614126049">"ဖွင့်ရန်သို့မဟုတ်အရေးပေါ်ခေါ်ဆိုခြင်းပြုလုပ်ရန် မီနူးကိုနှိပ်ပါ"</string>
+ <string name="lockscreen_instructions_when_pattern_enabled" msgid="46154051614126049">"ဖွင့်ရန်သို့မဟုတ်အရေးပေါ်ခေါ်ဆိုခြင်းပြုလုပ်ရန် မီနူးကိုနှိပ်ပါ"</string>
<string name="lockscreen_instructions_when_pattern_disabled" msgid="686260028797158364">"မီးနူးကို နှိပ်ခြင်းဖြင့် သော့ဖွင့်ပါ"</string>
- <string name="lockscreen_pattern_instructions" msgid="7478703254964810302">"ဖွင့်ရန်ပုံစံဆွဲပါ"</string>
+ <string name="lockscreen_pattern_instructions" msgid="7478703254964810302">"ဖွင့်ရန်ပုံစံဆွဲပါ"</string>
<string name="lockscreen_emergency_call" msgid="5347633784401285225">"အရေးပေါ်ခေါ်ဆိုရန်"</string>
<string name="lockscreen_return_to_call" msgid="5244259785500040021">"ခေါ်ဆိုမှုထံပြန်သွားရန်"</string>
<string name="lockscreen_pattern_correct" msgid="9039008650362261237">"မှန်ပါသည်"</string>
@@ -971,10 +971,10 @@
<string name="lockscreen_missing_sim_message" product="tablet" msgid="151659196095791474">"တက်ပလက်ထဲတွင်း ဆင်းကဒ် မရှိပါ"</string>
<string name="lockscreen_missing_sim_message" product="tv" msgid="1943633865476989599">"တီဗွီတွင် SIM ကဒ် မရှိပါ။"</string>
<string name="lockscreen_missing_sim_message" product="default" msgid="2186920585695169078">"ဖုန်းထဲတွင် ဆင်းကဒ် မရှိပါ"</string>
- <string name="lockscreen_missing_sim_instructions" msgid="5372787138023272615">"ဆင်းမ်ကဒ် ထည့်ပါ"</string>
+ <string name="lockscreen_missing_sim_instructions" msgid="5372787138023272615">"ဆင်းမ်ကဒ် ထည့်ပါ"</string>
<string name="lockscreen_missing_sim_instructions_long" msgid="3526573099019319472">"ဆင်းမ်ကဒ် မရှိဘူး သို့မဟုတ် ဖတ်မရပါ။ ဆင်းမ်ကဒ် တစ်ခုကို ထည့်ပါ။"</string>
<string name="lockscreen_permanent_disabled_sim_message_short" msgid="5096149665138916184">"သုံးစွဲ မရတော့သော ဆင်းကဒ်"</string>
- <string name="lockscreen_permanent_disabled_sim_instructions" msgid="910904643433151371">"သင့် ဆင်းမ်ကဒ်ကို ထာဝရ ပိတ်လိုက်ပါပြီ။\n နောက် ဆင်းမ်ကဒ် တစ်ခု အတွက် သင်၏ ကြိုးမဲ့ ဝန်ဆောင်မှု စီမံပေးသူကို ဆက်သွယ်ပါ"</string>
+ <string name="lockscreen_permanent_disabled_sim_instructions" msgid="910904643433151371">"သင့် ဆင်းမ်ကဒ်ကို ထာဝရ ပိတ်လိုက်ပါပြီ။\n နောက် ဆင်းမ်ကဒ် တစ်ခု အတွက် သင်၏ ကြိုးမဲ့ ဝန်ဆောင်မှု စီမံပေးသူကို ဆက်သွယ်ပါ"</string>
<string name="lockscreen_transport_prev_description" msgid="6300840251218161534">"ယခင် တစ်ပုဒ်"</string>
<string name="lockscreen_transport_next_description" msgid="573285210424377338">"နောက် တစ်ပုဒ်"</string>
<string name="lockscreen_transport_pause_description" msgid="3980308465056173363">"ခဏရပ်ရန်"</string>
@@ -985,24 +985,24 @@
<string name="emergency_calls_only" msgid="6733978304386365407">"အရေးပေါ်ခေါ်ဆိုမှုသာ"</string>
<string name="lockscreen_network_locked_message" msgid="143389224986028501">"ကွန်ရက် သော့ကျနေခြင်း"</string>
<string name="lockscreen_sim_puk_locked_message" msgid="7441797339976230">"ဆင်းမ်ကဒ် ရဲ့ ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် သော့ကျနေပါသည်"</string>
- <string name="lockscreen_sim_puk_locked_instructions" msgid="8127916255245181063">"သုံးစွဲသူ လမ်းညွှန်ကို ကြည့်ပါ သို့မဟုတ် ဖောက်သည်များ စောင့်ရှောက်ရေး ဌာနကို ဆက်သွယ်ပါ။"</string>
+ <string name="lockscreen_sim_puk_locked_instructions" msgid="8127916255245181063">"သုံးစွဲသူ လမ်းညွှန်ကို ကြည့်ပါ သို့မဟုတ် ဖောက်သည်များ စောင့်ရှောက်ရေး ဌာနကို ဆက်သွယ်ပါ။"</string>
<string name="lockscreen_sim_locked_message" msgid="8066660129206001039">"ဆင်းမ်ကဒ် သော့ကျနေပါသည်"</string>
<string name="lockscreen_sim_unlock_progress_dialog_message" msgid="595323214052881264">"ဆင်းမ်ကဒ် ကို သော့ဖွင့်နေပါသည်"</string>
- <string name="lockscreen_too_many_failed_attempts_dialog_message" msgid="6481623830344107222">"သင်သည် သော့ဖွင့် ပုံစံကို<xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ \n\nထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g>စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
- <string name="lockscreen_too_many_failed_password_attempts_dialog_message" msgid="2725973286239344555">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
- <string name="lockscreen_too_many_failed_pin_attempts_dialog_message" msgid="6216672706545696955">"သင်သည် သင်၏ PIN <xliff:g id="NUMBER_0">%d</xliff:g>ကို ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
- <string name="lockscreen_failed_attempts_almost_glogin" product="tablet" msgid="9191611984625460820">"သင်သည် သော့ဖွင့် ပုံစံကို<xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> မအောင်မြင်သည့် ကြိုးပမ်းမှု နောက်မှာ၊ သင်၏ တက်ဘလက်ကို Google လက်မှတ်ထိုး ဝင်မှုဖြင့် ဖွင့်ရန် တောင်းဆိုခံရမည်။ \n\n ထပ်ပြီး <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
- <string name="lockscreen_failed_attempts_almost_glogin" product="tv" msgid="5316664559603394684">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် Google လက်မှတ်ထိုးဝင်ရောက်သည့် အချက်အလက်ကို သုံးလျက် တီဗွီအား သော့ဖွင့်ရမည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ထပ်မံကြိုးစားပါ။"</string>
- <string name="lockscreen_failed_attempts_almost_glogin" product="default" msgid="2590227559763762751">"သင်သည် သော့ဖွင့် ပုံစံကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> မအောင်မြင်သည့် ကြိုးပမ်းမှု နောက်မှာ၊ သင်၏ ဖုန်းကို Google လက်မှတ်ထိုး ဝင်မှုဖြင့် ဖွင့်ရန် တောင်းဆိုခံရမည်။ \n\n ထပ်ပြီး <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
- <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="6128106399745755604">"သင့်Tabletအား မှားယွင်းစွာ <xliff:g id="NUMBER_0">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားနေပါသည်။ နောက်ထပ်<xliff:g id="NUMBER_1">%d</xliff:g>ကြိမ်မအောင်မြင်ပါက မူလစက်ရုံ အနေအထားသို့ပြန်လည်ရောက်ရှိကာ အသုံးပြုသူ၏ဒေတာအားလုံးဆုံးရှုံးပါမည်။"</string>
- <string name="lockscreen_failed_attempts_almost_at_wipe" product="tv" msgid="950408382418270260">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။<xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်ပြီး အသုံးပြုသူ၏ အချက်အလက်များ ပျောက်သွားမည်ဖြစ်၏။"</string>
- <string name="lockscreen_failed_attempts_almost_at_wipe" product="default" msgid="8603565142156826565">"သင့်ဖုန်းအား မှားယွင်းစွာ <xliff:g id="NUMBER_0">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားနေပါသည်။ နောက်ထပ်<xliff:g id="NUMBER_1">%d</xliff:g>ကြိမ်မအောင်မြင်ပါက မူလစက်ရုံ အနေအထားသို့ပြန်လည်ရောက်ရှိကာ အသုံးပြုသူ၏ဒေတာအားလုံးဆုံးရှုံးပါမည်။"</string>
- <string name="lockscreen_failed_attempts_now_wiping" product="tablet" msgid="280873516493934365">"သင့်Tabletအား မှားယွင်းစွာ <xliff:g id="NUMBER">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားခဲ့ပါသည်။ယခုဖုန်းကိုမူလစက်ရုံအနေအထားသို့ပြန်လည်ရောက်ရှိပါမည်။"</string>
- <string name="lockscreen_failed_attempts_now_wiping" product="tv" msgid="3195755534096192191">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်၏။"</string>
- <string name="lockscreen_failed_attempts_now_wiping" product="default" msgid="3025504721764922246">"သင့်ဖုန်းအား မှားယွင်းစွာ <xliff:g id="NUMBER">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားခဲ့ပါသည်။ ယခုဖုန်းကို မူလစက်ရုံအနေအထားသို့ပြန်လည်ရောက်ရှိပါမည်။"</string>
- <string name="lockscreen_too_many_failed_attempts_countdown" msgid="6251480343394389665">"<xliff:g id="NUMBER">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်ကြိုးစားပါ"</string>
+ <string name="lockscreen_too_many_failed_attempts_dialog_message" msgid="6481623830344107222">"သင်သည် သော့ဖွင့် ပုံစံကို<xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ \n\nထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g>စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
+ <string name="lockscreen_too_many_failed_password_attempts_dialog_message" msgid="2725973286239344555">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
+ <string name="lockscreen_too_many_failed_pin_attempts_dialog_message" msgid="6216672706545696955">"သင်သည် သင်၏ PIN <xliff:g id="NUMBER_0">%d</xliff:g>ကို ကြိမ် မမှန်မကန် ရိုက်ခဲ့ပြီ။ \n\n ထပ်ပြီးတော့ <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ စမ်းကြည့်ပါ။"</string>
+ <string name="lockscreen_failed_attempts_almost_glogin" product="tablet" msgid="9191611984625460820">"သင်သည် သော့ဖွင့် ပုံစံကို<xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> မအောင်မြင်သည့် ကြိုးပမ်းမှု နောက်မှာ၊ သင်၏ တက်ဘလက်ကို Google လက်မှတ်ထိုး ဝင်မှုဖြင့် ဖွင့်ရန် တောင်းဆိုခံရမည်။ \n\n ထပ်ပြီး <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
+ <string name="lockscreen_failed_attempts_almost_glogin" product="tv" msgid="5316664559603394684">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် Google လက်မှတ်ထိုးဝင်ရောက်သည့် အချက်အလက်ကို သုံးလျက် တီဗွီအား သော့ဖွင့်ရမည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ထပ်မံကြိုးစားပါ။"</string>
+ <string name="lockscreen_failed_attempts_almost_glogin" product="default" msgid="2590227559763762751">"သင်သည် သော့ဖွင့် ပုံစံကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မမှန်မကန် ရေးဆွဲခဲ့သည်။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> မအောင်မြင်သည့် ကြိုးပမ်းမှု နောက်မှာ၊ သင်၏ ဖုန်းကို Google လက်မှတ်ထိုး ဝင်မှုဖြင့် ဖွင့်ရန် တောင်းဆိုခံရမည်။ \n\n ထပ်ပြီး <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့် အကြာမှာ စမ်းကြည့်ပါ။"</string>
+ <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="6128106399745755604">"သင့်Tabletအား မှားယွင်းစွာ <xliff:g id="NUMBER_0">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားနေပါသည်။ နောက်ထပ်<xliff:g id="NUMBER_1">%d</xliff:g>ကြိမ်မအောင်မြင်ပါက မူလစက်ရုံ အနေအထားသို့ပြန်လည်ရောက်ရှိကာ အသုံးပြုသူ၏ဒေတာအားလုံးဆုံးရှုံးပါမည်။"</string>
+ <string name="lockscreen_failed_attempts_almost_at_wipe" product="tv" msgid="950408382418270260">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။<xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်ပြီး အသုံးပြုသူ၏ အချက်အလက်များ ပျောက်သွားမည်ဖြစ်၏။"</string>
+ <string name="lockscreen_failed_attempts_almost_at_wipe" product="default" msgid="8603565142156826565">"သင့်ဖုန်းအား မှားယွင်းစွာ <xliff:g id="NUMBER_0">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားနေပါသည်။ နောက်ထပ်<xliff:g id="NUMBER_1">%d</xliff:g>ကြိမ်မအောင်မြင်ပါက မူလစက်ရုံ အနေအထားသို့ပြန်လည်ရောက်ရှိကာ အသုံးပြုသူ၏ဒေတာအားလုံးဆုံးရှုံးပါမည်။"</string>
+ <string name="lockscreen_failed_attempts_now_wiping" product="tablet" msgid="280873516493934365">"သင့်Tabletအား မှားယွင်းစွာ <xliff:g id="NUMBER">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားခဲ့ပါသည်။ယခုဖုန်းကိုမူလစက်ရုံအနေအထားသို့ပြန်လည်ရောက်ရှိပါမည်။"</string>
+ <string name="lockscreen_failed_attempts_now_wiping" product="tv" msgid="3195755534096192191">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်၏။"</string>
+ <string name="lockscreen_failed_attempts_now_wiping" product="default" msgid="3025504721764922246">"သင့်ဖုန်းအား မှားယွင်းစွာ <xliff:g id="NUMBER">%d</xliff:g>ကြိမ်ဖွင့်ရန် ကြိုးစားခဲ့ပါသည်။ ယခုဖုန်းကို မူလစက်ရုံအနေအထားသို့ပြန်လည်ရောက်ရှိပါမည်။"</string>
+ <string name="lockscreen_too_many_failed_attempts_countdown" msgid="6251480343394389665">"<xliff:g id="NUMBER">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်ကြိုးစားပါ"</string>
<string name="lockscreen_forgot_pattern_button_text" msgid="2626999449610695930">"ပုံစံအားမေ့နေပါသလား"</string>
- <string name="lockscreen_glogin_forgot_pattern" msgid="2588521501166032747">"အကောင့်ဖွင့်ရန်"</string>
+ <string name="lockscreen_glogin_forgot_pattern" msgid="2588521501166032747">"အကောင့်ဖွင့်ရန်"</string>
<string name="lockscreen_glogin_too_many_attempts" msgid="2751368605287288808">"အကြိမ်ရေ များစွာ ပုံဆွဲသော့ဖွင့်ရန် ကြိုးစားခြင်း"</string>
<string name="lockscreen_glogin_instructions" msgid="3931816256100707784">"သော့ဖွင့်ရန် ဂူဂဲလ် အကောင့်ဖြင့် ဝင်ပါ"</string>
<string name="lockscreen_glogin_username_hint" msgid="8846881424106484447">"သုံးစွဲသူ အမှတ် (အီးမေးလ်)"</string>
@@ -1012,7 +1012,7 @@
<string name="lockscreen_glogin_account_recovery_hint" msgid="1696924763690379073">"သုံးစွဲသူ အမည် သို့ စကားဝှင်ကို မေ့နေပါသလား။ \n"<b>"google.com/accounts/recovery"</b>" ကို သွားရောက်ပါ။"</string>
<string name="lockscreen_glogin_checking_password" msgid="7114627351286933867">"စစ်ဆေးနေပါသည်…"</string>
<string name="lockscreen_unlock_label" msgid="737440483220667054">"ဆင်းမ်ကဒ် ဖွင့်ပါ"</string>
- <string name="lockscreen_sound_on_label" msgid="9068877576513425970">"အသံဖွင့်ထားသည်"</string>
+ <string name="lockscreen_sound_on_label" msgid="9068877576513425970">"အသံဖွင့်ထားသည်"</string>
<string name="lockscreen_sound_off_label" msgid="996822825154319026">"အသံပိတ်ထားသည်"</string>
<string name="lockscreen_access_pattern_start" msgid="3941045502933142847">"ပုံစံစတင်ခြင်း"</string>
<string name="lockscreen_access_pattern_cleared" msgid="5583479721001639579">"ပုံစံရှင်းလင်းခြင်း"</string>
@@ -1049,9 +1049,9 @@
<string name="hour_ampm" msgid="4584338083529355982">"<xliff:g id="HOUR">%-l</xliff:g><xliff:g id="AMPM">%P</xliff:g>"</string>
<string name="hour_cap_ampm" msgid="2083465992940444366">"<xliff:g id="HOUR">%-l</xliff:g><xliff:g id="AMPM">%p</xliff:g>"</string>
<string name="factorytest_failed" msgid="5410270329114212041">"စက်ရုံစမ်းသပ်ခြင်းမအောင်မြင်ပါ"</string>
- <string name="factorytest_not_system" msgid="4435201656767276723">"စက်ရုံစမ်းသပ်မှုမှာ စနစ်/အပ်ပလီကေးရှင်း ထည့်သွင်းထားသောpackageများကိုသာ ပံ့ပိုးမှုပေးသည်။."</string>
- <string name="factorytest_no_action" msgid="872991874799998561">"စက်ရုံစမ်းသပ်မှုအားလုပ်ဆောင်ရန် မည်သည့်packageမှ မတွေ့ပါ။"</string>
- <string name="factorytest_reboot" msgid="6320168203050791643">"လုပ်ငန်းစနစ်ထည့်သွင်းပြီး ပြန်လည်စတင်ရန်"</string>
+ <string name="factorytest_not_system" msgid="4435201656767276723">"စက်ရုံစမ်းသပ်မှုမှာ စနစ်/အပ်ပလီကေးရှင်း ထည့်သွင်းထားသောpackageများကိုသာ ပံ့ပိုးမှုပေးသည်။."</string>
+ <string name="factorytest_no_action" msgid="872991874799998561">"စက်ရုံစမ်းသပ်မှုအားလုပ်ဆောင်ရန် မည်သည့်packageမှ မတွေ့ပါ။"</string>
+ <string name="factorytest_reboot" msgid="6320168203050791643">"လုပ်ငန်းစနစ်ထည့်သွင်းပြီး ပြန်လည်စတင်ရန်"</string>
<string name="js_dialog_title" msgid="1987483977834603872">"ဒီ \"<xliff:g id="TITLE">%s</xliff:g>\" က စာမျက်နှာက ပြောဆိုတာက:"</string>
<string name="js_dialog_title_default" msgid="6961903213729667573">"JavaScript"</string>
<string name="js_dialog_before_unload_title" msgid="2619376555525116593">"သေချာကြောင်း လုပ်ပါ"</string>
@@ -1082,24 +1082,24 @@
<string name="permdesc_readHistoryBookmarks" msgid="8462378226600439658">"အပလီကေးရှင်းအား ဘရောင်ဇာမှ ယခင် သွားရောက်ထားသော URLများ၊ နေရာ အမှတ်အသားများအား ကြည့်ရှုခွင့်ပြုပါ။ မှတ်ချက်။ ဒီခွင့်ပြုချက်ကို တတိယပါတီ ဘရောင်ဇာများ နှင့် တခြား အပလီကေးရှင်းများမှ လုပ်ဆောင်မည် မဟုတ်ပါ။"</string>
<string name="permlab_writeHistoryBookmarks" msgid="3714785165273314490">"သင့်ရဲ့ ဝဘ် အမှတ်နေရာများနှင့် သွားလာသော မှတ်တမ်း ရေးခြင်း"</string>
<string name="permdesc_writeHistoryBookmarks" product="tablet" msgid="6825527469145760922">"အပလီကေးရှင်းအား ဘရောင်ဇာမှ မှတ်တမ်း သို့ မှတ်သားမှု အမှတ်များအား ပြင်ဆင်ခွင့် ပေးခြင်း။ အပလီကေးရှင်းမှ ဘရောင်ဇာ မှတ်တမ်းများကို ဖျက်ပစ်ခွင့် သို့ ပြင်ဆင်ခွင့် ရှိပါမည်။ မှတ်ချက်။ ဤခွင့်ပြုချက်ကို တတိယပါတီ ဘရောင်ဇာများ၊ တခြား အပလီကေးရှင်းများမှ သုံးမည် မဟုတ်ပါ။"</string>
- <string name="permdesc_writeHistoryBookmarks" product="tv" msgid="7007393823197766548">"ဘရောင်ဇာ၏မှတ်တမ်း သို့မဟုတ် တီဗွီတွင်သိမ်းထားသည့် မှတ်သားချက်များအား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။ ဤသို့ပြုခြင်းသည် ဘရောင်ဇာ၏ အချက်အလက်များအား ဖျက်ပစ်ရန် သို့မဟုတ် ပြင်ဆင်ရန် app အား ခွင့်ပြုထားခြင်းဖြစ်၏။ မှတ်ချက်၊ ဤသို့ခွင့်ပြုခြင်းသည် ပြင်ပဘရောင်ဇာများ သို့မဟုတ် ဝဘ်အား ကြည့်ရှုနိုင်သည့် တစ်ခြားသော အပလီကေးရှင်းများအား သက်ရောက်မှုရှိမည် မဟုတ်ပါ။"</string>
+ <string name="permdesc_writeHistoryBookmarks" product="tv" msgid="7007393823197766548">"ဘရောင်ဇာ၏မှတ်တမ်း သို့မဟုတ် တီဗွီတွင်သိမ်းထားသည့် မှတ်သားချက်များအား ပြင်ဆင်ရန် app အား ခွင့်ပြုပါ။ ဤသို့ပြုခြင်းသည် ဘရောင်ဇာ၏ အချက်အလက်များအား ဖျက်ပစ်ရန် သို့မဟုတ် ပြင်ဆင်ရန် app အား ခွင့်ပြုထားခြင်းဖြစ်၏။ မှတ်ချက်၊ ဤသို့ခွင့်ပြုခြင်းသည် ပြင်ပဘရောင်ဇာများ သို့မဟုတ် ဝဘ်အား ကြည့်ရှုနိုင်သည့် တစ်ခြားသော အပလီကေးရှင်းများအား သက်ရောက်မှုရှိမည် မဟုတ်ပါ။"</string>
<string name="permdesc_writeHistoryBookmarks" product="default" msgid="8497389531014185509">"အပလီကေးရှင်းအား ဘရောင်ဇာမှ မှတ်တမ်း သို့ မှတ်သားမှု အမှတ်များအား ပြင်ဆင်ခွင့် ပေးခြင်း။ အပလီကေးရှင်းမှ ဘရောင်ဇာ မှတ်တမ်းများကို ဖျက်ပစ်ခွင့် သို့ ပြင်ဆင်ခွင့် ရှိပါမည်။ မှတ်ချက်။ ဒီခွင့်ပြုချက်ကို တတိယပါတီ ဘရောင်ဇာများ၊ တခြား အပလီကေးရှင်းများမှ သုံးမည် မဟုတ်ပါ။"</string>
<string name="permlab_setAlarm" msgid="1379294556362091814">"နှိုးစက်သတ်မှတ်ရန်"</string>
- <string name="permdesc_setAlarm" msgid="316392039157473848">"appအား တပ်ဆင်ထားသည့် နှိုးစက်နာရီ app ထဲတွင် နှိုးစက်ကို သတ်မှတ်ခွင့် ပြုသည်။ အချို့ နှိုးစက် appများက ထိုအင်္ဂါရပ်ကို ပြီးမြောက်အောင် မလုပ်နိုင်ကြပါ။"</string>
+ <string name="permdesc_setAlarm" msgid="316392039157473848">"appအား တပ်ဆင်ထားသည့် နှိုးစက်နာရီ app ထဲတွင် နှိုးစက်ကို သတ်မှတ်ခွင့် ပြုသည်။ အချို့ နှိုးစက် appများက ထိုအင်္ဂါရပ်ကို ပြီးမြောက်အောင် မလုပ်နိုင်ကြပါ။"</string>
<string name="permlab_writeVoicemail" msgid="7309899891683938100">"အသံမေးလ်ကို ရေးရန်"</string>
- <string name="permdesc_writeVoicemail" msgid="6592572839715924830">"appအား သင်၏ အသံမေးလ် ဝင်စာများကို မွမ်းမံခွင့် နှင့် ဖယ်ရှားခွင့် ပြုသည်။"</string>
- <string name="permlab_addVoicemail" msgid="5525660026090959044">"အသံစာပို့စနစ်အားထည့်ရန်"</string>
- <string name="permdesc_addVoicemail" msgid="6604508651428252437">"appအား သင့် အသံမေးလ် ဝင်စာသို့ စာများကို ထည့်ခွင့် ပြုသည်။"</string>
+ <string name="permdesc_writeVoicemail" msgid="6592572839715924830">"appအား သင်၏ အသံမေးလ် ဝင်စာများကို မွမ်းမံခွင့် နှင့် ဖယ်ရှားခွင့် ပြုသည်။"</string>
+ <string name="permlab_addVoicemail" msgid="5525660026090959044">"အသံစာပို့စနစ်အားထည့်ရန်"</string>
+ <string name="permdesc_addVoicemail" msgid="6604508651428252437">"appအား သင့် အသံမေးလ် ဝင်စာသို့ စာများကို ထည့်ခွင့် ပြုသည်။"</string>
<string name="permlab_readVoicemail" msgid="8415201752589140137">"အသံမေးလ်ကို ဖတ်ရန်"</string>
- <string name="permdesc_readVoicemail" msgid="8926534735321616550">"appအား သင်၏ အသံမေးလ်များကို ဖတ်ခွင့် ပြုရန်"</string>
- <string name="permlab_writeGeolocationPermissions" msgid="5962224158955273932">"ဘရောင်ဇာ ဘူမိဇုန်သတ်မှတ်မှု ခွင့်ပြုချက်များကို မွမ်းမံခြင်း"</string>
- <string name="permdesc_writeGeolocationPermissions" msgid="1083743234522638747">"appအား ဘရောင်ဇာ၏ ဘူမိဇုန်သတ်မှတ်ရေး ခွင့်ပြုချက်များကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးချပြီး လိုရာ ဝက်ဘ်ဆိုက်များသို့ တည်နေရာ အချက်အလက် ပို့မှုကို လုပ်နိုင်သည်။"</string>
+ <string name="permdesc_readVoicemail" msgid="8926534735321616550">"appအား သင်၏ အသံမေးလ်များကို ဖတ်ခွင့် ပြုရန်"</string>
+ <string name="permlab_writeGeolocationPermissions" msgid="5962224158955273932">"ဘရောင်ဇာ ဘူမိဇုန်သတ်မှတ်မှု ခွင့်ပြုချက်များကို မွမ်းမံခြင်း"</string>
+ <string name="permdesc_writeGeolocationPermissions" msgid="1083743234522638747">"appအား ဘရောင်ဇာ၏ ဘူမိဇုန်သတ်မှတ်ရေး ခွင့်ပြုချက်များကို မွမ်းမံခွင့် ပြုသည်။ ကြံဖန် appများက ၎င်းကို အသုံးချပြီး လိုရာ ဝက်ဘ်ဆိုက်များသို့ တည်နေရာ အချက်အလက် ပို့မှုကို လုပ်နိုင်သည်။"</string>
<string name="permlab_packageVerificationAgent" msgid="5568139100645829117">"packages များကိုအတည်ပြုစိစစ်ခြင်း"</string>
- <string name="permdesc_packageVerificationAgent" msgid="8437590190990843381">"appအား အထုပ် တစ်ခု၏ မတည်ငြိမ်မှုကို စိစစ်ခွင့် ပြုသည်။"</string>
- <string name="permlab_bindPackageVerifier" msgid="4187786793360326654">"package အတည်ပြုခြင်းနှင့် ပူးပေါင်းရန်"</string>
- <string name="permdesc_bindPackageVerifier" msgid="3180741773233862126">"စွဲကိုင်ထားသူအား အထုပ်များအား စိစစ်ရေး တောင်းဆိုချက်များကို ပြုလုပ်ခွင့် ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_packageVerificationAgent" msgid="8437590190990843381">"appအား အထုပ် တစ်ခု၏ မတည်ငြိမ်မှုကို စိစစ်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_bindPackageVerifier" msgid="4187786793360326654">"package အတည်ပြုခြင်းနှင့် ပူးပေါင်းရန်"</string>
+ <string name="permdesc_bindPackageVerifier" msgid="3180741773233862126">"စွဲကိုင်ထားသူအား အထုပ်များအား စိစစ်ရေး တောင်းဆိုချက်များကို ပြုလုပ်ခွင့် ပေးသည်။ သာမန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_serialPort" msgid="546083327654631076">"အစဥ်လိုက်ပို့များကို ဝင်ရောက်ချိတ်ဆက်ခြင်း"</string>
- <string name="permdesc_serialPort" msgid="2991639985224598193">"SerialManager APIအားအသုံးပြုကာ ကိုင်ဆောင်သူကို စီရီယာပို့မျာကို ဝင်ရောက်အသုံးပြုခြင်းအား ခွင့်ပြုသည်။"</string>
+ <string name="permdesc_serialPort" msgid="2991639985224598193">"SerialManager APIအားအသုံးပြုကာ ကိုင်ဆောင်သူကို စီရီယာပို့မျာကို ဝင်ရောက်အသုံးပြုခြင်းအား ခွင့်ပြုသည်။"</string>
<string name="permlab_accessContentProvidersExternally" msgid="5077774297943409285">"အချက်အလက်များ ပံ့ပိုသူများအား အပြင်ဖက်မှ ရယူခြင်း"</string>
<string name="permdesc_accessContentProvidersExternally" msgid="4544346486697853685">"ကိုင်ဆောင်ထားသူကို အချက်အလက်ပံ့ပိုးမှုများကို ကွန်ဆိုးလ်မှ ရယူခွင့် ပြုပါ။ ပုံမှန်အပလီကေးရှင်းအတွက် မလိုအပ်ပါ။"</string>
<string name="permlab_updateLock" msgid="3527558366616680889">"စက်အလိုအလျောက်အဆင်မြှင့်ခြင်း အားမပေးရန်"</string>
@@ -1107,8 +1107,8 @@
<string name="save_password_message" msgid="767344687139195790">"ဤလျှို့ဝှက်စကားဝှက်အား ဘရောင်ဇာကိုမှတ်ခိုင်းမည်လား"</string>
<string name="save_password_notnow" msgid="6389675316706699758">"ယခုမဟုတ်ပါ"</string>
<string name="save_password_remember" msgid="6491879678996749466">"မှတ်ထားရန်"</string>
- <string name="save_password_never" msgid="8274330296785855105">"မည်သည့်အခါမှ"</string>
- <string name="open_permission_deny" msgid="7374036708316629800">"သင့်ဆီမှာ ဒီစာမျက်နှာကို ဖွင့်ရန် ခွင့်ပြုချက် မရှိပါ။"</string>
+ <string name="save_password_never" msgid="8274330296785855105">"မည်သည့်အခါမှ"</string>
+ <string name="open_permission_deny" msgid="7374036708316629800">"သင့်ဆီမှာ ဒီစာမျက်နှာကို ဖွင့်ရန် ခွင့်ပြုချက် မရှိပါ။"</string>
<string name="text_copied" msgid="4985729524670131385">"clipboardထံ စာသားအားကူးယူမည်"</string>
<string name="more_item_label" msgid="4650918923083320495">"နောက်ထပ်"</string>
<string name="prepend_shortcut_label" msgid="2572214461676015642">"Menu+"</string>
@@ -1128,8 +1128,8 @@
<string name="oneMonthDurationPast" msgid="7396384508953779925">"လွန်ခဲ့သော၁လက"</string>
<string name="beforeOneMonthDurationPast" msgid="909134546836499826">"လွန်ခဲ့သော၁လမတိုင်မီက"</string>
<plurals name="num_seconds_ago">
- <item quantity="one" msgid="4869870056547896011">"လွန်ခဲ့သော ၁စက္ကန့်က"</item>
- <item quantity="other" msgid="3903706804349556379">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်က"</item>
+ <item quantity="one" msgid="4869870056547896011">"လွန်ခဲ့သော ၁စက္ကန့်က"</item>
+ <item quantity="other" msgid="3903706804349556379">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်က"</item>
</plurals>
<plurals name="num_minutes_ago">
<item quantity="one" msgid="3306787433088810191">"လွန်ခဲ့သော ၁မိနစ်က"</item>
@@ -1149,8 +1149,8 @@
<item quantity="other" msgid="2479586466153314633">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> ရက်တွင်"</item>
</plurals>
<plurals name="in_num_seconds">
- <item quantity="one" msgid="2729745560954905102">"နောက် ၁စက္ကန့်တွင်"</item>
- <item quantity="other" msgid="1241926116443974687">"နောက် <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်တွင်"</item>
+ <item quantity="one" msgid="2729745560954905102">"နောက် ၁စက္ကန့်တွင်"</item>
+ <item quantity="other" msgid="1241926116443974687">"နောက် <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်တွင်"</item>
</plurals>
<plurals name="in_num_minutes">
<item quantity="one" msgid="8793095251325200395">"နောက်၁မီနစ်တွင်"</item>
@@ -1165,8 +1165,8 @@
<item quantity="other" msgid="5109449375100953247">"နောက် <xliff:g id="COUNT">%d</xliff:g> ရက်တွင်"</item>
</plurals>
<plurals name="abbrev_num_seconds_ago">
- <item quantity="one" msgid="1849036840200069118">"လွန်ခဲ့သော ၁စက္ကန့်က"</item>
- <item quantity="other" msgid="3699169366650930415">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်က"</item>
+ <item quantity="one" msgid="1849036840200069118">"လွန်ခဲ့သော ၁စက္ကန့်က"</item>
+ <item quantity="other" msgid="3699169366650930415">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်က"</item>
</plurals>
<plurals name="abbrev_num_minutes_ago">
<item quantity="one" msgid="6361490147113871545">"လွန်ခဲ့သော ၁မိနစ်က"</item>
@@ -1181,8 +1181,8 @@
<item quantity="other" msgid="3453342639616481191">"လွန်ခဲ့သော <xliff:g id="COUNT">%d</xliff:g> ရက်တွင်"</item>
</plurals>
<plurals name="abbrev_in_num_seconds">
- <item quantity="one" msgid="5842225370795066299">"နောက် ၁စက္ကန့်တွင်"</item>
- <item quantity="other" msgid="5495880108825805108">"နောက် <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်တွင်"</item>
+ <item quantity="one" msgid="5842225370795066299">"နောက် ၁စက္ကန့်တွင်"</item>
+ <item quantity="other" msgid="5495880108825805108">"နောက် <xliff:g id="COUNT">%d</xliff:g> စက္ကန့်တွင်"</item>
</plurals>
<plurals name="abbrev_in_num_minutes">
<item quantity="one" msgid="562786149928284878">"နောက်၁မိနစ်တွင်"</item>
@@ -1205,8 +1205,8 @@
<string name="hours" msgid="894424005266852993">"နာရီများ"</string>
<string name="minute" msgid="9148878657703769868">"မိနစ်"</string>
<string name="minutes" msgid="5646001005827034509">"မိနစ်"</string>
- <string name="second" msgid="3184235808021478">"စက္ကန့်"</string>
- <string name="seconds" msgid="3161515347216589235">"စက္ကန့်"</string>
+ <string name="second" msgid="3184235808021478">"စက္ကန့်"</string>
+ <string name="seconds" msgid="3161515347216589235">"စက္ကန့်"</string>
<string name="week" msgid="5617961537173061583">"အပတ်"</string>
<string name="weeks" msgid="6509623834583944518">"အပတ်"</string>
<string name="year" msgid="4001118221013892076">"နှစ်"</string>
@@ -1224,12 +1224,12 @@
<item quantity="other" msgid="3863962854246773930">"<xliff:g id="COUNT">%d</xliff:g> နာရီ"</item>
</plurals>
<string name="VideoView_error_title" msgid="3534509135438353077">"ဗီဒီယို ပြဿနာ"</string>
- <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ဒီဗိဒီယိုမှာ ဒီကိရိယာ ပေါ်မှာ ဖွင့်ကြည့်၍ မရနိုင်ပါ။"</string>
+ <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ဒီဗိဒီယိုမှာ ဒီကိရိယာ ပေါ်မှာ ဖွင့်ကြည့်၍ မရနိုင်ပါ။"</string>
<string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ဒီဗီဒီယိုကို ပြသလို့ မရပါ"</string>
<string name="VideoView_error_button" msgid="2822238215100679592">"ကောင်းပြီ"</string>
<string name="relative_time" msgid="1818557177829411417">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
- <string name="noon" msgid="7245353528818587908">"မွန်းတည့်"</string>
- <string name="Noon" msgid="3342127745230013127">"မွန်းတည့်"</string>
+ <string name="noon" msgid="7245353528818587908">"မွန်းတည့်"</string>
+ <string name="Noon" msgid="3342127745230013127">"မွန်းတည့်"</string>
<string name="midnight" msgid="7166259508850457595">"ညသန်းခေါင်"</string>
<string name="Midnight" msgid="5630806906897892201">"ညသန်းခေါင်"</string>
<string name="elapsed_time_short_format_mm_ss" msgid="4431555943828711473">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -1245,11 +1245,11 @@
<string name="textSelectionCABTitle" msgid="5236850394370820357">"စာတိုရွေးချယ်မှု"</string>
<string name="addToDictionary" msgid="4352161534510057874">"အဘိဓာန်ထဲ ထည့်ပါ"</string>
<string name="deleteText" msgid="6979668428458199034">"ဖျက်ပစ်ရန်"</string>
- <string name="inputMethod" msgid="1653630062304567879">"ထည့်သွင်းရန်နည်းလမ်း"</string>
+ <string name="inputMethod" msgid="1653630062304567879">"ထည့်သွင်းရန်နည်းလမ်း"</string>
<string name="editTextMenuTitle" msgid="4909135564941815494">"စာတို လုပ်ဆောင်ချက်"</string>
<string name="low_internal_storage_view_title" msgid="5576272496365684834">"သိမ်းဆည်သော နေရာ နည်းနေပါသည်"</string>
<string name="low_internal_storage_view_text" msgid="6640505817617414371">"တချို့ စနစ်လုပ်ငန်းများ အလုပ် မလုပ်ခြင်း ဖြစ်နိုင်ပါသည်"</string>
- <string name="low_internal_storage_view_text_no_boot" msgid="6935190099204693424">"စနစ်အတွက် သိုလှောင်ခန်း မလုံလောက်ပါ။ သင့်ဆီမှာ နေရာလွတ် ၂၅၀ MB ရှိတာ စစ်ကြည့်ပြီး စတင်ပါ။"</string>
+ <string name="low_internal_storage_view_text_no_boot" msgid="6935190099204693424">"စနစ်အတွက် သိုလှောင်ခန်း မလုံလောက်ပါ။ သင့်ဆီမှာ နေရာလွတ် ၂၅၀ MB ရှိတာ စစ်ကြည့်ပြီး စတင်ပါ။"</string>
<string name="app_running_notification_title" msgid="8718335121060787914">"<xliff:g id="APP_NAME">%1$s</xliff:g> က အလုပ်လုပ်နေသည်။"</string>
<string name="app_running_notification_text" msgid="4653586947747330058">"အချက်အလက်များ ပိုသိရန် သို့မဟုတ် အပလီကေးရှင်းကို ရပ်ရန် တို့ထိလိုက်ပါ။"</string>
<string name="ok" msgid="5970060430562524910">"ကောင်းပြီ"</string>
@@ -1264,10 +1264,10 @@
<string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ကို သုံးပြီး လုပ်ဆောင်ချက် ပြီးဆုံးပါစေ"</string>
<string name="whichViewApplication" msgid="3272778576700572102">"...ဖြင့် ဖွင့်မည်"</string>
<string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ဖြင့် ဖွင့်မည်"</string>
- <string name="whichEditApplication" msgid="144727838241402655">"...နှင့် တည်းဖြတ်ရန်"</string>
- <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s နှင့် တည်းဖြတ်ရန်"</string>
- <string name="whichSendApplication" msgid="6902512414057341668">"...နှင့် မျှဝေရန်"</string>
- <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$sနှင့် မျှဝေရန်"</string>
+ <string name="whichEditApplication" msgid="144727838241402655">"...နှင့် တည်းဖြတ်ရန်"</string>
+ <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s နှင့် တည်းဖြတ်ရန်"</string>
+ <string name="whichSendApplication" msgid="6902512414057341668">"...နှင့် မျှဝေရန်"</string>
+ <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$sနှင့် မျှဝေရန်"</string>
<string name="whichHomeApplication" msgid="4307587691506919691">"ပင်မ appကို ရွေးပါ"</string>
<string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$sကို ပင်မအဖြစ် သုံးပါ"</string>
<string name="alwaysUse" msgid="4583018368000610438">"ဤလှုပ်ရှားမှုအတွက် မူရင်းအတိုင်း အသုံးပြုပါ။"</string>
@@ -1277,8 +1277,8 @@
<string name="chooseUsbActivity" msgid="6894748416073583509">"USB ကိရိယာ အတွက် app တစ်ခု ရွေးပါ"</string>
<string name="noApplications" msgid="2991814273936504689">"ဘယ် appကမှ ဒီ လုပ်ဆောင်ချက်ကို မလုပ်ကိုင်နိုင်ပါ။"</string>
<string name="aerr_title" msgid="1905800560317137752"></string>
- <string name="aerr_application" msgid="932628488013092776">"ဝမ်းနည်းစွာဖြင့်<xliff:g id="APPLICATION">%1$s</xliff:g>မှာ ရပ်ဆိုင်းသွားသည်။"</string>
- <string name="aerr_process" msgid="4507058997035697579">"ဝမ်းနည်းစွာဖြင့် လုပ်ဆောင်ချက်<xliff:g id="PROCESS">%1$s</xliff:g>မှာ ရပ်ဆိုင်းသွားသည်။"</string>
+ <string name="aerr_application" msgid="932628488013092776">"ဝမ်းနည်းစွာဖြင့်<xliff:g id="APPLICATION">%1$s</xliff:g>မှာ ရပ်ဆိုင်းသွားသည်။"</string>
+ <string name="aerr_process" msgid="4507058997035697579">"ဝမ်းနည်းစွာဖြင့် လုပ်ဆောင်ချက်<xliff:g id="PROCESS">%1$s</xliff:g>မှာ ရပ်ဆိုင်းသွားသည်။"</string>
<string name="anr_title" msgid="4351948481459135709"></string>
<string name="anr_activity_application" msgid="1904477189057199066">"<xliff:g id="APPLICATION">%2$s</xliff:g> က မတုံ့ပြန်ပါ။ \n\n၎င်းကို သင် ပိတ်လိုပါသလား?"</string>
<string name="anr_activity_process" msgid="5776209883299089767">"လှုပ်ရှားမှု <xliff:g id="ACTIVITY">%1$s</xliff:g>က မတုံ့ပြန်ပါ။\n\n၎င်းကို သင် ပိတ်လိုပါသလား?"</string>
@@ -1286,37 +1286,37 @@
<string name="anr_process" msgid="6513209874880517125">"ဖြစ်စဉ်<xliff:g id="PROCESS">%1$s</xliff:g> က မတုံ့ပြန်ပါ။ \n\n၎င်းကို သင် ပိတ် ချင်သလား?"</string>
<string name="force_close" msgid="8346072094521265605">"ကောင်းပြီ"</string>
<string name="report" msgid="4060218260984795706">"သတင်းပို့ပါ"</string>
- <string name="wait" msgid="7147118217226317732">"စောင့်ဆိုင်းရန်"</string>
+ <string name="wait" msgid="7147118217226317732">"စောင့်ဆိုင်းရန်"</string>
<string name="webpage_unresponsive" msgid="3272758351138122503">"စာမျက်နှာမှာ ပြန်လည် တုံ့ပြန်မှု မရှိတော့ပါ။\n\nပိတ်လိုက်ချင်ပါသလား?"</string>
<string name="launch_warning_title" msgid="1547997780506713581">"App ပြန်ညွှန်းခဲ့"</string>
<string name="launch_warning_replace" msgid="6202498949970281412">"<xliff:g id="APP_NAME">%1$s</xliff:g> သည် ယခုအလုပ်လုပ်နေသည်"</string>
- <string name="launch_warning_original" msgid="188102023021668683">"မူလ <xliff:g id="APP_NAME">%1$s</xliff:g> တွင် ထုတ်လွင့်သည်"</string>
+ <string name="launch_warning_original" msgid="188102023021668683">"မူလ <xliff:g id="APP_NAME">%1$s</xliff:g> တွင် ထုတ်လွင့်သည်"</string>
<string name="screen_compat_mode_scale" msgid="3202955667675944499">"စကေး"</string>
<string name="screen_compat_mode_show" msgid="4013878876486655892">"အမြဲပြသရန်"</string>
- <string name="screen_compat_mode_hint" msgid="1064524084543304459">"ဒါကို စနစ် ဆက်တင်များထဲ ပြန်ဖွင့်ပေးရန် > Apps > ဒေါင်းလုဒ် လုပ်ပြီး။"</string>
- <string name="smv_application" msgid="3307209192155442829">"app <xliff:g id="APPLICATION">%1$s</xliff:g> (လုပ်ငန်းစဉ် <xliff:g id="PROCESS">%2$s</xliff:g>) က ကိုယ်တိုင် ပြဌာန်းခဲ့သည့် StrictMode မူဝါဒကို ချိုးဖောက်ခဲ့သည်။"</string>
+ <string name="screen_compat_mode_hint" msgid="1064524084543304459">"ဒါကို စနစ် ဆက်တင်များထဲ ပြန်ဖွင့်ပေးရန် > Apps > ဒေါင်းလုဒ် လုပ်ပြီး။"</string>
+ <string name="smv_application" msgid="3307209192155442829">"app <xliff:g id="APPLICATION">%1$s</xliff:g> (လုပ်ငန်းစဉ် <xliff:g id="PROCESS">%2$s</xliff:g>) က ကိုယ်တိုင် ပြဌာန်းခဲ့သည့် StrictMode မူဝါဒကို ချိုးဖောက်ခဲ့သည်။"</string>
<string name="smv_process" msgid="5120397012047462446">"ဤ<xliff:g id="PROCESS">%1$s</xliff:g>ဖြစ်စဥ်မှာ ကိုယ်တိုင်အကျိုးသက်ရောက်သော StrictModeမူဝါဒအား ချိုးဖောက်သည်"</string>
<string name="android_upgrading_title" msgid="1584192285441405746">"အန်ဒရွိုက်ကို မွမ်းမံနေ…"</string>
<string name="android_start_title" msgid="8418054686415318207">"Android စတင်နေ…"</string>
<string name="android_upgrading_fstrim" msgid="8036718871534640010">"သိုလှောင်မှုအား ပြုပြင်ခြင်း။"</string>
<string name="android_upgrading_apk" msgid="7904042682111526169">"<xliff:g id="NUMBER_0">%1$d</xliff:g> ထဲက app<xliff:g id="NUMBER_1">%2$d</xliff:g>ကို ဆီလျော်အောင် လုပ်နေ"</string>
<string name="android_upgrading_starting_apps" msgid="451464516346926713">"appများကို စတင်နေ"</string>
- <string name="android_upgrading_complete" msgid="1405954754112999229">"လုပ်ငန်းစနစ်ထည့်သွင်း၍ ပြန်လည်စတင်ရန် ပြီးပါပြီ"</string>
+ <string name="android_upgrading_complete" msgid="1405954754112999229">"လုပ်ငန်းစနစ်ထည့်သွင်း၍ ပြန်လည်စတင်ရန် ပြီးပါပြီ"</string>
<string name="heavy_weight_notification" msgid="9087063985776626166">"<xliff:g id="APP">%1$s</xliff:g> က အလုပ်လုပ်နေသည်"</string>
<string name="heavy_weight_notification_detail" msgid="1721681741617898865">"ppဆီ ပြောင်းရန် ထိပါ"</string>
<string name="heavy_weight_switcher_title" msgid="7153167085403298169">"appများကို ပြောင်းမလား?"</string>
<string name="heavy_weight_switcher_text" msgid="7022631924534406403">"အခြား app တစ်ခု အလုပ်လုပ်နေ၍ သင်က အသစ် တစ်ခုကို မစမီ ၎င်းကို ရပ်ပစ်ရမည်။"</string>
<string name="old_app_action" msgid="493129172238566282">"<xliff:g id="OLD_APP">%1$s</xliff:g>သို့ပြန်သွားရန်"</string>
- <string name="old_app_description" msgid="2082094275580358049">"pp အသစ်ကို မစတင်ပါနှင့်။"</string>
+ <string name="old_app_description" msgid="2082094275580358049">"pp အသစ်ကို မစတင်ပါနှင့်။"</string>
<string name="new_app_action" msgid="5472756926945440706">"<xliff:g id="OLD_APP">%1$s</xliff:g>စတင်ပါ"</string>
<string name="new_app_description" msgid="1932143598371537340">"app အဟောင်းကို မသိမ်းဆည်းဘဲ ရပ်လိုက်ပါ။"</string>
<string name="sendText" msgid="5209874571959469142">"စာတိုအတွက် လုပ်ဆောင်ချက် ရေးပါ"</string>
<string name="volume_ringtone" msgid="6885421406845734650">"ဖုန်းမြည်သံအတိုးအကျယ်"</string>
<string name="volume_music" msgid="5421651157138628171">"မီဒီယာအသံအတိုးအကျယ်"</string>
- <string name="volume_music_hint_playing_through_bluetooth" msgid="9165984379394601533">"ဘလူးတူးသ်မှတဆင့်ဖွင့်ရန်"</string>
+ <string name="volume_music_hint_playing_through_bluetooth" msgid="9165984379394601533">"ဘလူးတူးသ်မှတဆင့်ဖွင့်ရန်"</string>
<string name="volume_music_hint_silent_ringtone_selected" msgid="8310739960973156272">"အသံတိတ် မြည်သံ သတ်မှတ်ရန်"</string>
<string name="volume_call" msgid="3941680041282788711">"ခေါ်ဆိုနေခြင်းအသံအတိုးအကျယ်"</string>
- <string name="volume_bluetooth_call" msgid="2002891926351151534">"ဘလူးတုသ်ဖြင့် ခေါ်ဆိုနေခြင်းအသံအတိုးအကျယ်"</string>
+ <string name="volume_bluetooth_call" msgid="2002891926351151534">"ဘလူးတုသ်ဖြင့် ခေါ်ဆိုနေခြင်းအသံအတိုးအကျယ်"</string>
<string name="volume_alarm" msgid="1985191616042689100">"နှိုးစက်သံအတိုးအကျယ်"</string>
<string name="volume_notification" msgid="2422265656744276715">"အကြောင်းကြားသံအတိုးအကျယ်"</string>
<string name="volume_unknown" msgid="1400219669770445902">"အသံအတိုးအကျယ်"</string>
@@ -1335,8 +1335,8 @@
<item quantity="other" msgid="4192424489168397386">"ဝိုင်ဖိုင်ကွန်ယက်များရှိသည်"</item>
</plurals>
<plurals name="wifi_available_detailed">
- <item quantity="one" msgid="1634101450343277345">"ဖွင့်ထားသောဝိုင်ဖိုင်ကွန်ယက်ရှိသည်"</item>
- <item quantity="other" msgid="7915895323644292768">"ဖွင့်ထားသောဝိုင်ဖိုင်ကွန်ယက်များရှိသည်"</item>
+ <item quantity="one" msgid="1634101450343277345">"ဖွင့်ထားသောဝိုင်ဖိုင်ကွန်ယက်ရှိသည်"</item>
+ <item quantity="other" msgid="7915895323644292768">"ဖွင့်ထားသောဝိုင်ဖိုင်ကွန်ယက်များရှိသည်"</item>
</plurals>
<string name="wifi_available_sign_in" msgid="4029489716605255386">"ဝိုင်ဖိုင်ကွန်ရက်သို့ ဝင်ပါ"</string>
<string name="network_available_sign_in" msgid="8495155593358054676">"ကွန်ရက်သို့ ဝင်ပါ"</string>
@@ -1347,7 +1347,7 @@
<string name="wifi_p2p_dialog_title" msgid="97611782659324517">"တိုက်ရိုက် ဝိုင်ဖိုင်"</string>
<string name="wifi_p2p_turnon_message" msgid="2909250942299627244">"တိုက်ရိုက်ဝိုင်ဖိုင်ကို စတင်ပါ။ ၎င်းသည် ဝိုင်ဖိုင် ဟော့စပေါ့ကို ရပ်ဆိုင်းစေမှာ ဖြစ်ပါသည်။"</string>
<string name="wifi_p2p_failed_message" msgid="3763669677935623084">"တိုက်ရိုက်ဝိုင်ဖိုင်ကို စတင်လို့ မရပါ"</string>
- <string name="wifi_p2p_enabled_notification_title" msgid="2068321881673734886">"ဝိုင်ဖိုင် တိုက်ရိုက် ကိုဖွင့်ထားသည်"</string>
+ <string name="wifi_p2p_enabled_notification_title" msgid="2068321881673734886">"ဝိုင်ဖိုင် တိုက်ရိုက် ကိုဖွင့်ထားသည်"</string>
<string name="wifi_p2p_enabled_notification_message" msgid="1638949953993894335">"အပြင်အဆင်များအတွက်ထိပါ"</string>
<string name="accept" msgid="1645267259272829559">"လက်ခံရန်"</string>
<string name="decline" msgid="2112225451706137894">"လက်မခံပါ"</string>
@@ -1358,16 +1358,16 @@
<string name="wifi_p2p_enter_pin_message" msgid="5920929550367828970">"လိုအပ်သော ပင် နံပါတ် ရိုက်ရန်:"</string>
<string name="wifi_p2p_show_pin_message" msgid="8530563323880921094">"ပင် နံပါတ်:"</string>
<string name="wifi_p2p_frequency_conflict_message" product="tablet" msgid="8012981257742232475">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> နှင့် ဆက်သွယ်ထားစဉ် တက်ဘလက်ဟာ ဝိုင်ဖိုင် နှင့် ဆက်သွယ်မှု ရပ်ဆိုင်းထားမှာ ဖြစ်ပါတယ်"</string>
- <string name="wifi_p2p_frequency_conflict_message" product="tv" msgid="3087858235069421128">"တီဗွီအား <xliff:g id="DEVICE_NAME">%1$s</xliff:g> နှင့် ချိတ်ဆက်ထားစဉ် ဝိုင်ဖိုင်နှင့် ချိတ်ဆက်မှုအား ယာယီဖြုတ်ထားမည်။"</string>
+ <string name="wifi_p2p_frequency_conflict_message" product="tv" msgid="3087858235069421128">"တီဗွီအား <xliff:g id="DEVICE_NAME">%1$s</xliff:g> နှင့် ချိတ်ဆက်ထားစဉ် ဝိုင်ဖိုင်နှင့် ချိတ်ဆက်မှုအား ယာယီဖြုတ်ထားမည်။"</string>
<string name="wifi_p2p_frequency_conflict_message" product="default" msgid="7363907213787469151">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> ကို ဆက်သွယ်ထားစဉ် ဖုန်းအား ဝိုင်ဖိုင်မှ ဆက်သွယ်မှု ရပ်ဆိုင်းထားပါမည်"</string>
- <string name="select_character" msgid="3365550120617701745">"စာရိုက်ထည့်ရန်"</string>
- <string name="sms_control_title" msgid="7296612781128917719">"စာတိုပို့စနစ်(SMS)ဖြင့် စာများ ပို့သည်"</string>
+ <string name="select_character" msgid="3365550120617701745">"စာရိုက်ထည့်ရန်"</string>
+ <string name="sms_control_title" msgid="7296612781128917719">"စာတိုပို့စနစ်(SMS)ဖြင့် စာများ ပို့သည်"</string>
<string name="sms_control_message" msgid="3867899169651496433">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> မှ စာ အမြောက်အများ ပို့နေပါသည်။ ဒီအပလီကေးရှင်းကို ဆက်လက်ပြီး လုပ်ဆောင်ရန် ခွင့်ပြုပါမလား"</string>
<string name="sms_control_yes" msgid="3663725993855816807">"ခွင့်ပြုရန်"</string>
<string name="sms_control_no" msgid="625438561395534982">"ငြင်းပယ်ခြင်း"</string>
<string name="sms_short_code_confirm_message" msgid="1645436466285310855">"<b><xliff:g id="APP_NAME">%1$s</xliff:g></b> မှ <b><xliff:g id="DEST_ADDRESS">%2$s</xliff:g></b> ကို စာတို ပို့ချင်ပါသည်"</string>
- <string name="sms_short_code_details" msgid="5873295990846059400"><b>"ဒါက သင့် မိုဘိုင်း အကောင့် အတွက် "</b>" ကုန်ကျမှု ရှိလာနိုင်သည်။"</string>
- <string name="sms_premium_short_code_details" msgid="7869234868023975"><b>"ဒါက သင့် မိုဘိုင်း အကောင့် အတွက် ကုန်ကျမှု ရှိလာနိုင်သည်။"</b></string>
+ <string name="sms_short_code_details" msgid="5873295990846059400"><b>"ဒါက သင့် မိုဘိုင်း အကောင့် အတွက် "</b>" ကုန်ကျမှု ရှိလာနိုင်သည်။"</string>
+ <string name="sms_premium_short_code_details" msgid="7869234868023975"><b>"ဒါက သင့် မိုဘိုင်း အကောင့် အတွက် ကုန်ကျမှု ရှိလာနိုင်သည်။"</b></string>
<string name="sms_short_code_confirm_allow" msgid="4458878637111023413">"ပို့ရန်"</string>
<string name="sms_short_code_confirm_deny" msgid="2927389840209170706">"ထားတော့"</string>
<string name="sms_short_code_remember_choice" msgid="5289538592272218136">"ကျွန်ပ်၏ရွေးချယ်မှုကို မှတ်ထားရန်"</string>
@@ -1375,10 +1375,10 @@
<string name="sms_short_code_confirm_always_allow" msgid="3241181154869493368">"အမြဲခွင့်ပြုရန်"</string>
<string name="sms_short_code_confirm_never_allow" msgid="446992765774269673">"ဘယ်တော့မှခွင့်မပြုပါ"</string>
<string name="sim_removed_title" msgid="6227712319223226185">"SIMကဒ်ဖယ်ရှားခြင်း"</string>
- <string name="sim_removed_message" msgid="5450336489923274918">"သင်က မှန်ကန်သည့် ဆင်းမ် ကဒ် တစ်ခုနှင့် ပြန်မစမချင်း ဆယ်လူလာ ကွန်ရက်ကို ရှာတွေ့မည် မဟုတ်ပါ။"</string>
+ <string name="sim_removed_message" msgid="5450336489923274918">"သင်က မှန်ကန်သည့် ဆင်းမ် ကဒ် တစ်ခုနှင့် ပြန်မစမချင်း ဆယ်လူလာ ကွန်ရက်ကို ရှာတွေ့မည် မဟုတ်ပါ။"</string>
<string name="sim_done_button" msgid="827949989369963775">"ပြီးပါပြီ"</string>
- <string name="sim_added_title" msgid="3719670512889674693">"ဆင်းမ်ကဒ် ထည့်ပါသည်"</string>
- <string name="sim_added_message" msgid="7797975656153714319">"ဆယ်လူလာ ကွန်ရက်ကို ရယူသုံးရန် သင့် ကိရိယာကို ပြန်ဖွင့်ပေးပါ။"</string>
+ <string name="sim_added_title" msgid="3719670512889674693">"ဆင်းမ်ကဒ် ထည့်ပါသည်"</string>
+ <string name="sim_added_message" msgid="7797975656153714319">"ဆယ်လူလာ ကွန်ရက်ကို ရယူသုံးရန် သင့် ကိရိယာကို ပြန်ဖွင့်ပေးပါ။"</string>
<string name="sim_restart_button" msgid="4722407842815232347">"အစက ပြန်စရန်"</string>
<string name="time_picker_dialog_title" msgid="8349362623068819295">"အချိန်သတ်မှတ်ရန်"</string>
<string name="date_picker_dialog_title" msgid="5879450659453782278">"ရက်စွဲ အတည်ပြုရန်"</string>
@@ -1386,13 +1386,13 @@
<string name="date_time_done" msgid="2507683751759308828">"ပြီးပါပြီ"</string>
<string name="perms_new_perm_prefix" msgid="8257740710754301407"><font size="12" fgcolor="#ff33b5e5">"အသစ်: "</font></string>
<string name="perms_description_app" msgid="5139836143293299417">"<xliff:g id="APP_NAME">%1$s</xliff:g> မှ ထောက်ပံ့သည်"</string>
- <string name="no_permissions" msgid="7283357728219338112">"ခွင့်ပြုချက်မလိုအပ်ပါ"</string>
+ <string name="no_permissions" msgid="7283357728219338112">"ခွင့်ပြုချက်မလိုအပ်ပါ"</string>
<string name="perm_costs_money" msgid="4902470324142151116">"သင့်အတွက် ပိုက်ဆံကုန်ကျနိုင်ပါသည်"</string>
<string name="usb_storage_activity_title" msgid="4465055157209648641">"USB ဖြင့်အချက်အလက်မြောက်များစွာ သိမ်းဆည်းနိုင်သော နေရာ"</string>
<string name="usb_storage_title" msgid="5901459041398751495">"USB ချိန်ဆက်ထားပြီး"</string>
<string name="usb_storage_message" product="nosdcard" msgid="3308538094316477839">"သင့်ကွန်ပျူတာကို USB မှ တဆင့် ဆက်သွယ်ထားပါသည်။ ကွန်ပျူတာနဲ့ အန်းဒရွိုက်၏ USB သိုလှောင်မှု အကြား အချက်အလက် လွှဲပြောင်းရန် တို့ထိပါ"</string>
<string name="usb_storage_message" product="default" msgid="805351000446037811">"သင့်ကွန်ပျူတာကို USB မှ တဆင့် ဆက်သွယ်ထားပါသည်။ ကွန်ပျူတာနဲ့ အန်းဒရွိုက်၏ SD ကဒ် အကြား အချက်အလက် လွှဲပြောင်းရန် တို့ထိပါ"</string>
- <string name="usb_storage_button_mount" msgid="1052259930369508235">"USBသိမ်းဆည်းခြင်းကိုဖွင့်ရန်"</string>
+ <string name="usb_storage_button_mount" msgid="1052259930369508235">"USBသိမ်းဆည်းခြင်းကိုဖွင့်ရန်"</string>
<string name="usb_storage_error_message" product="nosdcard" msgid="3017045217365540658">"USB ကို သုံးပြီး USB ဖြင့်အချက်အလက်မြောက်များစွာ သိမ်းဆည်းနိုင်သော နေရာတွင် ပြသနာ ဖြစ်နေပါသည်"</string>
<string name="usb_storage_error_message" product="default" msgid="2876018512716970313">"SD card ကို သုံးပြီး USB ဖြင့်အချက်အလက်မြောက်များစွာ သိမ်းဆည်းနိုင်သော နေရာတွင် ပြသနာ ဖြစ်နေပါသည်"</string>
<string name="usb_storage_notification_title" msgid="8175892554757216525">"USB ချိန်ဆက်ထားပြီး"</string>
@@ -1404,19 +1404,19 @@
<string name="usb_storage_stop_message" product="default" msgid="8043969782460613114">"USB သိုလှောင်မှုကို မပိတ်ခင်, ကွန်ပျူတာမှ Android ၏ SD ကဒ်ကို ဖြုတ်ပါ (\"eject\")"</string>
<string name="usb_storage_stop_button_mount" msgid="7060218034900696029">"USBသိမ်းဆည်းခြင်းကိုပိတ်ရန်"</string>
<string name="usb_storage_stop_error_message" msgid="1970374898263063836">"USB သိုလှောင်မှု ပိတ်ရာတွင် ပြသနာရှိပါသည်။ USB လာရာအား မဆက်သွယ်ထားကြောင်း စစ်ဆေးပြီး ပြန်လည်ကြိုးစားပါ"</string>
- <string name="dlg_confirm_kill_storage_users_title" msgid="963039033470478697">"USBသိမ်းဆည်းခြင်းကိုဖွင့်ရန်"</string>
+ <string name="dlg_confirm_kill_storage_users_title" msgid="963039033470478697">"USBသိမ်းဆည်းခြင်းကိုဖွင့်ရန်"</string>
<string name="dlg_confirm_kill_storage_users_text" msgid="5100428757107469454">"သင် ယူအက်စ်ဘီ နဲ့ သိမ်းဆည်းမှုကို ဖွင့်လိုက်ပါက တချို့ အပလီကေးရှင်းများ က ယူအက်စ်ဘီ နဲ့ သိမ်းဆည်းမှု ပြန်ပိတ်သည်အထိ အလုပ်မလုပ် သို့ သုံးစွဲရန် ရှိနေမည် မဟုတ်ပါ"</string>
<string name="dlg_error_title" msgid="7323658469626514207">"USBဆောင်ရွက်မှုမအောင်မြင်ပါ"</string>
<string name="dlg_ok" msgid="7376953167039865701">"ကောင်းပြီ"</string>
- <string name="usb_mtp_notification_title" msgid="3699913097391550394">"မီဒီယာစက်အနေဖြင့် ချိတ်ဆက်သည်"</string>
- <string name="usb_ptp_notification_title" msgid="1960817192216064833">"ကင်မရာအနေဖြင့်ဆက်သွယ်ခြင်း"</string>
- <string name="usb_cd_installer_notification_title" msgid="6774712827892090754">"installerအနေဖြင့် ချိတ်ဆက်သည်"</string>
+ <string name="usb_mtp_notification_title" msgid="3699913097391550394">"မီဒီယာစက်အနေဖြင့် ချိတ်ဆက်သည်"</string>
+ <string name="usb_ptp_notification_title" msgid="1960817192216064833">"ကင်မရာအနေဖြင့်ဆက်သွယ်ခြင်း"</string>
+ <string name="usb_cd_installer_notification_title" msgid="6774712827892090754">"installerအနေဖြင့် ချိတ်ဆက်သည်"</string>
<string name="usb_accessory_notification_title" msgid="7848236974087653666">"USBတွဲဖက်ပစ္စည်းအား ချိတ်ဆက်ထားသည်"</string>
<string name="usb_notification_message" msgid="2290859399983720271">"အခြား USB စိတ်ကြိုက်ရွေးချယ်ခွင့်များ အတွက် တို့ထိပါ။"</string>
<string name="extmedia_format_title" product="nosdcard" msgid="9020092196061007262">"USB သိုလှောင်ခန်းကို ပုံစံပြန်ချမလား?"</string>
<string name="extmedia_format_title" product="default" msgid="3648415921526526069">"SD ကဒ်ကို ပုံစံပြန်ချမလား?"</string>
- <string name="extmedia_format_message" product="nosdcard" msgid="3934016853425761078">"သင်၏ USB သိုလှောင်ခန်းထဲ သိုလှောင်ထားသည့် ဖိုင်အားလုံး ဖျက်ခံရမည်။ ဒီလုပ်ရပ်ကို ပြန်ပြီး ပြောင်းလဲ မရနိုင်ပါ။"</string>
- <string name="extmedia_format_message" product="default" msgid="14131895027543830">"သင့် ကဒ် ထဲက ဒေတာ အားလုံး ဆုံးသွားမည်။"</string>
+ <string name="extmedia_format_message" product="nosdcard" msgid="3934016853425761078">"သင်၏ USB သိုလှောင်ခန်းထဲ သိုလှောင်ထားသည့် ဖိုင်အားလုံး ဖျက်ခံရမည်။ ဒီလုပ်ရပ်ကို ပြန်ပြီး ပြောင်းလဲ မရနိုင်ပါ။"</string>
+ <string name="extmedia_format_message" product="default" msgid="14131895027543830">"သင့် ကဒ် ထဲက ဒေတာ အားလုံး ဆုံးသွားမည်။"</string>
<string name="extmedia_format_button_format" msgid="4131064560127478695">"ပုံစံချရန်ပြင်ဆင်သည်"</string>
<string name="adb_active_notification_title" msgid="6729044778949189918">"USB အမှားစစ်ခြင်းအား ချိတ်ဆက်ထားသည်"</string>
<string name="adb_active_notification_message" msgid="1016654627626476142">"USB ဒီဘာဂင် ပိတ်ရန် ထိပါ။"</string>
@@ -1428,9 +1428,9 @@
<string name="select_keyboard_layout_notification_message" msgid="4465907700449257063">"လက်ကွက် အပြင်အဆင်ရွေးရန် တို့ထိပါ"</string>
<string name="fast_scroll_alphabet" msgid="5433275485499039199">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="4030170524595123610">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
- <string name="candidates_style" msgid="4333913089637062257"><u>"ရွေးချယ်ခံမည့်သူ"</u></string>
- <string name="ext_media_checking_notification_title" product="nosdcard" msgid="3449816005351468560">"USBသိမ်းဆည်းသည့်အရာအားအဆင်သင့်စေရန်ပြုလုပ်ခြင်း"</string>
- <string name="ext_media_checking_notification_title" product="default" msgid="5457603418970994050">"SDကဒ်အအဆင်သင့်စေရန်ပြုလုပ်ခြင်း"</string>
+ <string name="candidates_style" msgid="4333913089637062257"><u>"ရွေးချယ်ခံမည့်သူ"</u></string>
+ <string name="ext_media_checking_notification_title" product="nosdcard" msgid="3449816005351468560">"USBသိမ်းဆည်းသည့်အရာအားအဆင်သင့်စေရန်ပြုလုပ်ခြင်း"</string>
+ <string name="ext_media_checking_notification_title" product="default" msgid="5457603418970994050">"SDကဒ်အအဆင်သင့်စေရန်ပြုလုပ်ခြင်း"</string>
<string name="ext_media_checking_notification_message" msgid="8287319882926737053">"မှားယွင်းမှုရှိမရှိစစ်ခြင်း"</string>
<string name="ext_media_nofs_notification_title" product="nosdcard" msgid="7788040745686229307">"USBသိမ်းဆည်းမှု၌ ဘာမှမရှိပါ"</string>
<string name="ext_media_nofs_notification_title" product="default" msgid="780477838241212997">"SDကဒ်ထဲ၌ဘာမှမရှိပါ"</string>
@@ -1442,19 +1442,19 @@
<string name="ext_media_unmountable_notification_message" product="default" msgid="1753898567525568253">"SD ကဒ် ပျက်စီးနေပါသည်။ ပြန်လည် ဖောမက် ချကြည့်ပါ"</string>
<string name="ext_media_badremoval_notification_title" product="nosdcard" msgid="1661683031330951073">"မရည်ရွယ်ပဲ USBသိုလှောင်ကိရိယာဖယ်ရှားသည်"</string>
<string name="ext_media_badremoval_notification_title" product="default" msgid="6872152882604407837">"မထင်မှတ်ပဲSDကဒ်ဖြုတ်သည်"</string>
- <string name="ext_media_badremoval_notification_message" product="nosdcard" msgid="4329848819865594241">"ဒေတာမဆုံးရှုံးစေရန် မပြုတ်ခင် USB သိမ်းဆည်းခြင်းအား မဖြုတ်ပါနှင့်"</string>
+ <string name="ext_media_badremoval_notification_message" product="nosdcard" msgid="4329848819865594241">"ဒေတာမဆုံးရှုံးစေရန် မပြုတ်ခင် USB သိမ်းဆည်းခြင်းအား မဖြုတ်ပါနှင့်"</string>
<string name="ext_media_badremoval_notification_message" product="default" msgid="7260183293747448241">"ဒေတာမဆုံးရှုံးစေရန် မပြုတ်ခင် SDကဒ်အားမတပ်ရန်"</string>
<string name="ext_media_safe_unmount_notification_title" product="nosdcard" msgid="3967973893270360230">"USB ကိရိယာအား ဖြုတ်နိုင်သည်"</string>
<string name="ext_media_safe_unmount_notification_title" product="default" msgid="6729801130790616200">"အန္တရာယ်ကင်းစွာSDကဒ်အား ဖယ်နိုင်ပါပြီ"</string>
- <string name="ext_media_safe_unmount_notification_message" product="nosdcard" msgid="6142195361606493530">"USBသိမ်းဆည်းသည့်အရာအား အန္တရာယ်ကင်းစွာဖယ်နိုင်ပါပြီ"</string>
+ <string name="ext_media_safe_unmount_notification_message" product="nosdcard" msgid="6142195361606493530">"USBသိမ်းဆည်းသည့်အရာအား အန္တရာယ်ကင်းစွာဖယ်နိုင်ပါပြီ"</string>
<string name="ext_media_safe_unmount_notification_message" product="default" msgid="568841278138377604">"SDကဒ်အား အန္တရာယ်ကင်းစွာဖယ်နိုင်ပါပြီ"</string>
<string name="ext_media_nomedia_notification_title" product="nosdcard" msgid="4486377230140227651">"USBသိုလှောင်ကိရိယာအား ဖြုတ်သည်"</string>
<string name="ext_media_nomedia_notification_title" product="default" msgid="8902518030404381318">"SDကဒ်ဖယ်ထားသည်"</string>
- <string name="ext_media_nomedia_notification_message" product="nosdcard" msgid="6921126162580574143">"USBသိမ်းဆည်းသည့်အရာ ဖယ်ရှားလိုက်သည်။ နောက်မီဒီယာအသစ်တခုအားထည့်ပါ။"</string>
- <string name="ext_media_nomedia_notification_message" product="default" msgid="3870120652983659641">"SDကဒ်အားဖယ်ရှားလိုက်သည်။ နောက်အသစ်တခုအားထည့်ပါ။"</string>
+ <string name="ext_media_nomedia_notification_message" product="nosdcard" msgid="6921126162580574143">"USBသိမ်းဆည်းသည့်အရာ ဖယ်ရှားလိုက်သည်။ နောက်မီဒီယာအသစ်တခုအားထည့်ပါ။"</string>
+ <string name="ext_media_nomedia_notification_message" product="default" msgid="3870120652983659641">"SDကဒ်အားဖယ်ရှားလိုက်သည်။ နောက်အသစ်တခုအားထည့်ပါ။"</string>
<string name="activity_list_empty" msgid="1675388330786841066">"တိုက်ဆိုင်သော ပြုလုပ်ချက် ရှာမတွေ့ပါ"</string>
- <string name="permlab_pkgUsageStats" msgid="8787352074326748892">"အစိတ်အပိုင်းများသုံစွဲခြင်း ကိန်းဂဏန်းအချက်အလက်များကို အဆင်မြှင့်ရန်ပြုလုပ်ခြင်း"</string>
- <string name="permdesc_pkgUsageStats" msgid="1106612424254277630">"appအား စုစည်းထားသည့် အစိတ်အပိုင်း၏ သုံးစွဲမှု စာရင်းအင်းများကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
+ <string name="permlab_pkgUsageStats" msgid="8787352074326748892">"အစိတ်အပိုင်းများသုံစွဲခြင်း ကိန်းဂဏန်းအချက်အလက်များကို အဆင်မြှင့်ရန်ပြုလုပ်ခြင်း"</string>
+ <string name="permdesc_pkgUsageStats" msgid="1106612424254277630">"appအား စုစည်းထားသည့် အစိတ်အပိုင်း၏ သုံးစွဲမှု စာရင်းအင်းများကို မွမ်းမံခွင့် ပြုသည်။ သာမန် appများ အသုံးပြုရန် မဟုတ်ပါ။"</string>
<string name="permlab_copyProtectedData" msgid="4341036311211406692">"အကြောင်းအရာ ကော်ပီ လုပ်ရန်"</string>
<string name="permdesc_copyProtectedData" msgid="4390697124288317831">"appအား ပုံသေ ကွန်တင်နား ဝန်ဆောင်မှု၏ အကြောင်းအရာကို ကူးယူရန် တောင်းခံနိုင်သည်။ သာမန် appများ သုံးရန် မဟုတ်ပါ။"</string>
<string name="permlab_route_media_output" msgid="1642024455750414694">"မီဒီယာထွက်ပေါက်အား လမ်းလွှဲပြောင်းခြင်း"</string>
@@ -1464,19 +1464,19 @@
<string name="permlab_control_keyguard" msgid="172195184207828387">"keyguard အား ပြသခြင်း ကွယ်ဖျောက်ခြင်းများအား ထိန်းချုပ်ခြင်း"</string>
<string name="permdesc_control_keyguard" msgid="3043732290518629061">"အပလီကေးရှင်း ကို keguard secure storage အား ထိန်းချုပ်ခွင့်ပေးခြင်း"</string>
<string name="permlab_trust_listener" msgid="1765718054003704476">"ယုံကြည်မှု အခြေအနေ ပြောင်းလဲမှုများကို စူးစမ်းခြင်း။"</string>
- <string name="permdesc_trust_listener" msgid="8233895334214716864">"အပလီကေးရှင်းအား ယုံကြည်မှု အခြေအနေ ထဲက အပြောင်းအလဲများကို စူးစမ်းခွင့် ပြုသည်။"</string>
- <string name="permlab_provide_trust_agent" msgid="5465587586091358316">"ယုံကြည်မှု အေဂျင့် စီစဉ်ပေးသည်။"</string>
- <string name="permdesc_provide_trust_agent" msgid="3865702641053068148">"အပလီကေးရှင်းအား ယုံကြည်မှု အေဂျင့် စီစဉ်ခွင့် ပေးသည်။"</string>
- <string name="permlab_launch_trust_agent_settings" msgid="5859430082240410200">"ယုံကြည်ရ အေဂျင့် ဆက်တင် မီနူး ဖွင့်တင်ပါ။"</string>
- <string name="permdesc_launch_trust_agent_settings" msgid="8185142708644913381">"အပလီကေးရှင်း တစ်ခုအား ယုံကြည်ရ အေဂျင့်၏ ပြုမူပုံကို ပြောင်းလဲစေနိုင်သည့် လှုပ်ရှားမှု တစ်ခုကို ဖွင့်တင်ခွင့် ပြုသည်။"</string>
- <string name="permlab_bind_trust_agent_service" msgid="8242093169457695334">"ယုံကြည်မှု အေဂျင့် ဝန်ဆောင်မှု တစ်ခုဆီသို့ ချိတ်တွဲခြင်း"</string>
- <string name="permdesc_bind_trust_agent_service" msgid="7041930026024507515">"စွဲကိုင်ထားသူအား ယုံကြည်မှု အေဂျင့် ဝန်ဆောင်မှုသို့ ချိတ်တွဲခွင့်ကို ပေးသည်။"</string>
+ <string name="permdesc_trust_listener" msgid="8233895334214716864">"အပလီကေးရှင်းအား ယုံကြည်မှု အခြေအနေ ထဲက အပြောင်းအလဲများကို စူးစမ်းခွင့် ပြုသည်။"</string>
+ <string name="permlab_provide_trust_agent" msgid="5465587586091358316">"ယုံကြည်မှု အေဂျင့် စီစဉ်ပေးသည်။"</string>
+ <string name="permdesc_provide_trust_agent" msgid="3865702641053068148">"အပလီကေးရှင်းအား ယုံကြည်မှု အေဂျင့် စီစဉ်ခွင့် ပေးသည်။"</string>
+ <string name="permlab_launch_trust_agent_settings" msgid="5859430082240410200">"ယုံကြည်ရ အေဂျင့် ဆက်တင် မီနူး ဖွင့်တင်ပါ။"</string>
+ <string name="permdesc_launch_trust_agent_settings" msgid="8185142708644913381">"အပလီကေးရှင်း တစ်ခုအား ယုံကြည်ရ အေဂျင့်၏ ပြုမူပုံကို ပြောင်းလဲစေနိုင်သည့် လှုပ်ရှားမှု တစ်ခုကို ဖွင့်တင်ခွင့် ပြုသည်။"</string>
+ <string name="permlab_bind_trust_agent_service" msgid="8242093169457695334">"ယုံကြည်မှု အေဂျင့် ဝန်ဆောင်မှု တစ်ခုဆီသို့ ချိတ်တွဲခြင်း"</string>
+ <string name="permdesc_bind_trust_agent_service" msgid="7041930026024507515">"စွဲကိုင်ထားသူအား ယုံကြည်မှု အေဂျင့် ဝန်ဆောင်မှုသို့ ချိတ်တွဲခွင့်ကို ပေးသည်။"</string>
<string name="permlab_recovery" msgid="3157024487744125846">"အဆင့်မြှင့်ခြင်းနဲ့ ပြန်လည် ထိန်းသိမ်းခြင်း များနှင့် ဆက်ဆံစေခြင်း"</string>
<string name="permdesc_recovery" msgid="8511774533266359571">"အပလီကေးရှင်းအား စစ်စတန်အား ပြန်လည် ကယ်ဆယ်မှု နဲ့ အဆင့်မြှင့်ခြင်းများအား လုပ်ဆောင်ခွင့် ပေးခြင်း"</string>
<string name="permlab_manageMediaProjection" msgid="1120495449419929218">"မီဒီယာ ပရိုဂျက် ချိတ်ဆက်မှုများကို စီမံကွပ်ကဲခြင်း"</string>
- <string name="permdesc_manageMediaProjection" msgid="8053759147529492856">"အပလီကေးရှင်းအား မီဒီယာ ပရိုဂျက် ချိတ်ဆက်မှုများကို စီမံကွပ်ကဲခွင့် ပြုသည်။ ယင်း ချိတ်ဆက်မှုများ အတွင်းမှာ အပလီကေးရှင်း အတွက် ပြသမှု နှင့် အသံ အကြောင်းအရာများကို ဖမ်းယူရေး အခွင့်အလမ်းများကို စီမံပေးနိုင်သည်။ ပုံမှန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
+ <string name="permdesc_manageMediaProjection" msgid="8053759147529492856">"အပလီကေးရှင်းအား မီဒီယာ ပရိုဂျက် ချိတ်ဆက်မှုများကို စီမံကွပ်ကဲခွင့် ပြုသည်။ ယင်း ချိတ်ဆက်မှုများ အတွင်းမှာ အပလီကေးရှင်း အတွက် ပြသမှု နှင့် အသံ အကြောင်းအရာများကို ဖမ်းယူရေး အခွင့်အလမ်းများကို စီမံပေးနိုင်သည်။ ပုံမှန် appများ အတွက် ဘယ်တော့မှ မလိုအပ်နိုင်ပါ။"</string>
<string name="permlab_readInstallSessions" msgid="6165432407628065939">"တပ်ဆင်ရေး ချိတ်ဆက်မှုများကို ဖတ်ရန်"</string>
- <string name="permdesc_readInstallSessions" msgid="2049771699626019849">"အပလီကေးရှင်းအား တပ်ဆင်ရေး ချိတ်ဆက်မှုများကို ဖတ်ခွင့်ပြုသည်။ ၎င်းသည် ဖွင့်သုံးနေသည့် အထုပ်အား တပ်ဆင်မှုဆိုင်ရာ အသေးိစတ်များကို ကြည့်ရှုခွင့် ပြုသည်။"</string>
+ <string name="permdesc_readInstallSessions" msgid="2049771699626019849">"အပလီကေးရှင်းအား တပ်ဆင်ရေး ချိတ်ဆက်မှုများကို ဖတ်ခွင့်ပြုသည်။ ၎င်းသည် ဖွင့်သုံးနေသည့် အထုပ်အား တပ်ဆင်မှုဆိုင်ရာ အသေးိစတ်များကို ကြည့်ရှုခွင့် ပြုသည်။"</string>
<string name="tutorial_double_tap_to_zoom_message_short" msgid="4070433208160063538">"ချုံ့ချဲ့မှုကို ထိန်းချုပ်ရန် အတွက် နှစ်ကြိမ် ထိပါ"</string>
<string name="gadget_host_error_inflating" msgid="4882004314906466162">"ဝဒ်ဂျက်ထည့်လို့ မရပါ"</string>
<string name="ime_action_go" msgid="8320845651737369027">"သွားပါ"</string>
@@ -1487,9 +1487,9 @@
<string name="ime_action_previous" msgid="1443550039250105948">"အနောက်သို့"</string>
<string name="ime_action_default" msgid="2840921885558045721">"လုပ်ဆောင်ချက်"</string>
<string name="dial_number_using" msgid="5789176425167573586">\n"အား အသုံးပြု၍ <xliff:g id="NUMBER">%s</xliff:g>နံပါတ်ခေါ်ဆိုပါ"</string>
- <string name="create_contact_using" msgid="4947405226788104538">\n"အား အသုံးပြု၍<xliff:g id="NUMBER">%s</xliff:g>ဆက်သွယ်မည့်သူများအား ဖန်တီးခြင်း"</string>
- <string name="grant_credentials_permission_message_header" msgid="2106103817937859662">"အောက်ပါထဲက app တစ်ခု သို့မဟုတ် ပိုလျက် သင်၏ အကောင့်ကို၊ ယခု နှင့် အနာဂတ်မှာ ရယူအသုံးချရန် ခွင့်ပြုချက်ကို တောင်းထားသည်။"</string>
- <string name="grant_credentials_permission_message_footer" msgid="3125211343379376561">"ဤတောင်းခံမှုအားခွင့်ပြုမည်လား"</string>
+ <string name="create_contact_using" msgid="4947405226788104538">\n"အား အသုံးပြု၍<xliff:g id="NUMBER">%s</xliff:g>ဆက်သွယ်မည့်သူများအား ဖန်တီးခြင်း"</string>
+ <string name="grant_credentials_permission_message_header" msgid="2106103817937859662">"အောက်ပါထဲက app တစ်ခု သို့မဟုတ် ပိုလျက် သင်၏ အကောင့်ကို၊ ယခု နှင့် အနာဂတ်မှာ ရယူအသုံးချရန် ခွင့်ပြုချက်ကို တောင်းထားသည်။"</string>
+ <string name="grant_credentials_permission_message_footer" msgid="3125211343379376561">"ဤတောင်းခံမှုအားခွင့်ပြုမည်လား"</string>
<string name="grant_permissions_header_text" msgid="6874497408201826708">"သုံးစွဲခွင့် တောင်းဆိုရန်"</string>
<string name="allow" msgid="7225948811296386551">"ခွင့်ပြုသည်"</string>
<string name="deny" msgid="2081879885755434506">"ငြင်းပယ်သည်"</string>
@@ -1497,7 +1497,7 @@
<string name="permission_request_notification_with_subtitle" msgid="8530393139639560189">"အကောင့် <xliff:g id="ACCOUNT">%s</xliff:g> အတွက် \n ခွင့်ပြုချက် တောင်းခံထားပြီး"</string>
<string name="forward_intent_to_owner" msgid="1207197447013960896">"သင်သည် ဒီappကို သင့်အလုပ်ပရိုဖိုင် ပြင်ပတွင် အသုံးပြုနေ၏"</string>
<string name="forward_intent_to_work" msgid="621480743856004612">"သင်သည် ဒီappကို သင်၏ အလုပ် ပရိုဖိုင် ထဲမှာ အသုံးပြုနေသည်"</string>
- <string name="input_method_binding_label" msgid="1283557179944992649">"ထည့်သွင်းရန်နည်းလမ်း"</string>
+ <string name="input_method_binding_label" msgid="1283557179944992649">"ထည့်သွင်းရန်နည်းလမ်း"</string>
<string name="sync_binding_label" msgid="3687969138375092423">"ထပ်တူ ကိုက်ညီခြင်း"</string>
<string name="accessibility_binding_label" msgid="4148120742096474641">"အသုံးပြုခွင့်"</string>
<string name="wallpaper_binding_label" msgid="1240087844304687662">"နောက်ခံ"</string>
@@ -1513,12 +1513,12 @@
<string name="vpn_lockdown_error" msgid="6009249814034708175">"အမြဲတမ်းဖွင့်ထား VPN အမှား"</string>
<string name="vpn_lockdown_config" msgid="6415899150671537970">"ပြင်ဆင်ရန် ထိလိုက်ပါ"</string>
<string name="upload_file" msgid="2897957172366730416">"ဖိုင်ရွေးချယ်ရန်"</string>
- <string name="no_file_chosen" msgid="6363648562170759465">"မည်သည့်ဖိုင်ကိုမှမရွေးပါ"</string>
+ <string name="no_file_chosen" msgid="6363648562170759465">"မည်သည့်ဖိုင်ကိုမှမရွေးပါ"</string>
<string name="reset" msgid="2448168080964209908">"ပြန်လည်စတင်စေရန်"</string>
- <string name="submit" msgid="1602335572089911941">"တင်ပြရန်"</string>
+ <string name="submit" msgid="1602335572089911941">"တင်ပြရန်"</string>
<string name="car_mode_disable_notification_title" msgid="3164768212003864316">"ကားထဲတွင်အသုံးပြုနိုင်သောစနစ် ရရှိနိုင်သည်"</string>
<string name="car_mode_disable_notification_message" msgid="8035230537563503262">"ကားပေါ်ရောက် အခြေအနေမှ ထွက်ရန် ထိလိုက်ပါ"</string>
- <string name="tethered_notification_title" msgid="3146694234398202601">"တဆင့်ပြန်လည်လွှင့်ခြင်း သို့မဟုတ် ဟော့စပေါ့ ဖွင့်ထားသည်"</string>
+ <string name="tethered_notification_title" msgid="3146694234398202601">"တဆင့်ပြန်လည်လွှင့်ခြင်း သို့မဟုတ် ဟော့စပေါ့ ဖွင့်ထားသည်"</string>
<string name="tethered_notification_message" msgid="6857031760103062982">"အပြင်အဆင်ပြုလုပ်ရန် ပိုမိုသိနားလည်စေရန် တို့ထိပါ။"</string>
<string name="back_button_label" msgid="2300470004503343439">"နောက်သို့"</string>
<string name="next_button_label" msgid="1080555104677992408">"နောက်"</string>
@@ -1553,14 +1553,14 @@
<string name="gpsNotifMessage" msgid="1374718023224000702">"<xliff:g id="NAME">%1$s</xliff:g> (<xliff:g id="SERVICE">%2$s</xliff:g>)မှတောင်းခံသည်"</string>
<string name="gpsVerifYes" msgid="2346566072867213563">"ဟုတ်ကဲ့"</string>
<string name="gpsVerifNo" msgid="1146564937346454865">"မဟုတ်ပါ"</string>
- <string name="sync_too_many_deletes" msgid="5296321850662746890">"ပယ်ဖျက်မည့်ကန့်သတ်နှုန်းကျော်လွန်သည်"</string>
+ <string name="sync_too_many_deletes" msgid="5296321850662746890">"ပယ်ဖျက်မည့်ကန့်သတ်နှုန်းကျော်လွန်သည်"</string>
<string name="sync_too_many_deletes_desc" msgid="496551671008694245">"<xliff:g id="TYPE_OF_SYNC">%2$s</xliff:g>၊ account <xliff:g id="ACCOUNT_NAME">%3$s</xliff:g> အတွက် စုစုပေါင်း <xliff:g id="NUMBER_OF_DELETED_ITEMS">%1$d</xliff:g> အရာဖျက်ထားပါသည်။ သင်ဘာလုပ်ချင်ပါလဲ?"</string>
<string name="sync_really_delete" msgid="2572600103122596243">"ဤအရာများကိုဖျက်ပါ"</string>
<string name="sync_undo_deletes" msgid="2941317360600338602">"ဖျက်ပီးသည်များကို ပယ်ဖျက်ရန်"</string>
<string name="sync_do_nothing" msgid="3743764740430821845">"လက်ရှိ ဘာမှမလုပ်ရန်"</string>
- <string name="choose_account_label" msgid="5655203089746423927">"အကောင့် တစ်ခု ရွေးပါ"</string>
- <string name="add_account_label" msgid="2935267344849993553">"အကောင့် ထပ်ဖြည့်ပါ"</string>
- <string name="add_account_button_label" msgid="3611982894853435874">"အကောင့်ထပ်ထည့်ရန်"</string>
+ <string name="choose_account_label" msgid="5655203089746423927">"အကောင့် တစ်ခု ရွေးပါ"</string>
+ <string name="add_account_label" msgid="2935267344849993553">"အကောင့် ထပ်ဖြည့်ပါ"</string>
+ <string name="add_account_button_label" msgid="3611982894853435874">"အကောင့်ထပ်ထည့်ရန်"</string>
<string name="number_picker_increment_button" msgid="2412072272832284313">"တိုးရန်"</string>
<string name="number_picker_decrement_button" msgid="476050778386779067">"လျှော့ရန်"</string>
<string name="number_picker_increment_scroll_mode" msgid="3073101067441638428">"<xliff:g id="VALUE">%s</xliff:g> ကြာကြာ ဖိ ကိုင်ထားပါ"</string>
@@ -1580,15 +1580,15 @@
<string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Altခလုတ်"</string>
<string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"ပယ်ဖျက်ရန်ခလုတ်"</string>
<string name="keyboardview_keycode_delete" msgid="3337914833206635744">"ဖျက်ရန်ခလုတ်"</string>
- <string name="keyboardview_keycode_done" msgid="1992571118466679775">"ပြီးဆုံးသည့်ခလုတ်"</string>
+ <string name="keyboardview_keycode_done" msgid="1992571118466679775">"ပြီးဆုံးသည့်ခလုတ်"</string>
<string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"စနစ်ပြောင်းခြင်းခလုတ်"</string>
<string name="keyboardview_keycode_shift" msgid="2270748814315147690">"Shiftခလုတ်"</string>
<string name="keyboardview_keycode_enter" msgid="2985864015076059467">"Enterခလုတ်"</string>
<string name="activitychooserview_choose_application" msgid="2125168057199941199">"app တစ်ခုကို ရွေးရန်"</string>
<string name="activitychooserview_choose_application_error" msgid="8624618365481126668">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> ကို စတင်လို့ မရပါ"</string>
<string name="shareactionprovider_share_with" msgid="806688056141131819">"မျှဝေဖို့ ရွေးပါ"</string>
- <string name="shareactionprovider_share_with_application" msgid="5627411384638389738">"<xliff:g id="APPLICATION_NAME">%s</xliff:g>နှင့် မျှဝေပါမည်"</string>
- <string name="content_description_sliding_handle" msgid="415975056159262248">"ဆွဲယူနိုင်သည့် လက်ကိုင်။ ထိပါ & ကိုင်ထားပါ။"</string>
+ <string name="shareactionprovider_share_with_application" msgid="5627411384638389738">"<xliff:g id="APPLICATION_NAME">%s</xliff:g>နှင့် မျှဝေပါမည်"</string>
+ <string name="content_description_sliding_handle" msgid="415975056159262248">"ဆွဲယူနိုင်သည့် လက်ကိုင်။ ထိပါ & ကိုင်ထားပါ။"</string>
<string name="description_target_unlock_tablet" msgid="3833195335629795055">"သော့ဖွင့်ရန် ပွတ်ဆွဲပါ"</string>
<string name="keyboard_headset_required_to_hear_password" msgid="7011927352267668657">"စကားဝှက်ပြောဆိုမှုကို ကြားနိုင်ရန် မိုက်ခွက်ပါနားကြပ် တပ်ပြီး နားထောင်ပါ"</string>
<string name="keyboard_password_character_no_headset" msgid="2859873770886153678">"ဒေါ့"</string>
@@ -1599,21 +1599,21 @@
<string name="action_bar_home_subtitle_description_format" msgid="6985546530471780727">"%1$s ၊ %2$s ၊ %3$s"</string>
<string name="storage_internal" msgid="4891916833657929263">"စက်တွင်း သိုလှောင်ထားမှု"</string>
<string name="storage_sd_card" msgid="3282948861378286745">"SD ကဒ်"</string>
- <string name="storage_usb" msgid="3017954059538517278">"USBဖြင့် သိမ်းဆည်း"</string>
+ <string name="storage_usb" msgid="3017954059538517278">"USBဖြင့် သိမ်းဆည်း"</string>
<string name="extract_edit_menu_button" msgid="8940478730496610137">"ပြင်ဆင်ရန်"</string>
<string name="data_usage_warning_title" msgid="1955638862122232342">"ဒေတာအသုံးပြုမှုသတိပေးချက်"</string>
<string name="data_usage_warning_body" msgid="2814673551471969954">"ဆက်တင်နှင့်သုံးစွဲမှုကြည့်ရန်ထိပါ"</string>
- <string name="data_usage_3g_limit_title" msgid="4361523876818447683">"2G-3G ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
- <string name="data_usage_4g_limit_title" msgid="4609566827219442376">"4G ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
- <string name="data_usage_mobile_limit_title" msgid="557158376602636112">"ဆယ်လူလာ ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
- <string name="data_usage_wifi_limit_title" msgid="5803363779034792676">"ကြိုးမဲ့ ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
+ <string name="data_usage_3g_limit_title" msgid="4361523876818447683">"2G-3G ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
+ <string name="data_usage_4g_limit_title" msgid="4609566827219442376">"4G ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
+ <string name="data_usage_mobile_limit_title" msgid="557158376602636112">"ဆယ်လူလာ ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
+ <string name="data_usage_wifi_limit_title" msgid="5803363779034792676">"ကြိုးမဲ့ ဒေတာ ကန့်သတ်ချက် ပြည့်မီသွားပြီ"</string>
<string name="data_usage_limit_body" msgid="291731708279614081">"ကျန် စက်ဝန်း အတွက် ဒေတာကို ဆိုင်းငံ့ထား"</string>
<string name="data_usage_3g_limit_snoozed_title" msgid="7026739121138005231">"သတ်မှတ်ထားသော2G-3Gဒေတာအားကျော်လွန်နေသည်"</string>
<string name="data_usage_4g_limit_snoozed_title" msgid="1106562779311209039">"သတ်မှတ်ထားသော4Gဒေတာအားကျော်လွန်နေသည်"</string>
- <string name="data_usage_mobile_limit_snoozed_title" msgid="4941346653729943789">"ဆယ်လူလာ ကန့်သတ်ချက် ကျော်လွန်သွားပြီ"</string>
+ <string name="data_usage_mobile_limit_snoozed_title" msgid="4941346653729943789">"ဆယ်လူလာ ကန့်သတ်ချက် ကျော်လွန်သွားပြီ"</string>
<string name="data_usage_wifi_limit_snoozed_title" msgid="8743856006384825974">"သတ်မှတ်ဝိုင်ဖိုင်ဒေတာထက်ကျော်နေ"</string>
<string name="data_usage_limit_snoozed_body" msgid="7035490278298441767">"သက်မှတ်နှုန်းထက် <xliff:g id="SIZE">%s</xliff:g> ကျော်နေပါသည်"</string>
- <string name="data_usage_restricted_title" msgid="5965157361036321914">"နောက်ခံဒေတာ ကန့်သတ်ထားသည်"</string>
+ <string name="data_usage_restricted_title" msgid="5965157361036321914">"နောက်ခံဒေတာ ကန့်သတ်ထားသည်"</string>
<string name="data_usage_restricted_body" msgid="6741521330997452990">"ကန့်သတ်ထားမှု ဖျက်ရန် ထိလိုက်ပါ"</string>
<string name="ssl_certificate" msgid="6510040486049237639">"လုံခြံုမှုဆိုင်ရာ အသိအမှတ်ပြုလက်မှတ်"</string>
<string name="ssl_certificate_is_valid" msgid="6825263250774569373">"ဤအသိအမှတ်ပြုလက်မှတ်မှာ တရားဝင်သည်"</string>
@@ -1631,7 +1631,7 @@
<string name="sha1_fingerprint" msgid="7930330235269404581">"SHA-1 လက်ပွေ"</string>
<string name="activity_chooser_view_see_all" msgid="4292569383976636200">"အားလုံးကို ကြည့်ရန်"</string>
<string name="activity_chooser_view_dialog_title_default" msgid="4710013864974040615">"လှုပ်ရှားမှုကို ရွေးရန်"</string>
- <string name="share_action_provider_share_with" msgid="5247684435979149216">"...နှင့် မျှဝေရန်"</string>
+ <string name="share_action_provider_share_with" msgid="5247684435979149216">"...နှင့် မျှဝေရန်"</string>
<string name="list_delimeter" msgid="3975117572185494152">", "</string>
<string name="sending" msgid="3245653681008218030">"ပေးပို့နေစဉ်…"</string>
<string name="launchBrowserDefault" msgid="2057951947297614725">"ဘရောက်ဇာ ဖွင့်မည်လား။"</string>
@@ -1695,17 +1695,17 @@
<string name="kg_too_many_failed_password_attempts_dialog_message" msgid="7813713389422226531">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားရိုက်ပြီးပါပြီ။ \n\n <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ ပြန်လည်ကြိုးစားပါ"</string>
<string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="74089475965050805">"သင် ပုံစံဆွဲ သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ်မြောက် မအောင်မြင်ပါ။ \n\n<xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
<string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="1575557200627128949">"သင့်တက်ဘလက်အား သော့ဖွင့်ရန် မအောင်မြင်သော အကြိမ်ရေ <xliff:g id="NUMBER_0">%d</xliff:g> ကြိုးစားပြီးပါပြီ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မအောင်မြင်ပါက၊ တက်ဘလက်က စက်ရုံထွက် အခြေအနေကို ပြန်လည် ရောက်ရှိသွားမည်ဖြစ်ပြီး ဒေတာအားလုံး ဆုံးရှုံးသွားပါမည်။"</string>
- <string name="kg_failed_attempts_almost_at_wipe" product="tv" msgid="5621231220154419413">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။<xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်ပြီး အသုံးပြုသူ၏ အချက်အလက်များ ပျောက်သွားမည်ဖြစ်၏။"</string>
+ <string name="kg_failed_attempts_almost_at_wipe" product="tv" msgid="5621231220154419413">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။<xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ်ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်ပြီး အသုံးပြုသူ၏ အချက်အလက်များ ပျောက်သွားမည်ဖြစ်၏။"</string>
<string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="4051015943038199910">"သင့်ဖုန်းအား သော့ဖွင့်ရန် မအောင်မြင်သော အကြိမ်ရေ <xliff:g id="NUMBER_0">%d</xliff:g> ကြိုးစားပြီးပါပြီ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မအောင်မြင်ပါက၊ ဖုန်းက စက်ရုံထွက် အခြေအနေကို ပြန်လည် ရောက်ရှိသွားမည်ဖြစ်ပြီး ဒေတာအားလုံး ဆုံးရှုံးသွားပါမည်။"</string>
<string name="kg_failed_attempts_now_wiping" product="tablet" msgid="2072996269148483637">"သင့်တက်ဘလက် အား သော့ဖွင့်ရန် မအောင်မြင်သော အကြိမ်ရေ <xliff:g id="NUMBER">%d</xliff:g> ကြိုးစားပြီးပါပြီ။ တက်ဘလက်က စက်ရုံထွက် အခြေအနေကို ပြန်လည် ရောက်ရှိသွားပါတော့မည်။"</string>
- <string name="kg_failed_attempts_now_wiping" product="tv" msgid="4987878286750741463">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်၏။"</string>
+ <string name="kg_failed_attempts_now_wiping" product="tv" msgid="4987878286750741463">"တီဗွီဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် မှားယွင်းစွာ ကြိုးစားပြီးဖြစ်၏။ တီဗွီသည် စက်ရုံထုတ်အခြေအနေသို့ ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်၏။"</string>
<string name="kg_failed_attempts_now_wiping" product="default" msgid="4817627474419471518">"သင့်ဖုန်းအား သော့ဖွင့်ရန် မအောင်မြင်သော အကြိမ်ရေ <xliff:g id="NUMBER">%d</xliff:g> ကြိုးစားပြီးပါပြီ။ ဖုန်းက စက်ရုံထွက် အခြေအနေကို ပြန်လည် ရောက်ရှိသွားပါတော့မည်။"</string>
<string name="kg_failed_attempts_almost_at_login" product="tablet" msgid="3253575572118914370">"သင် ပုံဖော်၍သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> အကြိမ် မှန်ကန်စွာ မပြုလုပ်နိုင်ပါ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မမှန်ကန်ပါက သင့်တက်ဘလက်အား အီးမေးလ်အသုံးပြု၍ သော့ဖွင့်ရန် တောင်းဆိုပါလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
- <string name="kg_failed_attempts_almost_at_login" product="tv" msgid="4224651132862313471">"ပုံဖော်၍ သော့ဖွင့်ခြင်းအား သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားဆွဲပြီးဖြစ်၏။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အီးမေးအကောင့်အားသုံးလျက် သော့ဖွင့်ရန် ပြောလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ထပ်မံကြိုးစားပါ။"</string>
+ <string name="kg_failed_attempts_almost_at_login" product="tv" msgid="4224651132862313471">"ပုံဖော်၍ သော့ဖွင့်ခြင်းအား သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားဆွဲပြီးဖြစ်၏။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အီးမေးအကောင့်အားသုံးလျက် သော့ဖွင့်ရန် ပြောလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ထပ်မံကြိုးစားပါ။"</string>
<string name="kg_failed_attempts_almost_at_login" product="default" msgid="1437638152015574839">"သင် ပုံဖော်၍သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> အကြိမ် မှန်ကန်စွာ မပြုလုပ်နိုင်ပါ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မမှန်ကန်ပါက သင့်ဖုန်းအား အီးမေးလ်အသုံးပြု၍ သော့ဖွင့်ရန် တောင်းဆိုပါလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
<string name="kg_text_message_separator" product="default" msgid="4160700433287233771">" — "</string>
<string name="kg_reordering_delete_drop_target_text" msgid="7899202978204438708">"ဖယ်ရှားရန်"</string>
- <string name="safe_media_volume_warning" product="default" msgid="2276318909314492312">"အသံကို အကြံပြုထားသည့် ပမာဏထက် မြှင့်ပေးရမလား?\n\nအသံကို မြင့်သည့် အဆင့်မှာ ကြာရှည်စွာ နားထောင်ခြင်းက သင်၏ နားကို ထိခိုက်စေနိုင်သည်။"</string>
+ <string name="safe_media_volume_warning" product="default" msgid="2276318909314492312">"အသံကို အကြံပြုထားသည့် ပမာဏထက် မြှင့်ပေးရမလား?\n\nအသံကို မြင့်သည့် အဆင့်မှာ ကြာရှည်စွာ နားထောင်ခြင်းက သင်၏ နားကို ထိခိုက်စေနိုင်သည်။"</string>
<string name="continue_to_enable_accessibility" msgid="1626427372316070258">"လက်နှစ်ချောင်းကို ထိကိုင်ထားခြင်းဖြင့် သုံးစွဲနိုင်မှုကို ခွင့်ပြုပါ"</string>
<string name="accessibility_enabled" msgid="1381972048564547685">"သုံးစွဲခွင့် ကို ဖွင့်ထားသည်"</string>
<string name="enable_accessibility_canceled" msgid="3833923257966635673">"အသုံးပြုခွင့် ဖျက်လိုက်သည်"</string>
@@ -1713,7 +1713,7 @@
<string name="user_switching_message" msgid="2871009331809089783">"<xliff:g id="NAME">%1$s</xliff:g>သို့ ပြောင်းနေ…"</string>
<string name="owner_name" msgid="2716755460376028154">"ပိုင်ရှင်"</string>
<string name="error_message_title" msgid="4510373083082500195">"အမှား"</string>
- <string name="error_message_change_not_allowed" msgid="1347282344200417578">"ဒီအပြောင်းအလဲမျိုးကို သင့် စီမံအုပ်ချုပ်သူမှ ခွင့်မပြုပါ"</string>
+ <string name="error_message_change_not_allowed" msgid="1347282344200417578">"ဒီအပြောင်းအလဲမျိုးကို သင့် စီမံအုပ်ချုပ်သူမှ ခွင့်မပြုပါ"</string>
<string name="app_not_found" msgid="3429141853498927379">"ဤလုပ်ဆောင်ချက်ကို ပြုလုပ်ပေးမည့် အပလီကေးရှင်း မရှိပါ။"</string>
<string name="revoke" msgid="5404479185228271586">"ထားတော့"</string>
<string name="mediasize_iso_a0" msgid="1994474252931294172">"အိုက်အက်စ်အို အေ ဝ"</string>
@@ -1832,16 +1832,16 @@
<string name="item_is_selected" msgid="949687401682476608">"<xliff:g id="ITEM">%1$s</xliff:g> ခုရွေးချယ်ထားပြီး"</string>
<string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ကို ဖျက်ပြီးပါပြီ"</string>
<string name="managed_profile_label_badge" msgid="2355652472854327647">"အလုပ် <xliff:g id="LABEL">%1$s</xliff:g>"</string>
- <string name="lock_to_app_toast" msgid="7570091317001980053">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန်၊ နောက်သို့ နှင့် ခြုံကြည့်မှု ခလုတ်များကို တစ်ချိန်တည်း ထိကိုင်ထားပါ။"</string>
- <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန် ခြုံကြည့်မှု ခလုတ်ကို ထိကိုင်ထားပါ။"</string>
- <string name="lock_to_app_toast_locked" msgid="8739004135132606329">"မျက်နှာပြင်ကို ပင်ထိုးထားသည်။ ပင်ထိုးထားမှု ဖြုတ်ခြင်းကို သင့် အဖွဲ့အစည်းက ခွင့် မပြုပါ။"</string>
+ <string name="lock_to_app_toast" msgid="7570091317001980053">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန်၊ နောက်သို့ နှင့် ခြုံကြည့်မှု ခလုတ်များကို တစ်ချိန်တည်း ထိကိုင်ထားပါ။"</string>
+ <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန် ခြုံကြည့်မှု ခလုတ်ကို ထိကိုင်ထားပါ။"</string>
+ <string name="lock_to_app_toast_locked" msgid="8739004135132606329">"မျက်နှာပြင်ကို ပင်ထိုးထားသည်။ ပင်ထိုးထားမှု ဖြုတ်ခြင်းကို သင့် အဖွဲ့အစည်းက ခွင့် မပြုပါ။"</string>
<string name="lock_to_app_start" msgid="6643342070839862795">"မျက်နှာပြင်ကို ပင်ထိုးထား"</string>
<string name="lock_to_app_exit" msgid="8598219838213787430">"မျက်နှာပြင် ပင်ထိုးမှု ဖြတ်လိုက်ပြီ"</string>
- <string name="lock_to_app_unlock_pin" msgid="2552556656504331634">"ပင်မဖြုတ်မီမှာ PIN ကို မေးကြည့်ရန်"</string>
- <string name="lock_to_app_unlock_pattern" msgid="4182192144797225137">"ပင်မဖြုတ်မီမှာ သော့ဖွင့် ရေးဆွဲမှုပုံစံကို မေးကြည့်ရန်"</string>
- <string name="lock_to_app_unlock_password" msgid="6380979775916974414">"ပင်မဖြုတ်မီမှာ စကားဝှက်ကို မေးကြည့်ရန်"</string>
- <string name="battery_saver_description" msgid="1960431123816253034">"ဘက်ထရီသက်တမ်း ကြာရှည်ခံရန်၊ ဘက်ထရီအားထိန်းသည် သင့်ကိရိယာ၏ ဆောင်ရွက်ချက်ကို လျှော့ပေးပြီး တုန်ခါမှု၊ တည်နေရာဝန်ဆောင်မှုများနှင့်၊ နောက်ခံဒေတာအများစုကို ကန့်သတ်ပေး၏။ စင့်လုပ်ပေးရလေ့ရှိသည့် အီးမေး၊ စာပို့ခြင်းနှင့်၊ အခြားအပလီကေးရှင်းများကို ၎င်းတို့အား သင် ဖွင့်မှသာ အဆင့်မြှင့်မွမ်းမံမည်ဖြစ်၏။ \n\n ကိရိယာအား အားသွင်းနေစဉ် ဘက်ထရီအားထိန်းအား အလိုအလျောက် ပိတ်ထားသည်။"</string>
- <string name="downtime_condition_summary" msgid="8761776337475705749">"သင်၏ စက်ရပ်ချိန် <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> မှာ ပြီးဆုံးသည့် အထိ။"</string>
+ <string name="lock_to_app_unlock_pin" msgid="2552556656504331634">"ပင်မဖြုတ်မီမှာ PIN ကို မေးကြည့်ရန်"</string>
+ <string name="lock_to_app_unlock_pattern" msgid="4182192144797225137">"ပင်မဖြုတ်မီမှာ သော့ဖွင့် ရေးဆွဲမှုပုံစံကို မေးကြည့်ရန်"</string>
+ <string name="lock_to_app_unlock_password" msgid="6380979775916974414">"ပင်မဖြုတ်မီမှာ စကားဝှက်ကို မေးကြည့်ရန်"</string>
+ <string name="battery_saver_description" msgid="1960431123816253034">"ဘက်ထရီသက်တမ်း ကြာရှည်ခံရန်၊ ဘက်ထရီအားထိန်းသည် သင့်ကိရိယာ၏ ဆောင်ရွက်ချက်ကို လျှော့ပေးပြီး တုန်ခါမှု၊ တည်နေရာဝန်ဆောင်မှုများနှင့်၊ နောက်ခံဒေတာအများစုကို ကန့်သတ်ပေး၏။ စင့်လုပ်ပေးရလေ့ရှိသည့် အီးမေး၊ စာပို့ခြင်းနှင့်၊ အခြားအပလီကေးရှင်းများကို ၎င်းတို့အား သင် ဖွင့်မှသာ အဆင့်မြှင့်မွမ်းမံမည်ဖြစ်၏။ \n\n ကိရိယာအား အားသွင်းနေစဉ် ဘက်ထရီအားထိန်းအား အလိုအလျောက် ပိတ်ထားသည်။"</string>
+ <string name="downtime_condition_summary" msgid="8761776337475705749">"သင်၏ စက်ရပ်ချိန် <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> မှာ ပြီးဆုံးသည့် အထိ။"</string>
<string name="downtime_condition_line_one" msgid="8762708714645352010">"သင့်ကျချိန်အဆုံးအထိ"</string>
<plurals name="zen_mode_duration_minutes_summary">
<item quantity="one" msgid="3177683545388923234">"တစ်မိနစ်ကြာ (<xliff:g id="FORMATTEDTIME">%2$s</xliff:g>အထိ)"</item>
@@ -1858,13 +1858,13 @@
<!-- String.format failed for translation -->
<!-- no translation found for zen_mode_duration_hours:other (5408537517529822157) -->
<string name="zen_mode_until" msgid="7336308492289875088">"<xliff:g id="FORMATTEDTIME">%1$s</xliff:g>အထိ"</string>
- <string name="zen_mode_forever" msgid="4316804956488785559">"အကန့်အသတ်မရှိစွာ"</string>
+ <string name="zen_mode_forever" msgid="4316804956488785559">"အကန့်အသတ်မရှိစွာ"</string>
<string name="toolbar_collapse_description" msgid="2821479483960330739">"ခေါက်ရန်"</string>
<string name="zen_mode_next_alarm_summary" msgid="5915140424683747372">"နောက်ထပ် <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> ၌နိုးစက်အထိ"</string>
<string name="zen_mode_next_alarm_line_one" msgid="5537042951553420916">"နောက်ထပ်နိုးစက်အထိ"</string>
<string name="muted_by" msgid="6147073845094180001">"<xliff:g id="THIRD_PARTY">%1$s</xliff:g> အသံပိတ်သည်"</string>
- <string name="system_error_wipe_data" msgid="6608165524785354962">"သင့်ကိရိယာအတွင်းပိုင်းတွင် ပြဿနာရှိနေပြီး၊ မူလစက်ရုံထုတ်အခြေအနေအဖြစ် ပြန်လည်ရယူနိုင်သည်အထိ အခြေအနေမတည်ငြိမ်နိုင်ပါ။"</string>
- <string name="system_error_manufacturer" msgid="8086872414744210668">"သင့်ကိရိယာအတွင်းပိုင်းတွင် ပြဿနာရှိနေ၏။ အသေးစိတ်သိရန်အတွက် ပစ္စည်းထုတ်လုပ်သူအား ဆက်သွယ်ပါ။"</string>
+ <string name="system_error_wipe_data" msgid="6608165524785354962">"သင့်ကိရိယာအတွင်းပိုင်းတွင် ပြဿနာရှိနေပြီး၊ မူလစက်ရုံထုတ်အခြေအနေအဖြစ် ပြန်လည်ရယူနိုင်သည်အထိ အခြေအနေမတည်ငြိမ်နိုင်ပါ။"</string>
+ <string name="system_error_manufacturer" msgid="8086872414744210668">"သင့်ကိရိယာအတွင်းပိုင်းတွင် ပြဿနာရှိနေ၏။ အသေးစိတ်သိရန်အတွက် ပစ္စည်းထုတ်လုပ်သူအား ဆက်သွယ်ပါ။"</string>
<string name="stk_cc_ussd_to_dial" msgid="5202342984749947872">"DIAL တောင်းဆိုချက်အရ USSD တောင်းဆိုချက်အား ပြင်ဆင်ထား၏။"</string>
<string name="stk_cc_ussd_to_ss" msgid="2345360594181405482">"SS တောင်းဆိုချက် အရ USSD တောင်းဆိုချက်အား ပြင်ဆင်ထား၏။"</string>
<string name="stk_cc_ussd_to_ussd" msgid="7466087659967191653">"USSD တောင်းဆိုချက် အသစ်အရ USSD တောင်းဆိုချက်အား ပြင်ဆင်ထား၏။"</string>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index cdbee61..926b53e 100755
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -1952,4 +1952,11 @@
<dimen name="config_mediaMetadataBitmapMaxSize">320dp</dimen>
<string translatable="false" name="prohibit_manual_network_selection_in_gobal_mode">false</string>
+
+ <!-- An array of CDMA roaming indicators which means international roaming -->
+ <integer-array translatable="false" name="config_cdma_international_roaming_indicators" />
+
+
+ <!-- set the system language as value of EF LI/EF PL -->
+ <bool name="config_use_sim_language_file">true</bool>
</resources>
diff --git a/core/res/res/values/dimens_material.xml b/core/res/res/values/dimens_material.xml
index f7ebbe4..dd1f815 100644
--- a/core/res/res/values/dimens_material.xml
+++ b/core/res/res/values/dimens_material.xml
@@ -87,9 +87,9 @@
<dimen name="floating_window_margin_bottom">32dp</dimen>
<!-- Elevation when button is pressed -->
- <dimen name="button_elevation_material">1dp</dimen>
+ <dimen name="button_elevation_material">4dp</dimen>
<!-- Z translation to apply when button is pressed -->
- <dimen name="button_pressed_z_material">2dp</dimen>
+ <dimen name="button_pressed_z_material">6dp</dimen>
<!-- Default insets (outer padding) around buttons -->
<dimen name="button_inset_vertical_material">6dp</dimen>
<dimen name="button_inset_horizontal_material">@dimen/control_inset_material</dimen>
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index a9123d1..e861ab2 100755
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -2138,5 +2138,7 @@
<java-symbol type="string" name="system_error_wipe_data" />
<java-symbol type="string" name="system_error_manufacturer" />
<java-symbol type="dimen" name="fast_scroller_minimum_touch_target" />
+ <java-symbol type="array" name="config_cdma_international_roaming_indicators" />
+ <java-symbol type="bool" name="config_use_sim_language_file" />
</resources>
diff --git a/data/keyboards/Vendor_046d_Product_b501.kl b/data/keyboards/Vendor_046d_Product_b501.kl
new file mode 100644
index 0000000..496ddc3
--- /dev/null
+++ b/data/keyboards/Vendor_046d_Product_b501.kl
@@ -0,0 +1,65 @@
+# Copyright (C) 2014 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Logitech Bluetooth wireless gamepad (RedHawk)
+
+key 304 BUTTON_A
+key 305 BUTTON_B
+key 307 BUTTON_X
+key 308 BUTTON_Y
+key 310 BUTTON_L1
+key 311 BUTTON_R1
+key 312 BUTTON_L2
+key 313 BUTTON_R2
+
+key 314 BUTTON_SELECT
+key 315 BUTTON_START
+key 316 BUTTON_MODE
+key 317 BUTTON_THUMBL
+key 318 BUTTON_THUMBR
+
+key 103 DPAD_UP
+key 105 DPAD_LEFT
+key 106 DPAD_RIGHT
+key 108 DPAD_DOWN
+key 353 DPAD_CENTER
+
+key 113 VOLUME_MUTE
+key 114 VOLUME_DOWN
+key 115 VOLUME_UP
+key 152 POWER
+key 163 MEDIA_NEXT
+key 164 MEDIA_PLAY_PAUSE
+key 165 MEDIA_PREVIOUS
+
+key 158 BACK
+key 172 HOME
+
+key 217 SEARCH
+key 580 APP_SWITCH
+key 582 ASSIST
+
+axis 0x00 X
+axis 0x01 Y
+axis 0x02 Z
+axis 0x05 RZ
+axis 0x09 RTRIGGER
+axis 0x0a LTRIGGER
+axis 0x10 HAT_X
+axis 0x11 HAT_Y
+
+led 0x00 CONTROLLER_1
+led 0x01 CONTROLLER_2
+led 0x02 CONTROLLER_3
+led 0x03 CONTROLLER_4
diff --git a/data/keyboards/Vendor_1532_Product_0900.kl b/data/keyboards/Vendor_1532_Product_0900.kl
new file mode 100644
index 0000000..c2fc1b4
--- /dev/null
+++ b/data/keyboards/Vendor_1532_Product_0900.kl
@@ -0,0 +1,42 @@
+# Copyright (C) 2014 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Razer Serval
+
+key 304 BUTTON_A
+key 305 BUTTON_B
+key 307 BUTTON_X
+key 308 BUTTON_Y
+key 310 BUTTON_L1
+key 311 BUTTON_R1
+key 316 BUTTON_MODE
+key 317 BUTTON_THUMBL
+key 318 BUTTON_THUMBR
+
+key 158 BACK
+key 172 HOME
+
+axis 0x00 X
+axis 0x01 Y
+axis 0x02 Z
+axis 0x05 RZ
+axis 0x09 RTRIGGER
+axis 0x0a LTRIGGER
+axis 0x10 HAT_X
+axis 0x11 HAT_Y
+
+led 0x00 CONTROLLER_1
+led 0x01 CONTROLLER_2
+led 0x02 CONTROLLER_3
+led 0x03 CONTROLLER_4
diff --git a/docs/html/guide/topics/manifest/uses-feature-element.jd b/docs/html/guide/topics/manifest/uses-feature-element.jd
index 775c424..59bf71c 100644
--- a/docs/html/guide/topics/manifest/uses-feature-element.jd
+++ b/docs/html/guide/topics/manifest/uses-feature-element.jd
@@ -560,7 +560,7 @@
<td></td>
</tr>
<tr>
- <td rowspan="12">Camera</td>
+ <td rowspan="10">Camera</td>
<td><code>android.hardware.camera</code></td>
<td>The application uses the device's camera. If the device supports
multiple cameras, the application uses the camera that facing
@@ -609,14 +609,6 @@
<td><code>android.hardware.camera.capability.raw</code></td>
<td>The application uses a a camera device with the <code>RAW</code> capability.</td>
</tr>
-<tr>
- <td><code>android.hardware.camera.capability.burst_capture</code></td>
- <td>The application uses a a camera device with the <code>BURST_CAPTURE</code> capability.</td>
-</tr>
-<tr>
- <td><code>android.hardware.camera.capability.read_sensor_settings</code></td>
- <td>The application uses a a camera device with the <code>READ_SENSOR_SETTINGS</code> capability.</td>
-</tr>
<tr>
<td>Infrared</td>
diff --git a/docs/html/samples/admin.jd b/docs/html/samples/admin.jd
new file mode 100644
index 0000000..c6637d8
--- /dev/null
+++ b/docs/html/samples/admin.jd
@@ -0,0 +1,11 @@
+page.title=Admin
+@jd:body
+
+
+<div id="samples" class="admin">
+</div>
+
+
+<script>
+ $(document).ready(showSamples);
+</script>
diff --git a/docs/html/samples/new/index.jd b/docs/html/samples/new/index.jd
index ba75072..279b910 100644
--- a/docs/html/samples/new/index.jd
+++ b/docs/html/samples/new/index.jd
@@ -2,19 +2,18 @@
@jd:body
-<p>The following code samples were recently published for the L Developer Preview. You can
+<p>The following code samples were recently published. You can
download them in the Android SDK Manager under the <b>SDK Samples</b> component
-for the L Developer Preview.</p>
+for API 21.</p>
<p class="note">
- <strong>Note:</strong> At this time, the downloadable projects are designed
+ <strong>Note:</strong> The downloadable projects are designed
for use with Gradle and Android Studio.
</p>
-
<!-- NOTE TO EDITORS: add most recent samples first -->
-<h3 id="MediaBrowserService">Media Browser Service</h3>
+<h3 id="MediaBrowserService"><a href="/samples/MediaBrowserService/index.html">Media Browser Service</a></h3>
<p>
This sample is a simple audio media app that exposes its media
@@ -29,10 +28,8 @@
href="http://android.com/auto">Android Auto</a>.
</p>
-<p><a href="http://github.com/googlesamples/android-MediaBrowserService">Get it on GitHub</a></p>
-
-<h3 id="MessagingService">Messaging Service</h3>
+<h3 id="MessagingService"><a href="/samples/MessagingService/index.html">Messaging Service</a></h3>
<p>
This sample shows a simple service that sends notifications using
@@ -46,10 +43,8 @@
href="http://android.com/auto">Android Auto</a>.
</p>
-<p><a href="http://github.com/googlesamples/android-MessagingService">Get it on GitHub</a></p>
-
-<h3 id="SpeedTracker">Speed Tracker (Wear)</h3>
+<h3 id="SpeedTracker"><a href="/samples/SpeedTracker/index.html">Speed Tracker (Wear)</a></h3>
<p>
This sample uses the FusedLocation APIs of Google Play Services on Android Wear
@@ -62,10 +57,8 @@
made of those coordinates on a map on the phone.
</p>
-<p><a href="http://github.com/googlesamples/android-SpeedTracker">Get it on GitHub</a></p>
-
-<h3 id="AppRestrictionSchema">AppRestrictionSchema</h3>
+<h3 id="AppRestrictionSchema"><a href="/samples/AppRestrictionSchema/index.html">AppRestrictionSchema</a></h3>
<p>
This sample shows how to use app restrictions. This application has one boolean
@@ -74,29 +67,23 @@
AppRestrictionEnforcer sample to toggle the restriction.
</p>
-<p><a href="http://github.com/googlesamples/android-AppRestrictionSchema">Get it on GitHub</a></p>
-
-<h3 id="AppRestrictionEnforcer">AppRestrictionEnforcer</h3>
+<h3 id="AppRestrictionEnforcer"><a href="/samples/AppRestrictionEnforcer/index.html">AppRestrictionEnforcer</a></h3>
<p>
This sample demonstrates how to set restrictions to other apps as a profile owner.
Use AppRestrictionSchema sample as a app with available restrictions.
</p>
-<p><a href="http://github.com/googlesamples/android-AppRestrictionEnforcer">Get it on GitHub</a></p>
-
-<h3 id="DocumentCentricRelinquishIdentity">DocumentCentricRelinquishIdentity</h3>
+<h3 id="DocumentCentricRelinquishIdentity"><a href="/samples/DocumentCentricRelinquishIdentity/index.html">DocumentCentricRelinquishIdentity</a></h3>
<p>
This sample shows how to relinquish identity to activities above it in the task stack.
</p>
-<p><a href="http://github.com/googlesamples/android-DocumentCentricRelinquishIdentity">Get it on GitHub</a></p>
-
-<h3 id="DocumentCentricApps">DocumentCentricApps</h3>
+<h3 id="DocumentCentricApps"><a href="/samples/DocumentCentricApps/index.html">DocumentCentricApps</a></h3>
<p>
This sample shows the basic usage of the new "Document Centric Apps" API.
@@ -105,10 +92,8 @@
created for every new document in the overview menu.
</p>
-<p><a href="http://github.com/googlesamples/android-DocumentCentricApps">Get it on GitHub</a></p>
-
-<h3 id="HdrViewfinder">HdrViewfinder</h3>
+<h3 id="HdrViewfinder"><a href="/samples/HdrViewfinder/index.html">HdrViewfinder</a></h3>
<p>
This demo implements a real-time high-dynamic-range camera viewfinder, by alternating
@@ -116,10 +101,8 @@
compositing together the latest two frames whenever a new frame is captured.
</p>
-<p><a href="http://github.com/googlesamples/android-HdrViewfinder">Get it on GitHub</a></p>
-
-<h3 id="Interpolator">Interpolator</h3>
+<h3 id="Interpolator"><a href="/samples/Interpolator/index.html">Interpolator</a></h3>
<p>
This sample demonstrates the use of animation interpolators and path animations for
@@ -127,10 +110,8 @@
view (scale X and Y) along a path.
</p>
-<p><a href="http://github.com/googlesamples/android-Interpolator">Get it on GitHub</a></p>
-
-<h3 id="DrawableTinting">DrawableTinting</h3>
+<h3 id="DrawableTinting"><a href="/samples/DrawableTinting/index.html">DrawableTinting</a></h3>
<p>Sample that shows applying tinting and color filters to Drawables both programmatically
and as Drawable resources in XML.</p>
@@ -141,54 +122,43 @@
with a reference to a color and a PorterDuff blend mode. The color and blend mode can be
changed from the UI to see the effect of different options.</p>
-<p><a href="http://github.com/googlesamples/android-DrawableTinting">Get it on GitHub</a></p>
-
-<h3 id="LNotifications">LNotifications</h3>
+<h3 id="LNotifications"><a href="/samples/LNotifications/index.html">LNotifications</a></h3>
<p>
This sample demonstrates how new features for notifications introduced in Android 5.0
are used such as Heads-Up notifications, visibility, people, category and priority
metadata. </p>
-<p><a href="http://github.com/googlesamples/android-LNotifications">Get it on GitHub</a></p>
-<h3 id="CardView">CardView</h3>
+<h3 id="CardView"><a href="/samples/CardView/index.html">CardView</a></h3>
<p>
This sample demonstrates how to use the CardView UI widget introduced in Android 5.0, using the support library for backward compatibility.
</p>
-<p><a href="http://github.com/googlesamples/android-CardView">Get it on GitHub</a></p>
-
-<h3 id="RecyclerView">RecyclerView</h3>
+<h3 id="RecyclerView"><a href="/samples/RecyclerView/index.html">RecyclerView</a></h3>
<p>
Demonstration of using RecyclerView with a LayoutManager to create a vertical ListView.
</p>
-<p><a href="http://github.com/googlesamples/android-RecyclerView">Get it on GitHub</a></p>
-
-<h3 id="RevealEffectBasic">RevealEffectBasic</h3>
+<h3 id="RevealEffectBasic"><a href="/samples/RevealEffectBasic/index.html">RevealEffectBasic</a></h3>
<p>
A sample demonstrating how to perform a reveal effect for UI elements within the Material Design framework.
</p>
-<p><a href="http://github.com/googlesamples/android-RevealEffectBasic">Get it on GitHub</a></p>
-
-<h3 id="FloatingActionButtonBasic">FloatingActionButtonBasic</h3>
+<h3 id="FloatingActionButtonBasic"><a href="/samples/FloatingActionButtonBasic/index.html">FloatingActionButtonBasic</a></h3>
<p>
This sample shows the two sizes of Floating Action Buttons and how to interact with
them.
</p>
-<p><a href="http://github.com/googlesamples/android-FloatingActionButtonBasic">Get it on GitHub</a></p>
-
<!--
<h3 id="">SampleName</h3>
@@ -205,36 +175,15 @@
</p>
-->
-
-<h3 id="NavigationDrawerSample">NavigationDrawerSample</h3>
-<!--
-<div class="figure" style="width:220px">
- <img src="" srcset="@2x.png 2x" alt="" height="375" />
- <p class="img-caption">
- <strong>Figure n.</strong> Single sentence summarizing the figure.
- </p>
-</div>
--->
-
-<p>
-This sample illustrates a common usage of the Android support library's
-{@link android.support.v4.widget.DrawerLayout} widget.
-</p>
-
-<p><a href="http://github.com/googlesamples/android-NavigationDrawer">Get it on GitHub</a></p>
-
-
-<h3 id="JobSchedulerSample">JobSchedulerSample</h3>
+<h3 id="JobSchedulerSample"><a href="/samples/JobScheduler/index.html">JobScheduler</a></h3>
<p>
This sample app allows the user to schedule jobs through the UI, and shows
visual cues when the jobs are executed.
</p>
-<p><a href="http://github.com/googlesamples/android-JobScheduler">Get it on GitHub</a></p>
-
-<h3 id="AndroidTVLeanbackSample">AndroidTVLeanbackSample</h3>
+<h3 id="AndroidTVLeanbackSample"><a href="https://github.com/googlesamples/androidtv-leanback">AndroidTVLeanbackSample</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -248,10 +197,7 @@
This sample demonstrates use of the Android TV Leanback Support Library.
</p>
-<p><a href="http://github.com/googlesamples/androidtv-Leanback">Get it on GitHub</a></p>
-
-
-<h3 id="Visual-Game-Controller">Visual-Game-Controller</h3>
+<h3 id="Visual-Game-Controller"><a href="https://github.com/googlesamples/androidtv-VisualGameController">Visual-Game-Controller</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -265,10 +211,8 @@
This sample displays events received from a game controller shown on the screen.
</p>
-<p><a href="http://github.com/googlesamples/androidtv-VisualGameController">Get it on GitHub</a></p>
-
-<h3 id="GameControllerSample">GameControllerSample</h3>
+<h3 id="GameControllerSample"><a href="https://github.com/googlesamples/androidtv-GameController/">GameControllerSample</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -283,10 +227,8 @@
handling.
</p>
-<p><a href="http://github.com/googlesamples/androidtv-GameController">Get it on GitHub</a></p>
-
-<h3 id="ClippingBasic">ClippingBasic</h3>
+<h3 id="ClippingBasic"><a href="/samples/ClippingBasic/index.html">ClippingBasic</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -300,19 +242,17 @@
This sample demonstrates clipping on a {@link android.view.View}.
</p>
-<p><a href="http://github.com/googlesamples/android-ClippingBasic">Get it on GitHub</a></p>
-
<div class="figure" style="width:220px">
<img src="{@docRoot}samples/images/JobSchedulerSample.png"
srcset="{@docRoot}samples/images/JobSchedulerSample@2x.png 2x"
alt="" height="375" />
<p class="img-caption">
- <strong>Figure 3.</strong> The JobSchedulerSample sample app.
+ <strong>Figure 1.</strong> The JobSchedulerSample sample app.
</p>
</div>
-<h3 id="ElevationDrag">ElevationDrag</h3>
+<h3 id="ElevationDrag"><a href="/samples/ElevationDrag/index.html">ElevationDrag</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -326,10 +266,8 @@
Elevation and z-translation are used to render the shadows. The views are
clipped using different outlines.</p>
-<p><a href="http://github.com/googlesamples/android-ElevationDrag">Get it on GitHub</a></p>
-
-<h3 id="ElevationBasic">ElevationBasic</h3>
+<h3 id="ElevationBasic"><a href="/samples/ElevationBasic/index.html">ElevationBasic</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -348,10 +286,8 @@
<code>setTranslationZ()</code>.</li>
</ul>
-<p><a href="http://github.com/googlesamples/android-ElevationBasic">Get it on GitHub</a></p>
-
-<h3 id="ActivitySceneTransitionBasic">ActivitySceneTransitionBasic</h3>
+<h3 id="ActivitySceneTransitionBasic"><a href="/samples/ActivitySceneTransitionBasic/index.html">ActivitySceneTransitionBasic</a></h3>
<div class="figure" style="width:220px">
<img src="{@docRoot}samples/images/ActivitySceneTransitionBasic.png"
srcset="{@docRoot}samples/images/ActivitySceneTransitionBasic@2x.png 2x"
@@ -366,10 +302,8 @@
of <code>moveImage</code> and <code>changeBounds</code> to nicely transition
from a grid of images to an activity with a large image and detail text. </p>
-<p><a href="http://github.com/googlesamples/android-ActivitySceneTransition">Get it on GitHub</a></p>
-
-<h3 id="Camera2Video">Camera2Video</h3>
+<h3 id="Camera2Video"><a href="/samples/Camera2Video/index.html">Camera2Video</a></h3>
<!--
<div class="figure" style="width:220px">
<img src="" srcset="@2x.png 2x" alt="" height="375" />
@@ -381,10 +315,8 @@
<p>This sample demonstrates how to record video using the Camera2 API.</p>
-<p><a href="http://github.com/googlesamples/android-Camera2Video">Get it on GitHub</a></p>
-
-<h3 id="Camera2Basic">Camera2Basic</h3>
+<h3 id="Camera2Basic"><a href="/samples/Camera2Basic/index.html">Camera2Basic</a></h3>
<!--
<div class="figure" style="width:220px">
@@ -398,16 +330,14 @@
<p>This sample demonstrates the basic use of the Camera2 API. The sample code
demonstrates how you can display camera preview and take pictures.</p>
-<p><a href="http://github.com/googlesamples/android-Camera2Basic">Get it on GitHub</a></p>
-
-<h3 id="BasicManagedProfile">BasicManagedProfile</h3>
+<h3 id="BasicManagedProfile"><a href="/samples/BasicManagedProfile/index.html">BasicManagedProfile</a></h3>
<div class="figure" style="width:220px">
<img src="{@docRoot}samples/images/BasicManagedProfile.png"
srcset="{@docRoot}samples/images/BasicManagedProfile@2x.png 2x"
alt="" height="375" />
<p class="img-caption">
- <strong>Figure 1.</strong> The BasicManagedProfile sample app.
+ <strong>Figure 3.</strong> The BasicManagedProfile sample app.
</p>
</div>
@@ -422,5 +352,3 @@
<p class="note"><strong>Note:</strong> There can be only one managed profile on
a device at a time.</p>
-<p><a href="http://github.com/googlesamples/android-BasicManagedProfile">Get it on GitHub</a></p>
-
diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp
index aa32541..75bd067 100644
--- a/libs/hwui/renderthread/CanvasContext.cpp
+++ b/libs/hwui/renderthread/CanvasContext.cpp
@@ -123,8 +123,8 @@
setSurface(window);
}
-void CanvasContext::pauseSurface(ANativeWindow* window) {
- stopDrawing();
+bool CanvasContext::pauseSurface(ANativeWindow* window) {
+ return mRenderThread.removeFrameCallback(this);
}
// TODO: don't pass viewport size, it's automatic via EGL
diff --git a/libs/hwui/renderthread/CanvasContext.h b/libs/hwui/renderthread/CanvasContext.h
index 435244e..0cc2c7c 100644
--- a/libs/hwui/renderthread/CanvasContext.h
+++ b/libs/hwui/renderthread/CanvasContext.h
@@ -67,7 +67,7 @@
bool initialize(ANativeWindow* window);
void updateSurface(ANativeWindow* window);
- void pauseSurface(ANativeWindow* window);
+ bool pauseSurface(ANativeWindow* window);
bool hasSurface() { return mNativeWindow.get(); }
void setup(int width, int height, const Vector3& lightCenter, float lightRadius,
diff --git a/libs/hwui/renderthread/RenderProxy.cpp b/libs/hwui/renderthread/RenderProxy.cpp
index 5d55ea6..6d063a4 100644
--- a/libs/hwui/renderthread/RenderProxy.cpp
+++ b/libs/hwui/renderthread/RenderProxy.cpp
@@ -156,15 +156,14 @@
}
CREATE_BRIDGE2(pauseSurface, CanvasContext* context, ANativeWindow* window) {
- args->context->pauseSurface(args->window);
- return NULL;
+ return (void*) args->context->pauseSurface(args->window);
}
-void RenderProxy::pauseSurface(const sp<ANativeWindow>& window) {
+bool RenderProxy::pauseSurface(const sp<ANativeWindow>& window) {
SETUP_TASK(pauseSurface);
args->context = mContext;
args->window = window.get();
- postAndWait(task);
+ return (bool) postAndWait(task);
}
CREATE_BRIDGE7(setup, CanvasContext* context, int width, int height,
diff --git a/libs/hwui/renderthread/RenderProxy.h b/libs/hwui/renderthread/RenderProxy.h
index 4989b14..fd1fe05 100644
--- a/libs/hwui/renderthread/RenderProxy.h
+++ b/libs/hwui/renderthread/RenderProxy.h
@@ -69,7 +69,7 @@
ANDROID_API bool initialize(const sp<ANativeWindow>& window);
ANDROID_API void updateSurface(const sp<ANativeWindow>& window);
- ANDROID_API void pauseSurface(const sp<ANativeWindow>& window);
+ ANDROID_API bool pauseSurface(const sp<ANativeWindow>& window);
ANDROID_API void setup(int width, int height, const Vector3& lightCenter, float lightRadius,
uint8_t ambientShadowAlpha, uint8_t spotShadowAlpha);
ANDROID_API void setOpaque(bool opaque);
diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp
index f887103..38cb4cd 100644
--- a/libs/hwui/renderthread/RenderThread.cpp
+++ b/libs/hwui/renderthread/RenderThread.cpp
@@ -314,9 +314,11 @@
mPendingRegistrationFrameCallbacks.insert(callback);
}
-void RenderThread::removeFrameCallback(IFrameCallback* callback) {
- mFrameCallbacks.erase(callback);
- mPendingRegistrationFrameCallbacks.erase(callback);
+bool RenderThread::removeFrameCallback(IFrameCallback* callback) {
+ size_t erased;
+ erased = mFrameCallbacks.erase(callback);
+ erased |= mPendingRegistrationFrameCallbacks.erase(callback);
+ return erased;
}
void RenderThread::pushBackFrameCallback(IFrameCallback* callback) {
diff --git a/libs/hwui/renderthread/RenderThread.h b/libs/hwui/renderthread/RenderThread.h
index c461f3a..4126d02 100644
--- a/libs/hwui/renderthread/RenderThread.h
+++ b/libs/hwui/renderthread/RenderThread.h
@@ -80,7 +80,7 @@
// Mimics android.view.Choreographer
void postFrameCallback(IFrameCallback* callback);
- void removeFrameCallback(IFrameCallback* callback);
+ bool removeFrameCallback(IFrameCallback* callback);
// If the callback is currently registered, it will be pushed back until
// the next vsync. If it is not currently registered this does nothing.
void pushBackFrameCallback(IFrameCallback* callback);
diff --git a/packages/Keyguard/res/values-km-rKH/strings.xml b/packages/Keyguard/res/values-km-rKH/strings.xml
index 114877a..858c001 100644
--- a/packages/Keyguard/res/values-km-rKH/strings.xml
+++ b/packages/Keyguard/res/values-km-rKH/strings.xml
@@ -83,7 +83,7 @@
<string name="password_keyboard_label_alpha_key" msgid="8001096175167485649">"ABC"</string>
<string name="password_keyboard_label_alt_key" msgid="1284820942620288678">"ALT"</string>
<string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Alt"</string>
- <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះបង់"</string>
+ <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះបង់"</string>
<string name="keyboardview_keycode_delete" msgid="3337914833206635744">"លុប"</string>
<string name="keyboardview_keycode_done" msgid="1992571118466679775">"រួចរាល់"</string>
<string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"ប្ដូររបៀប"</string>
@@ -122,7 +122,7 @@
<string name="kg_login_too_many_attempts" msgid="6486842094005698475">"ព្យាយាមលំនាំច្រើនពេក"</string>
<string name="kg_login_instructions" msgid="1100551261265506448">"ដើម្បីដោះសោ ចូលក្នុងគណនី Google ។"</string>
<string name="kg_login_username_hint" msgid="5718534272070920364">"ឈ្មោះអ្នកប្រើ (អ៊ីមែល)"</string>
- <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់"</string>
+ <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់"</string>
<string name="kg_login_submit_button" msgid="5355904582674054702">"ចូល"</string>
<string name="kg_login_invalid_input" msgid="5754664119319872197">"ឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់មិនត្រឹមត្រូវ។"</string>
<string name="kg_login_account_recovery_hint" msgid="5690709132841752974">"ភ្លេចឈ្មោះអ្នកប្រើ ឬពាក្យសម្ងាត់របស់អ្នក?\nមើល "<b>"google.com/accounts/recovery"</b>" ។"</string>
@@ -164,5 +164,5 @@
<string name="keyguard_transport_pause_description" msgid="5093073338238310224">"ប៊ូតុងផ្អាក"</string>
<string name="keyguard_transport_play_description" msgid="2924628863741150956">"ប៊ូតុងចាក់"</string>
<string name="keyguard_transport_stop_description" msgid="3084179324810575787">"ប៊ូតុងបញ្ឈប់"</string>
- <string name="keyguard_carrier_default" msgid="8700650403054042153">"គ្មានសេវា"</string>
+ <string name="keyguard_carrier_default" msgid="8700650403054042153">"គ្មានសេវា"</string>
</resources>
diff --git a/packages/Keyguard/res/values-my-rMM/strings.xml b/packages/Keyguard/res/values-my-rMM/strings.xml
index 9eae880..dd15517 100644
--- a/packages/Keyguard/res/values-my-rMM/strings.xml
+++ b/packages/Keyguard/res/values-my-rMM/strings.xml
@@ -20,16 +20,16 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="app_name" msgid="719438068451601849">"သော့ချက် စောင့်ပေးသူ"</string>
- <string name="keyguard_password_enter_pin_code" msgid="3037685796058495017">"PIN ကုဒ် ရိုက်ထည့်ပါ"</string>
+ <string name="app_name" msgid="719438068451601849">"သော့ချက် စောင့်ပေးသူ"</string>
+ <string name="keyguard_password_enter_pin_code" msgid="3037685796058495017">"PIN ကုဒ် ရိုက်ထည့်ပါ"</string>
<string name="keyguard_password_enter_puk_code" msgid="3035856550289724338">"ဆင်းမ်ကဒ် ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် နှင့် လျို့ဝှက်နံပါတ်သစ် ရိုက်ထည့်ပါ"</string>
<string name="keyguard_password_enter_puk_prompt" msgid="1801941051094974609">"ဆင်းမ်ကဒ် ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ် နံပါတ်"</string>
<string name="keyguard_password_enter_pin_prompt" msgid="3201151840570492538">"ဆင်းမ်ကဒ် လျို့ဝှက်ပင်နံပါတ် အသစ်သွင်းရန်"</string>
<string name="keyguard_password_entry_touch_hint" msgid="7858547464982981384"><font size="17">"စကားဝှက် ရိုက်ရန် ထိပါ"</font></string>
- <string name="keyguard_password_enter_password_code" msgid="1054721668279049780">"သော့ဖွင့်ရန် စကားဝှက်ကို ရိုက်ထည့်ပါ"</string>
- <string name="keyguard_password_enter_pin_password_code" msgid="6391755146112503443">"သော့ဖွင့်ရန် PIN ကို ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_password_code" msgid="1054721668279049780">"သော့ဖွင့်ရန် စကားဝှက်ကို ရိုက်ထည့်ပါ"</string>
+ <string name="keyguard_password_enter_pin_password_code" msgid="6391755146112503443">"သော့ဖွင့်ရန် PIN ကို ရိုက်ထည့်ပါ"</string>
<string name="keyguard_password_wrong_pin_code" msgid="2422225591006134936">"ပင်နံပါတ်မှားနေပါသည်"</string>
- <string name="keyguard_label_text" msgid="861796461028298424">"သော့ဖွင့်ရန် Menu ထိုနောက်0ကိုနှိပ်ပါ"</string>
+ <string name="keyguard_label_text" msgid="861796461028298424">"သော့ဖွင့်ရန် Menu ထိုနောက်0ကိုနှိပ်ပါ"</string>
<string name="faceunlock_multiple_failures" msgid="754137583022792429">"မျက်မှာမှတ် သော့ဖွင့်ခြင်း ခွင့်ပြုသော အကြိမ်ရေထက် ကျော်လွန်သွားပါပြီ"</string>
<string name="keyguard_charged" msgid="3272223906073492454">"အားသွင်းနေပါသည်"</string>
<string name="keyguard_plugged_in" msgid="9087497435553252863">"အားသွင်းနေ"</string>
@@ -85,14 +85,14 @@
<string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Altခလုတ်"</string>
<string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"ပယ်ဖျက်ရန်ခလုတ်"</string>
<string name="keyboardview_keycode_delete" msgid="3337914833206635744">"ဖျက်ရန်ခလုတ်"</string>
- <string name="keyboardview_keycode_done" msgid="1992571118466679775">"ပြီးဆုံးသည့်ခလုတ်"</string>
+ <string name="keyboardview_keycode_done" msgid="1992571118466679775">"ပြီးဆုံးသည့်ခလုတ်"</string>
<string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"စနစ်ပြောင်းခြင်းခလုတ်"</string>
<string name="keyboardview_keycode_shift" msgid="2270748814315147690">"Shiftခလုတ်"</string>
<string name="keyboardview_keycode_enter" msgid="2985864015076059467">"Enterခလုတ်"</string>
- <string name="description_target_unlock" msgid="2228524900439801453">"ဖွင့်ရန်"</string>
+ <string name="description_target_unlock" msgid="2228524900439801453">"ဖွင့်ရန်"</string>
<string name="description_target_camera" msgid="969071997552486814">"ကင်မရာ"</string>
<string name="description_target_silent" msgid="893551287746522182">"အသံတိတ်ရန်"</string>
- <string name="description_target_soundon" msgid="30052466675500172">"အသံဖွင့်သည်"</string>
+ <string name="description_target_soundon" msgid="30052466675500172">"အသံဖွင့်သည်"</string>
<string name="description_target_search" msgid="3091587249776033139">"ရှာဖွေရန်"</string>
<string name="description_direction_up" msgid="7169032478259485180">"<xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> အတွက် အပေါ်ကို ပွတ်ဆွဲပါ"</string>
<string name="description_direction_down" msgid="5087739728639014595">"<xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> အတွက် အောက်ကို ပွတ်ဆွဲပါ"</string>
@@ -107,11 +107,11 @@
<string name="kg_too_many_failed_attempts_countdown" msgid="6358110221603297548">"<xliff:g id="NUMBER">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်ကြိုးစားပါ"</string>
<string name="kg_pattern_instructions" msgid="398978611683075868">"သင့်ရဲ့ သော့ဖွင့်သော ပုံစံကို ဆွဲပါ"</string>
<string name="kg_sim_pin_instructions" msgid="2319508550934557331">"ဆင်းမ်ကဒ် ပင် နံပါတ် ရိုက်ထည့်ပါ"</string>
- <string name="kg_sim_pin_instructions_multi" msgid="7818515973197201434">"\"<xliff:g id="CARRIER">%1$s</xliff:g>\" အတွက် ဆင်းမ် ပင်နံပါတ် ရိုက်ထည့်ပါ။"</string>
+ <string name="kg_sim_pin_instructions_multi" msgid="7818515973197201434">"\"<xliff:g id="CARRIER">%1$s</xliff:g>\" အတွက် ဆင်းမ် ပင်နံပါတ် ရိုက်ထည့်ပါ။"</string>
<string name="kg_pin_instructions" msgid="2377242233495111557">"ပင်နံပါတ် ရိုက်ထည့်ပါ"</string>
<string name="kg_password_instructions" msgid="5753646556186936819">"လျို့ဝှက်နံပါတ် ရိုက်ထည့်ပါ"</string>
<string name="kg_puk_enter_puk_hint" msgid="453227143861735537">"ဆင်းမ်ကဒ်သည် ယခု ပိတ်သွားပါပြီ ဆက်လက် လုပ်ဆောင်ရန် ပင်နံပါတ် ပြန်ဖွင့်သည့် ကုဒ်ကို ရိုက်ထည့်ပါ။ ပိုမိုသိချင်လျင် ဖုန်းဝန်ဆောင်မှု ပေးသောဌာန အားဆက်သွယ်နိုင်ပါသည်။"</string>
- <string name="kg_puk_enter_puk_hint_multi" msgid="363822494559783025">"ဆင်းမ် \"<xliff:g id="CARRIER">%1$s</xliff:g>\" သည် ယခု အလုပ်မလုပ်တော့ပါ။ ဆက်လက်သွားရန် PUK ကုဒ် ရိုက်ထည့်ပါ၊။အသေးစိတ်သိရရန် ဖုန်းဝန်ဆောင်မှုလုပ်ငန်းအား ဆက်သွယ်ပါ။"</string>
+ <string name="kg_puk_enter_puk_hint_multi" msgid="363822494559783025">"ဆင်းမ် \"<xliff:g id="CARRIER">%1$s</xliff:g>\" သည် ယခု အလုပ်မလုပ်တော့ပါ။ ဆက်လက်သွားရန် PUK ကုဒ် ရိုက်ထည့်ပါ၊။အသေးစိတ်သိရရန် ဖုန်းဝန်ဆောင်မှုလုပ်ငန်းအား ဆက်သွယ်ပါ။"</string>
<string name="kg_puk_enter_pin_hint" msgid="7871604527429602024">"လိုချင်သော ပင်နံပါတ်ကို ရိုက်ထည့်ပါ"</string>
<string name="kg_enter_confirm_pin_hint" msgid="325676184762529976">"လိုချင်သော ပင်နံပါတ်ကို အတည်ပြုရန်"</string>
<string name="kg_sim_unlock_progress_dialog_message" msgid="8950398016976865762">"ဆင်းမ်ကဒ် ကို သော့ဖွင့်နေပါသည်"</string>
@@ -130,18 +130,18 @@
<string name="kg_too_many_failed_pin_attempts_dialog_message" msgid="8276745642049502550">"သင် ပင် နံပါတ်ကို အမှားကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ရိုက်ထည့်ပြီးပါပြီ။ \n\n<xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့် အကြာတွင် ပြန်လည်ကြိုးစားပါ"</string>
<string name="kg_too_many_failed_password_attempts_dialog_message" msgid="7813713389422226531">"သင်သည် စကားဝှက်ကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် မှားရိုက်ပြီးပါပြီ။ \n\n <xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာ ပြန်လည်ကြိုးစားပါ"</string>
<string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="74089475965050805">"သင် ပုံစံဆွဲ သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ်မြောက် မအောင်မြင်ပါ။ \n\n<xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
- <string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="8774056606869646621">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤတက်ဘလက်အား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="1843331751334128428">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_now_wiping" product="tablet" msgid="258925501999698032">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_now_wiping" product="default" msgid="7154028908459817066">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_almost_at_erase_user" product="tablet" msgid="6159955099372112688">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤအသုံးပြုသူအား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
- <string name="kg_failed_attempts_almost_at_erase_user" product="default" msgid="6945823186629369880">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤအသုံးပြုသူအား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
- <string name="kg_failed_attempts_now_erasing_user" product="tablet" msgid="3963486905355778734">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤအသုံးပြုသူအား ဖယ်ထုတ်မည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_now_erasing_user" product="default" msgid="7729009752252111673">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤအသုံးပြုသူအား ဖယ်ထုတ်မည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_almost_at_erase_profile" product="tablet" msgid="4621778507387853694">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အလုပ်ပရိုဖိုင်အား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
- <string name="kg_failed_attempts_almost_at_erase_profile" product="default" msgid="6853071165802933545">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အလုပ်ပရိုဖိုင်အား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
- <string name="kg_failed_attempts_now_erasing_profile" product="tablet" msgid="4686386497449912146">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ အလုပ်ပရိုဖိုင် ဖယ်ထုတ်ခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
- <string name="kg_failed_attempts_now_erasing_profile" product="default" msgid="4951507352869831265">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ အလုပ်ပရိုဖိုင် ဖယ်ထုတ်ခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="8774056606869646621">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤတက်ဘလက်အား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="1843331751334128428">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_now_wiping" product="tablet" msgid="258925501999698032">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_now_wiping" product="default" msgid="7154028908459817066">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤဖုန်းအား အစမှပြန်စဖွင့်မည်ဖြစ်ပြီး၊ ၎င်း၏ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_almost_at_erase_user" product="tablet" msgid="6159955099372112688">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤအသုံးပြုသူအား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
+ <string name="kg_failed_attempts_almost_at_erase_user" product="default" msgid="6945823186629369880">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ ဤအသုံးပြုသူအား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
+ <string name="kg_failed_attempts_now_erasing_user" product="tablet" msgid="3963486905355778734">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤအသုံးပြုသူအား ဖယ်ထုတ်မည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_now_erasing_user" product="default" msgid="7729009752252111673">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ ဤအသုံးပြုသူအား ဖယ်ထုတ်မည်ဖြစ်ပြီး၊ အသုံးပြုသူဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_almost_at_erase_profile" product="tablet" msgid="4621778507387853694">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အလုပ်ပရိုဖိုင်အား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
+ <string name="kg_failed_attempts_almost_at_erase_profile" product="default" msgid="6853071165802933545">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER_0">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ <xliff:g id="NUMBER_1">%d</xliff:g> ကြိမ် ကြိုးစားပြီးနောက် မအောင်မြင်ပါက၊ သင့် အလုပ်ပရိုဖိုင်အား ဖယ်ထုတ်ခြင်းခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားပါမည်။"</string>
+ <string name="kg_failed_attempts_now_erasing_profile" product="tablet" msgid="4686386497449912146">"တက်ဘလက်အား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ အလုပ်ပရိုဖိုင် ဖယ်ထုတ်ခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
+ <string name="kg_failed_attempts_now_erasing_profile" product="default" msgid="4951507352869831265">"ဖုန်းအား သော့ဖွင့်ရန် သင် <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ကြိုးစားရာ မမှန်ကန်ခဲ့ပါ။ အလုပ်ပရိုဖိုင် ဖယ်ထုတ်ခံရမည်ဖြစ်ပြီး၊ ပရိုဖိုင်ဒေတာအားလုံး ပျက်သွားမည်ဖြစ်သည်။"</string>
<string name="kg_failed_attempts_almost_at_login" product="tablet" msgid="3253575572118914370">"သင် ပုံဖော်၍သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> အကြိမ် မှန်ကန်စွာ မပြုလုပ်နိုင်ပါ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မမှန်ကန်ပါက သင့်တက်ဘလက်အား အီးမေးလ်အသုံးပြု၍ သော့ဖွင့်ရန် တောင်းဆိုပါလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
<string name="kg_failed_attempts_almost_at_login" product="default" msgid="1437638152015574839">"သင် ပုံဖော်၍သော့ဖွင့်ခြင်းကို <xliff:g id="NUMBER_0">%d</xliff:g> အကြိမ် မှန်ကန်စွာ မပြုလုပ်နိုင်ပါ။ နောက်ထပ် <xliff:g id="NUMBER_1">%d</xliff:g> အကြိမ် မမှန်ကန်ပါက သင့်ဖုန်းအား အီးမေးလ်အသုံးပြု၍ သော့ဖွင့်ရန် တောင်းဆိုပါလိမ့်မည်။ \n\n <xliff:g id="NUMBER_2">%d</xliff:g> စက္ကန့်အကြာတွင် ပြန်လည် ကြိုးစားပါ"</string>
<string name="kg_text_message_separator" product="default" msgid="4160700433287233771">" — "</string>
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardConstants.java b/packages/Keyguard/src/com/android/keyguard/KeyguardConstants.java
index 10baf23..05a5f66 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardConstants.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardConstants.java
@@ -25,6 +25,6 @@
* Turns on debugging information for the whole Keyguard. This is very verbose and should only
* be used temporarily for debugging.
*/
- public static final boolean DEBUG = true;
+ public static final boolean DEBUG = false;
public static final boolean DEBUG_SIM_STATES = true;
}
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java b/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java
index 7f1314d..ff07dd7 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java
@@ -1303,16 +1303,15 @@
// that don't return the complete set of values and have different types. In Keyguard we
// need IccCardConstants, but TelephonyManager would only give us
// TelephonyManager.SIM_STATE*, so we retrieve it manually.
- final int phoneId = SubscriptionManager.getPhoneId(subId);
- final String stateString = TelephonyManager.getTelephonyProperty(phoneId,
- TelephonyProperties.PROPERTY_SIM_STATE, "");
+ final TelephonyManager tele = TelephonyManager.from(mContext);
+ int simState = tele.getSimState(slotId);
State state;
try {
- state = State.valueOf(stateString);
+ state = State.intToState(simState);
} catch(IllegalArgumentException ex) {
- Log.w(TAG, "Unknown sim state: " + stateString);
+ Log.w(TAG, "Unknown sim state: " + simState);
state = State.UNKNOWN;
- }
+ }
mSimDatas.put(subId, new SimData(state, slotId, subId));
}
diff --git a/packages/PrintSpooler/res/values-es-rUS/arrays.xml b/packages/PrintSpooler/res/values-es-rUS/arrays.xml
new file mode 100644
index 0000000..c1b149c
--- /dev/null
+++ b/packages/PrintSpooler/res/values-es-rUS/arrays.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2014 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<resources>
+
+ <string-array name="pdf_printer_media_sizes" translatable="false">
+ <item>NA_LETTER</item>
+ <item>NA_GOVT_LETTER</item>
+ <item>NA_LEGAL</item>
+ <item>NA_JUNIOR_LEGAL</item>
+ <item>NA_LEDGER</item>
+ <item>NA_TABLOID</item>
+ <item>NA_INDEX_3X5</item>
+ <item>NA_INDEX_4X6</item>
+ <item>NA_INDEX_5X8</item>
+ <item>NA_MONARCH</item>
+ <item>NA_QUARTO</item>
+ <item>NA_FOOLSCAP</item>
+ </string-array>
+
+</resources>
diff --git a/packages/SystemUI/res/values-hy-rAM/strings.xml b/packages/SystemUI/res/values-hy-rAM/strings.xml
index 0c22321..ea00568 100644
--- a/packages/SystemUI/res/values-hy-rAM/strings.xml
+++ b/packages/SystemUI/res/values-hy-rAM/strings.xml
@@ -261,7 +261,7 @@
<string name="quick_settings_more_settings" msgid="326112621462813682">"Հավելյալ կարգավորումներ"</string>
<string name="quick_settings_done" msgid="3402999958839153376">"Պատրաստ է"</string>
<string name="quick_settings_connected" msgid="1722253542984847487">"Կապակցված է"</string>
- <string name="quick_settings_connected_via_wfa" msgid="1587051627194895715">"Կապակցված է Wi‑Fi օգնականի միջոցով"</string>
+ <string name="quick_settings_connected_via_wfa" msgid="1587051627194895715">"Կապակցված է Wi‑Fi Օգնականի միջոցով"</string>
<string name="quick_settings_connecting" msgid="47623027419264404">"Միանում է..."</string>
<string name="quick_settings_tethering_label" msgid="7153452060448575549">"Միացում"</string>
<string name="quick_settings_hotspot_label" msgid="6046917934974004879">"Թեժ կետ"</string>
diff --git a/packages/SystemUI/res/values-km-rKH/strings.xml b/packages/SystemUI/res/values-km-rKH/strings.xml
index ab8cfa0..7f47ff2 100644
--- a/packages/SystemUI/res/values-km-rKH/strings.xml
+++ b/packages/SystemUI/res/values-km-rKH/strings.xml
@@ -69,7 +69,7 @@
<string name="screenshot_saving_ticker" msgid="7403652894056693515">"កំពុងរក្សាទុករូបថតអេក្រង់…"</string>
<string name="screenshot_saving_title" msgid="8242282144535555697">"កំពុងរក្សាទុករូបថតអេក្រង់..."</string>
<string name="screenshot_saving_text" msgid="2419718443411738818">"រូបថតអេក្រង់កំពុងត្រូវបានរក្សាទុក។"</string>
- <string name="screenshot_saved_title" msgid="6461865960961414961">"បានចាប់យករូបថតអេក្រង់។"</string>
+ <string name="screenshot_saved_title" msgid="6461865960961414961">"បានចាប់យករូបថតអេក្រង់។"</string>
<string name="screenshot_saved_text" msgid="1152839647677558815">"ប៉ះ ដើម្បីមើលរូបថតអេក្រង់របស់អ្នក។"</string>
<string name="screenshot_failed_title" msgid="705781116746922771">"មិនអាចចាប់យករូបថតអេក្រង់។"</string>
<string name="screenshot_failed_text" msgid="1260203058661337274">"មិនអាចថតអេក្រង់ដោយសារតែទំហំផ្ទុកមានដែនកំណត់ ឬវាមិនត្រូវបានអនុញ្ញាតដោយកម្មវិធី ឬស្ថាប័នរបស់អ្នក។"</string>
@@ -152,7 +152,7 @@
<string name="accessibility_remove_notification" msgid="3603099514902182350">"សម្អាតការជូនដំណឹង។"</string>
<string name="accessibility_gps_enabled" msgid="3511469499240123019">"បានបើក GPS ។"</string>
<string name="accessibility_gps_acquiring" msgid="8959333351058967158">"ទទួល GPS ។"</string>
- <string name="accessibility_tty_enabled" msgid="4613200365379426561">"បានបើកម៉ាស៊ីនអង្គុលីលេខ"</string>
+ <string name="accessibility_tty_enabled" msgid="4613200365379426561">"បានបើកម៉ាស៊ីនអង្គុលីលេខ"</string>
<string name="accessibility_ringer_vibrate" msgid="666585363364155055">"កម្មវិធីរោទ៍ញ័រ។"</string>
<string name="accessibility_ringer_silent" msgid="9061243307939135383">"កម្មវិធីរោទ៍ស្ងាត់។"</string>
<!-- no translation found for accessibility_casting (6887382141726543668) -->
@@ -234,7 +234,7 @@
<string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"បញ្ឈរ"</string>
<string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ទេសភាព"</string>
<string name="quick_settings_ime_label" msgid="7073463064369468429">"វិធីសាស្ត្របញ្ចូល"</string>
- <string name="quick_settings_location_label" msgid="5011327048748762257">"ទីតាំង"</string>
+ <string name="quick_settings_location_label" msgid="5011327048748762257">"ទីតាំង"</string>
<string name="quick_settings_location_off_label" msgid="7464544086507331459">"ទីតាំងបានបិទ"</string>
<string name="quick_settings_media_device_label" msgid="1302906836372603762">"ឧបករណ៍មេឌៀ"</string>
<string name="quick_settings_rssi_label" msgid="7725671335550695589">"RSSI"</string>
@@ -279,11 +279,11 @@
<string name="recents_lock_to_app_button_label" msgid="6942899049072506044">"ការភ្ជាប់អេក្រង់"</string>
<string name="recents_search_bar_label" msgid="8074997400187836677">"ស្វែងរក"</string>
<string name="recents_launch_error_message" msgid="2969287838120550506">"មិនអាចចាប់ផ្ដើម <xliff:g id="APP">%s</xliff:g> ទេ។"</string>
- <string name="expanded_header_battery_charged" msgid="5945855970267657951">"បានបញ្ចូលថ្ម"</string>
+ <string name="expanded_header_battery_charged" msgid="5945855970267657951">"បានបញ្ចូលថ្ម"</string>
<string name="expanded_header_battery_charging" msgid="205623198487189724">"កំពុងបញ្ចូលថ្ម"</string>
<string name="expanded_header_battery_charging_with_time" msgid="457559884275395376">"<xliff:g id="CHARGING_TIME">%s</xliff:g> រហូតដល់ពេញ"</string>
<string name="expanded_header_battery_not_charging" msgid="4798147152367049732">"មិនកំពុងបញ្ចូលថ្ម"</string>
- <string name="ssl_ca_cert_warning" msgid="9005954106902053641">"បណ្ដាញអាច\nត្រូវបានត្រួតពិនិត្យ"</string>
+ <string name="ssl_ca_cert_warning" msgid="9005954106902053641">"បណ្ដាញអាច\nត្រូវបានត្រួតពិនិត្យ"</string>
<string name="description_target_search" msgid="3091587249776033139">"ស្វែងរក"</string>
<string name="description_direction_up" msgid="7169032478259485180">"រុញឡើងលើដើម្បី <xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> ។"</string>
<string name="description_direction_left" msgid="7207478719805562165">"រុញទៅឆ្វេងដើម្បី <xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> ។"</string>
diff --git a/packages/SystemUI/res/values-lo-rLA/strings.xml b/packages/SystemUI/res/values-lo-rLA/strings.xml
index c00dc2d..f17a524 100644
--- a/packages/SystemUI/res/values-lo-rLA/strings.xml
+++ b/packages/SystemUI/res/values-lo-rLA/strings.xml
@@ -276,7 +276,7 @@
<string name="quick_settings_cellular_detail_data_warning" msgid="2440098045692399009">"ຄຳເຕືອນ <xliff:g id="DATA_LIMIT">%s</xliff:g>"</string>
<string name="recents_empty_message" msgid="8682129509540827999">"Your recent screens appear here"</string>
<string name="recents_app_info_button_label" msgid="2890317189376000030">"ຂໍ້ມູນແອັບພລິເຄຊັນ"</string>
- <string name="recents_lock_to_app_button_label" msgid="6942899049072506044">"ການປັກໝຸດໜ້າຈໍ"</string>
+ <string name="recents_lock_to_app_button_label" msgid="6942899049072506044">"ການປັກໝຸດໜ້າຈໍ"</string>
<string name="recents_search_bar_label" msgid="8074997400187836677">"ຊອກຫາ"</string>
<string name="recents_launch_error_message" msgid="2969287838120550506">"ບໍ່ສາມາດເລີ່ມ <xliff:g id="APP">%s</xliff:g> ໄດ້."</string>
<string name="expanded_header_battery_charged" msgid="5945855970267657951">"ສາກເຕັມແລ້ວ."</string>
@@ -313,7 +313,7 @@
<string name="guest_exit_guest" msgid="7187359342030096885">"ລຶບແຂກ"</string>
<string name="guest_exit_guest_dialog_title" msgid="8480693520521766688">"ລຶບແຂກບໍ?"</string>
<string name="guest_exit_guest_dialog_message" msgid="4155503224769676625">"ແອັບຯແລະຂໍ້ມູນທັງໝົດໃນເຊດຊັນນີ້ຈະຖືກລຶບອອກ."</string>
- <string name="guest_exit_guest_dialog_remove" msgid="7402231963862520531">"ລຶບ"</string>
+ <string name="guest_exit_guest_dialog_remove" msgid="7402231963862520531">"ລຶບ"</string>
<string name="guest_wipe_session_title" msgid="6419439912885956132">"ຍິນດີຕ້ອນຮັບກັບມາ, ຜູ່ຢ້ຽມຢາມ!"</string>
<string name="guest_wipe_session_message" msgid="8476238178270112811">"ທ່ານຕ້ອງການສືບຕໍ່ເຊດຊັນຂອງທ່ານບໍ່?"</string>
<string name="guest_wipe_session_wipe" msgid="5065558566939858884">"ເລີ່ມຕົ້ນໃຫມ່"</string>
diff --git a/packages/SystemUI/res/values-my-rMM/strings.xml b/packages/SystemUI/res/values-my-rMM/strings.xml
index 1b425ef..f3830dd 100644
--- a/packages/SystemUI/res/values-my-rMM/strings.xml
+++ b/packages/SystemUI/res/values-my-rMM/strings.xml
@@ -26,37 +26,37 @@
<string name="status_bar_no_recent_apps" msgid="7374907845131203189">"သင်၏ မကြာမီက မျက်နှာပြင်များ ဒီမှာ ပေါ်လာကြမည်"</string>
<string name="status_bar_accessibility_dismiss_recents" msgid="4576076075226540105">"လတ်တလောအပ်ပလီကေးရှင်းများအား ဖယ်ထုတ်မည်"</string>
<plurals name="status_bar_accessibility_recent_apps">
- <item quantity="one" msgid="3969335317929254918">"ခြုံကြည့်မှု ထဲက မျက်နှာပြင် ၁ ခု"</item>
- <item quantity="other" msgid="5523506463832158203">"ခြုံကြည့်မှု ထဲက မျက်နှာပြင် %d ခု"</item>
+ <item quantity="one" msgid="3969335317929254918">"ခြုံကြည့်မှု ထဲက မျက်နှာပြင် ၁ ခု"</item>
+ <item quantity="other" msgid="5523506463832158203">"ခြုံကြည့်မှု ထဲက မျက်နှာပြင် %d ခု"</item>
</plurals>
<string name="status_bar_no_notifications_title" msgid="4755261167193833213">"အကြောင်းကြားချက်များ မရှိ"</string>
<string name="status_bar_ongoing_events_title" msgid="1682504513316879202">"လက်ရှိအသုံးပြုမှု"</string>
<string name="status_bar_latest_events_title" msgid="6594767438577593172">"အကြောင်းကြားချက်များ။"</string>
<string name="battery_low_title" msgid="6456385927409742437">"ဘက်ထရီ အားနည်းနေ"</string>
<string name="battery_low_percent_format" msgid="2900940511201380775">"<xliff:g id="PERCENTAGE">%s</xliff:g> ကျန်ရှိနေ"</string>
- <string name="battery_low_percent_format_saver_started" msgid="6859235584035338833">"<xliff:g id="PERCENTAGE">%s</xliff:g> ကျန်ရှိနေ။ ဘက်ထရီ ချွေတာမှု ဖွင့်ထား။"</string>
+ <string name="battery_low_percent_format_saver_started" msgid="6859235584035338833">"<xliff:g id="PERCENTAGE">%s</xliff:g> ကျန်ရှိနေ။ ဘက်ထရီ ချွေတာမှု ဖွင့်ထား။"</string>
<string name="invalid_charger" msgid="4549105996740522523">"လက်ရှိUSBအားသွင်းခြင်း အသုံးမပြုနိုင်ပါ \n ပေးထားသောအားသွင်းကိရိယာကိုသာ အသုံးပြုပါ"</string>
<string name="invalid_charger_title" msgid="3515740382572798460">"USB အားသွင်းမှု မပံ့ပိုးပါ။"</string>
- <string name="invalid_charger_text" msgid="5474997287953892710">"ပေးခဲ့သည့် အားသွင်းစက်ကိုသာ အသုံးပြုပါ"</string>
+ <string name="invalid_charger_text" msgid="5474997287953892710">"ပေးခဲ့သည့် အားသွင်းစက်ကိုသာ အသုံးပြုပါ"</string>
<string name="battery_low_why" msgid="4553600287639198111">"ဆက်တင်များ"</string>
- <string name="battery_saver_confirmation_title" msgid="5299585433050361634">"ဘက်ထရီ ချွေတာမှုကို ဖွင့်ရမလား?"</string>
- <string name="battery_saver_confirmation_ok" msgid="7507968430447930257">"ဖွင့်ရန်"</string>
- <string name="battery_saver_start_action" msgid="5576697451677486320">"ဘက်ထရီ ချွေတာမှုကို ဖွင့်ရန်"</string>
+ <string name="battery_saver_confirmation_title" msgid="5299585433050361634">"ဘက်ထရီ ချွေတာမှုကို ဖွင့်ရမလား?"</string>
+ <string name="battery_saver_confirmation_ok" msgid="7507968430447930257">"ဖွင့်ရန်"</string>
+ <string name="battery_saver_start_action" msgid="5576697451677486320">"ဘက်ထရီ ချွေတာမှုကို ဖွင့်ရန်"</string>
<string name="status_bar_settings_settings_button" msgid="3023889916699270224">"အပြင်အဆင်များ"</string>
<string name="status_bar_settings_wifi_button" msgid="1733928151698311923">"ဝိုင်ဖိုင်"</string>
<string name="status_bar_settings_airplane" msgid="4879879698500955300">"လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်"</string>
- <string name="status_bar_settings_auto_rotation" msgid="3790482541357798421">"မျက်နှာပြင်အလိုအလျောက်လှည့်ရန်"</string>
+ <string name="status_bar_settings_auto_rotation" msgid="3790482541357798421">"မျက်နှာပြင်အလိုအလျောက်လှည့်ရန်"</string>
<string name="status_bar_settings_mute_label" msgid="554682549917429396">"MUTE"</string>
<string name="status_bar_settings_auto_brightness_label" msgid="511453614962324674">"AUTO"</string>
<string name="status_bar_settings_notifications" msgid="397146176280905137">"သတိပေးချက်များ"</string>
- <string name="bluetooth_tethered" msgid="7094101612161133267">"ဘလူးတုသ်မှတဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
- <string name="status_bar_input_method_settings_configure_input_methods" msgid="3504292471512317827">"ထည့်သွင်းနည်းများ သတ်မှတ်ခြင်း"</string>
+ <string name="bluetooth_tethered" msgid="7094101612161133267">"ဘလူးတုသ်မှတဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
+ <string name="status_bar_input_method_settings_configure_input_methods" msgid="3504292471512317827">"ထည့်သွင်းနည်းများ သတ်မှတ်ခြင်း"</string>
<string name="status_bar_use_physical_keyboard" msgid="7551903084416057810">"ခလုတ်ပါဝင်သော ကီးဘုတ်"</string>
- <string name="usb_device_permission_prompt" msgid="834698001271562057">"<xliff:g id="APPLICATION">%1$s</xliff:g>အပ်ပလီကေးရှင်းအား USBပစ္စည်းကို ချိတ်ဆက်ရန်ခွင့်ပြုမည်လား"</string>
- <string name="usb_accessory_permission_prompt" msgid="5171775411178865750">"<xliff:g id="APPLICATION">%1$s</xliff:g> အပ်ပလီကေးရှင်းကို USB တွဲဖက်ပစ္စည်းများအား ဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုသည်"</string>
- <string name="usb_device_confirm_prompt" msgid="5161205258635253206">"<xliff:g id="ACTIVITY">%1$s</xliff:g> အားUSBပစ္စည်း ချိတ်ဆက်နေစဥ် ဖွင့်မည်လား"</string>
- <string name="usb_accessory_confirm_prompt" msgid="3808984931830229888">"<xliff:g id="ACTIVITY">%1$s</xliff:g> အား USBတွဲဖက်ပစ္စည်း ချိတ်ဆက်ထားစဥ် ဖွင့်မည်"</string>
- <string name="usb_accessory_uri_prompt" msgid="513450621413733343">"ဒီUSBပစ္စည်းနှင့်ဘယ်အပ်ပလီကေးရှင်းမှ အလုပ်မလုပ်ပါ။ ပိုမိုသိရန် <xliff:g id="URL">%1$s</xliff:g>တွင် လေ့လာပါ"</string>
+ <string name="usb_device_permission_prompt" msgid="834698001271562057">"<xliff:g id="APPLICATION">%1$s</xliff:g>အပ်ပလီကေးရှင်းအား USBပစ္စည်းကို ချိတ်ဆက်ရန်ခွင့်ပြုမည်လား"</string>
+ <string name="usb_accessory_permission_prompt" msgid="5171775411178865750">"<xliff:g id="APPLICATION">%1$s</xliff:g> အပ်ပလီကေးရှင်းကို USB တွဲဖက်ပစ္စည်းများအား ဝင်ရောက်ကြည့်ရှုရန်ခွင့်ပြုသည်"</string>
+ <string name="usb_device_confirm_prompt" msgid="5161205258635253206">"<xliff:g id="ACTIVITY">%1$s</xliff:g> အားUSBပစ္စည်း ချိတ်ဆက်နေစဥ် ဖွင့်မည်လား"</string>
+ <string name="usb_accessory_confirm_prompt" msgid="3808984931830229888">"<xliff:g id="ACTIVITY">%1$s</xliff:g> အား USBတွဲဖက်ပစ္စည်း ချိတ်ဆက်ထားစဥ် ဖွင့်မည်"</string>
+ <string name="usb_accessory_uri_prompt" msgid="513450621413733343">"ဒီUSBပစ္စည်းနှင့်ဘယ်အပ်ပလီကေးရှင်းမှ အလုပ်မလုပ်ပါ။ ပိုမိုသိရန် <xliff:g id="URL">%1$s</xliff:g>တွင် လေ့လာပါ"</string>
<string name="title_usb_accessory" msgid="4966265263465181372">"USBတွဲဖက်ပစ္စည်းများ"</string>
<string name="label_view" msgid="6304565553218192990">"မြင်ကွင်း"</string>
<string name="always_use_device" msgid="1450287437017315906">"ဤUSBပစ္စည်းများအတွက် မူရင်းအတိုင်း အသုံးပြုပါ။"</string>
@@ -64,31 +64,31 @@
<string name="usb_debugging_title" msgid="4513918393387141949">"USB အမှားရှာဖွေပြင်ဆင်ခြင်း ခွင့်ပြုပါမည်လား?"</string>
<string name="usb_debugging_message" msgid="2220143855912376496">"ဒီကွန်ပျူတာရဲ့ RSA key fingerprint ကတော့:\n<xliff:g id="FINGERPRINT">%1$s</xliff:g> ဖြစ်ပါသည်"</string>
<string name="usb_debugging_always" msgid="303335496705863070">"ဒီကွန်ပျူတာမှ အမြဲခွင့်ပြုရန်"</string>
- <string name="compat_mode_on" msgid="6623839244840638213">"ဖန်သားပြင်ပြည့် ချဲ့ခြင်း"</string>
- <string name="compat_mode_off" msgid="4434467572461327898">"ဖန်သားပြင်အပြည့်ဆန့်ခြင်း"</string>
+ <string name="compat_mode_on" msgid="6623839244840638213">"ဖန်သားပြင်ပြည့် ချဲ့ခြင်း"</string>
+ <string name="compat_mode_off" msgid="4434467572461327898">"ဖန်သားပြင်အပြည့်ဆန့်ခြင်း"</string>
<string name="screenshot_saving_ticker" msgid="7403652894056693515">"ဖန်သားပြင်ဓါတ်ပုံသိမ်းစဉ်.."</string>
<string name="screenshot_saving_title" msgid="8242282144535555697">"ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား သိမ်းဆည်းပါမည်"</string>
<string name="screenshot_saving_text" msgid="2419718443411738818">"ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား သိမ်းဆည်းပြီးပါပြီ"</string>
<string name="screenshot_saved_title" msgid="6461865960961414961">"ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား ဖမ်းယူပြီး"</string>
- <string name="screenshot_saved_text" msgid="1152839647677558815">"သင့်ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား ကြည့်ရှုရန် ထိပါ"</string>
+ <string name="screenshot_saved_text" msgid="1152839647677558815">"သင့်ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား ကြည့်ရှုရန် ထိပါ"</string>
<string name="screenshot_failed_title" msgid="705781116746922771">"ဖန်သားပြင်ဓါတ်ပုံရိုက်ခြင်းအား မဖမ်းစီးနိုင်ပါ"</string>
- <string name="screenshot_failed_text" msgid="1260203058661337274">"မျက်နှာပြင်လျှပ်တပြက်ပုံကို မရုက်နိုင်ခဲ့ပါ၊ သိုလှောင်မှု နေရာ အကန့်အသတ် ရှိနေ၍ သို့မဟုတ် app သို့မဟုတ် သင်၏ အဖွဲ့အစည်းက ခွင့်မပြု၍ ဖြစ်နိုင်သည်။"</string>
+ <string name="screenshot_failed_text" msgid="1260203058661337274">"မျက်နှာပြင်လျှပ်တပြက်ပုံကို မရုက်နိုင်ခဲ့ပါ၊ သိုလှောင်မှု နေရာ အကန့်အသတ် ရှိနေ၍ သို့မဟုတ် app သို့မဟုတ် သင်၏ အဖွဲ့အစည်းက ခွင့်မပြု၍ ဖြစ်နိုင်သည်။"</string>
<string name="usb_preference_title" msgid="6551050377388882787">"USB ဖိုင်ပြောင်း ရွေးမှုများ"</string>
- <string name="use_mtp_button_title" msgid="4333504413563023626">"မီဒီယာပလေရာအနေဖြင့် တပ်ဆင်ရန် (MTP)"</string>
- <string name="use_ptp_button_title" msgid="7517127540301625751">"ကင်မရာအနေဖြင့် တပ်ဆင်ရန် (PTP)"</string>
+ <string name="use_mtp_button_title" msgid="4333504413563023626">"မီဒီယာပလေရာအနေဖြင့် တပ်ဆင်ရန် (MTP)"</string>
+ <string name="use_ptp_button_title" msgid="7517127540301625751">"ကင်မရာအနေဖြင့် တပ်ဆင်ရန် (PTP)"</string>
<string name="installer_cd_button_title" msgid="2312667578562201583">"Macအတွက်Andriodဖိုင်ပြောင်းအပ်ပလီကေးရှင်းထည့်ခြင်း"</string>
<string name="accessibility_back" msgid="567011538994429120">"နောက်သို့"</string>
<string name="accessibility_home" msgid="8217216074895377641">"ပင်မစာမျက်နှာ"</string>
<string name="accessibility_menu" msgid="316839303324695949">"မီနူး"</string>
- <string name="accessibility_recent" msgid="5208608566793607626">"ခြုံကြည့်မှု။"</string>
+ <string name="accessibility_recent" msgid="5208608566793607626">"ခြုံကြည့်မှု။"</string>
<string name="accessibility_search_light" msgid="1103867596330271848">"ရှာဖွေရန်"</string>
<string name="accessibility_camera_button" msgid="8064671582820358152">"ကင်မရာ"</string>
<string name="accessibility_phone_button" msgid="6738112589538563574">"ဖုန်း"</string>
<string name="accessibility_unlock_button" msgid="128158454631118828">"သော့ဖွင့်ရန်"</string>
- <string name="unlock_label" msgid="8779712358041029439">"သော့ဖွင့်ရန်"</string>
- <string name="phone_label" msgid="2320074140205331708">"ဖုန်းကို ဖွင့်ရန်"</string>
- <string name="camera_label" msgid="7261107956054836961">"ကင်မရာ ဖွင့်ရန်"</string>
- <string name="accessibility_ime_switch_button" msgid="5032926134740456424">"ထည့်သွင်းခြင်းခလုတ်အား ပြောင်းခြင်း"</string>
+ <string name="unlock_label" msgid="8779712358041029439">"သော့ဖွင့်ရန်"</string>
+ <string name="phone_label" msgid="2320074140205331708">"ဖုန်းကို ဖွင့်ရန်"</string>
+ <string name="camera_label" msgid="7261107956054836961">"ကင်မရာ ဖွင့်ရန်"</string>
+ <string name="accessibility_ime_switch_button" msgid="5032926134740456424">"ထည့်သွင်းခြင်းခလုတ်အား ပြောင်းခြင်း"</string>
<string name="accessibility_compatibility_zoom_button" msgid="8461115318742350699">"အံ့ဝင်သောချုံ့ချဲ့ခလုတ်"</string>
<string name="accessibility_compatibility_zoom_example" msgid="4220687294564945780">"ဖန်သားပြင်ပေါ်တွင် အသေးမှအကြီးသို့ချဲ့ခြင်း"</string>
<string name="accessibility_bluetooth_connected" msgid="2707027633242983370">"ဘလူးတုသ်ချိတ်ဆက်ထားမှု"</string>
@@ -97,17 +97,17 @@
<string name="accessibility_battery_one_bar" msgid="7774887721891057523">"ဘတ္တရီတစ်ဘား။"</string>
<string name="accessibility_battery_two_bars" msgid="8500650438735009973">"ဘတ္တရီနှစ်ဘား။"</string>
<string name="accessibility_battery_three_bars" msgid="2302983330865040446">"ဘတ္တရီသုံးဘား။"</string>
- <string name="accessibility_battery_full" msgid="8909122401720158582">"ဘတ္တရီအပြည့်။"</string>
+ <string name="accessibility_battery_full" msgid="8909122401720158582">"ဘတ္တရီအပြည့်။"</string>
<string name="accessibility_no_phone" msgid="4894708937052611281">"ဖုန်းလိုင်းမရှိပါ။"</string>
<string name="accessibility_phone_one_bar" msgid="687699278132664115">"ဖုန်းလိုင်းတစ်ဘား။"</string>
<string name="accessibility_phone_two_bars" msgid="8384905382804815201">"ဖုန်းလိုင်းနှစ်ဘား။"</string>
<string name="accessibility_phone_three_bars" msgid="8521904843919971885">"ဖုန်းလိုင်းသုံးဘား။"</string>
- <string name="accessibility_phone_signal_full" msgid="6471834868580757898">"ဖုန်းလိုင်းအပြည့်။"</string>
+ <string name="accessibility_phone_signal_full" msgid="6471834868580757898">"ဖုန်းလိုင်းအပြည့်။"</string>
<string name="accessibility_no_data" msgid="4791966295096867555">"ဒေတာမရှိပါ။"</string>
<string name="accessibility_data_one_bar" msgid="1415625833238273628">"ဒေတာတစ်ဘား။"</string>
- <string name="accessibility_data_two_bars" msgid="6166018492360432091">"ဒေတာထုတ်လွှင့်မှု ၂ဘားဖမ်းမိခြင်း။"</string>
+ <string name="accessibility_data_two_bars" msgid="6166018492360432091">"ဒေတာထုတ်လွှင့်မှု ၂ဘားဖမ်းမိခြင်း။"</string>
<string name="accessibility_data_three_bars" msgid="9167670452395038520">"ဒေတာသုံးဘား။"</string>
- <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ဒေတာထုတ်လွှင့်မှုအပြည့်ဖမ်းမိခြင်း"</string>
+ <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ဒေတာထုတ်လွှင့်မှုအပြည့်ဖမ်းမိခြင်း"</string>
<string name="accessibility_wifi_off" msgid="3177380296697933627">"ဝိုင်ဖိုင် မရှိ"</string>
<string name="accessibility_no_wifi" msgid="1425476551827924474">"ဝိုင်ဖိုင် ချိတ်ဆက်ထားမှု မရှိပါ"</string>
<string name="accessibility_wifi_one_bar" msgid="7735893178010724377">"ဝိုင်ဖိုင် ၁ ဘားရှိ"</string>
@@ -127,7 +127,7 @@
<string name="accessibility_one_bar" msgid="1685730113192081895">"တစ်တုံး"</string>
<string name="accessibility_two_bars" msgid="6437363648385206679">"၂ ဘား"</string>
<string name="accessibility_three_bars" msgid="2648241415119396648">"၃ ဘား"</string>
- <string name="accessibility_signal_full" msgid="9122922886519676839">"ဒေတာထုတ်လွှင့်မှုအပြည့်ဖမ်းမိခြင်း"</string>
+ <string name="accessibility_signal_full" msgid="9122922886519676839">"ဒေတာထုတ်လွှင့်မှုအပြည့်ဖမ်းမိခြင်း"</string>
<string name="accessibility_desc_on" msgid="2385254693624345265">"ဖွင့်ထားသည်"</string>
<string name="accessibility_desc_off" msgid="6475508157786853157">"ပိတ်ထားသည်"</string>
<string name="accessibility_desc_connected" msgid="8366256693719499665">"ဆက်သွယ်ထားပြီး"</string>
@@ -144,7 +144,7 @@
<string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
<string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"ဝိုင်ဖိုင်"</string>
<string name="accessibility_no_sim" msgid="8274017118472455155">"ဆင်းကဒ်မရှိပါ။"</string>
- <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ဘလူးတုသ်မှတဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
+ <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ဘလူးတုသ်မှတဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
<string name="accessibility_airplane_mode" msgid="834748999790763092">"လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်။"</string>
<string name="accessibility_battery_level" msgid="7451474187113371965">"ဘတ္တရီ <xliff:g id="NUMBER">%d</xliff:g> ရာခိုင်နှုန်း။"</string>
<string name="accessibility_settings_button" msgid="799583911231893380">"စနစ်အပြင်အဆင်များ"</string>
@@ -165,47 +165,47 @@
<string name="accessibility_desc_quick_settings" msgid="6186378411582437046">"အမြန်လုပ် အပြင်အဆင်"</string>
<string name="accessibility_desc_lock_screen" msgid="5625143713611759164">"မျက်နှာပြင် သော့ပိတ်ရန်"</string>
<string name="accessibility_desc_settings" msgid="3417884241751434521">"ဆက်တင်များ"</string>
- <string name="accessibility_desc_recent_apps" msgid="4876900986661819788">"ခြုံကြည့်မှု။"</string>
+ <string name="accessibility_desc_recent_apps" msgid="4876900986661819788">"ခြုံကြည့်မှု။"</string>
<string name="accessibility_quick_settings_user" msgid="1104846699869476855">"သုံးစွဲသူ <xliff:g id="USER">%s</xliff:g>."</string>
<string name="accessibility_quick_settings_wifi" msgid="5518210213118181692">"<xliff:g id="SIGNAL">%1$s</xliff:g>။"</string>
<string name="accessibility_quick_settings_wifi_changed_off" msgid="8716484460897819400">"ကြိုးမဲ့ ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_wifi_changed_on" msgid="6440117170789528622">"ကြိုးမဲ့ ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_wifi_changed_on" msgid="6440117170789528622">"ကြိုးမဲ့ ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_mobile" msgid="4876806564086241341">"မိုဘိုင်းလ် <xliff:g id="SIGNAL">%1$s</xliff:g>. <xliff:g id="TYPE">%2$s</xliff:g>. <xliff:g id="NETWORK">%3$s</xliff:g>."</string>
<string name="accessibility_quick_settings_battery" msgid="1480931583381408972">"ဘက်ထရီ <xliff:g id="STATE">%s</xliff:g>."</string>
<string name="accessibility_quick_settings_airplane_off" msgid="7786329360056634412">"လေယာဉ် မုဒ် ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_airplane_on" msgid="6406141469157599296">"လေယာဉ် မုဒ်ကို ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_airplane_on" msgid="6406141469157599296">"လေယာဉ် မုဒ်ကို ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_airplane_changed_off" msgid="66846307818850664">"လေယာဉ် မုဒ်ကို ပိတ်ထားလိုက်ပြီ။"</string>
- <string name="accessibility_quick_settings_airplane_changed_on" msgid="8983005603505087728">"လေယာဉ် မုဒ်ကို ဖွင့်ထားလိုက်ပြီ။"</string>
+ <string name="accessibility_quick_settings_airplane_changed_on" msgid="8983005603505087728">"လေယာဉ် မုဒ်ကို ဖွင့်ထားလိုက်ပြီ။"</string>
<string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ဘလူးတုသ် ပိတ်ထား."</string>
- <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ဘလူးတုသ် ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ဘလူးတုသ် ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ဘလူးတုသ် ချိတ်ဆက်နေ။"</string>
<string name="accessibility_quick_settings_bluetooth_connected" msgid="4306637793614573659">"ဘလူးတုသ် ချိတ်ဆက်ထား။"</string>
<string name="accessibility_quick_settings_bluetooth_changed_off" msgid="2730003763480934529">"ဘလူးတုသ် ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_bluetooth_changed_on" msgid="8722351798763206577">"ဘလူးတုသ် ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_bluetooth_changed_on" msgid="8722351798763206577">"ဘလူးတုသ် ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_location_off" msgid="5119080556976115520">"တည်နေရာ သတင်းပို့မှု ပိတ်ရန်။"</string>
- <string name="accessibility_quick_settings_location_on" msgid="5809937096590102036">"တည်နေရာ သတင်းပို့မှု ဖွင့်ရန်။"</string>
+ <string name="accessibility_quick_settings_location_on" msgid="5809937096590102036">"တည်နေရာ သတင်းပို့မှု ဖွင့်ရန်။"</string>
<string name="accessibility_quick_settings_location_changed_off" msgid="8526845571503387376">"တည်နေရာ သတင်းပို့မှု ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_location_changed_on" msgid="339403053079338468">"တည်နေရာ သတင်းပို့မှု ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_location_changed_on" msgid="339403053079338468">"တည်နေရာ သတင်းပို့မှု ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_alarm" msgid="3959908972897295660">"နိုးစက်ပေးထားသော အချိန် <xliff:g id="TIME">%s</xliff:g>."</string>
<string name="accessibility_quick_settings_close" msgid="3115847794692516306">"ဘောင်ကွက် ပိတ်ရန်။"</string>
<string name="accessibility_quick_settings_more_time" msgid="3659274935356197708">"အချိန် တိုး"</string>
<string name="accessibility_quick_settings_less_time" msgid="2404728746293515623">"အချိန် လျှော့"</string>
<string name="accessibility_quick_settings_flashlight_off" msgid="4936432000069786988">"ဖလက်ရှမီး ပိတ်ထား"</string>
- <string name="accessibility_quick_settings_flashlight_on" msgid="2003479320007841077">"ဖလက်ရှမီး ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_flashlight_on" msgid="2003479320007841077">"ဖလက်ရှမီး ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_flashlight_changed_off" msgid="3303701786768224304">"ဖလက်ရှမီး ပိတ်ထားသည်။"</string>
- <string name="accessibility_quick_settings_flashlight_changed_on" msgid="6531793301533894686">"ဖလက်ရှမီး ဖွင့်ထားသည်။"</string>
+ <string name="accessibility_quick_settings_flashlight_changed_on" msgid="6531793301533894686">"ဖလက်ရှမီး ဖွင့်ထားသည်။"</string>
<string name="accessibility_quick_settings_color_inversion_changed_off" msgid="4406577213290173911">"အရောင် ပြောင်းပြန်လှန်မှု ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_color_inversion_changed_on" msgid="6897462320184911126">"အရောင် ပြောင်းပြန်လှန်မှု ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_color_inversion_changed_on" msgid="6897462320184911126">"အရောင် ပြောင်းပြန်လှန်မှု ဖွင့်ထား။"</string>
<string name="accessibility_quick_settings_hotspot_changed_off" msgid="5004708003447561394">"မိုဘိုင်း ဟော့စပေါ့ ပိတ်ထား။"</string>
- <string name="accessibility_quick_settings_hotspot_changed_on" msgid="2890951609226476206">"မိုဘိုင်း ဟော့စပေါ့ ဖွင့်ထား။"</string>
+ <string name="accessibility_quick_settings_hotspot_changed_on" msgid="2890951609226476206">"မိုဘိုင်း ဟော့စပေါ့ ဖွင့်ထား။"</string>
<string name="accessibility_casting_turned_off" msgid="1430668982271976172">"မျက်နှာပြင် ကာစ်တင် လုပ်မှု ရပ်လိုက်ပြီ။"</string>
<string name="accessibility_brightness" msgid="8003681285547803095">"တောက်ပမှုကို ပြရန်"</string>
<string name="data_usage_disabled_dialog_3g_title" msgid="2626865386971800302">"2G-3G ဒေတာ ပိတ်ထား"</string>
<string name="data_usage_disabled_dialog_4g_title" msgid="4629078114195977196">"4G ဒေတာ ပိတ်ထား"</string>
<string name="data_usage_disabled_dialog_mobile_title" msgid="5793456071535876132">"ဆယ်လူလာ ဒေတာကို ပိတ်ထား"</string>
<string name="data_usage_disabled_dialog_title" msgid="8723412000355709802">"ဒေတာ ပိတ်ထား"</string>
- <string name="data_usage_disabled_dialog" msgid="6468718338038876604">"သင်၏ ကိရိယာသည် သင်က သတ်မှတ်ခဲ့သည့် ကန့်သတ်ချက်ကို ပြည့်မီသွား၍ ပိတ်သွားသည်။ \n\n၎င်းကို ပြန်ပြီး ဖွင့်မှုအတွက် သင်၏ စီမံပေးသူ ထံမှ ငွေတောင်းခံ လာနိုင်ပါသည်။"</string>
- <string name="data_usage_disabled_dialog_enable" msgid="5538068036107372895">"ဒေတာ ဖွင့်ပေးရန်"</string>
+ <string name="data_usage_disabled_dialog" msgid="6468718338038876604">"သင်၏ ကိရိယာသည် သင်က သတ်မှတ်ခဲ့သည့် ကန့်သတ်ချက်ကို ပြည့်မီသွား၍ ပိတ်သွားသည်။ \n\n၎င်းကို ပြန်ပြီး ဖွင့်မှုအတွက် သင်၏ စီမံပေးသူ ထံမှ ငွေတောင်းခံ လာနိုင်ပါသည်။"</string>
+ <string name="data_usage_disabled_dialog_enable" msgid="5538068036107372895">"ဒေတာ ဖွင့်ပေးရန်"</string>
<string name="status_bar_settings_signal_meter_disconnected" msgid="1940231521274147771">"အင်တာနက်မရှိ"</string>
<string name="status_bar_settings_signal_meter_wifi_nossid" msgid="6557486452774597820">"ကြိုးမဲ့ဆက်သွယ်မှု"</string>
<string name="gps_notification_searching_text" msgid="8574247005642736060">"GPSအားရှာဖွေသည်"</string>
@@ -227,13 +227,13 @@
<string name="quick_settings_bluetooth_label" msgid="6304190285170721401">"ဘလူးတု"</string>
<string name="quick_settings_bluetooth_multiple_devices_label" msgid="3912245565613684735">"ဘလူးတု (<xliff:g id="NUMBER">%d</xliff:g> စက်များ)"</string>
<string name="quick_settings_bluetooth_off_label" msgid="8159652146149219937">"ဘလူးတု ပိတ်ထားရန်"</string>
- <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ချိတ်တွဲထားသည့် ကိရိယာများ မရှိ"</string>
+ <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ချိတ်တွဲထားသည့် ကိရိယာများ မရှိ"</string>
<string name="quick_settings_brightness_label" msgid="6968372297018755815">"အလင်းတောက်ပမှု"</string>
<string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"အော်တို-လည်"</string>
<string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"လည်မှု သော့ပိတ်ထား"</string>
<string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ဒေါင်လိုက်"</string>
<string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ဘေးတိုက်"</string>
- <string name="quick_settings_ime_label" msgid="7073463064369468429">"ထည့်သွင်းရန်နည်းလမ်း"</string>
+ <string name="quick_settings_ime_label" msgid="7073463064369468429">"ထည့်သွင်းရန်နည်းလမ်း"</string>
<string name="quick_settings_location_label" msgid="5011327048748762257">"တည်နေရာ"</string>
<string name="quick_settings_location_off_label" msgid="7464544086507331459">"တည်နေရာပြမှု မရှိ"</string>
<string name="quick_settings_media_device_label" msgid="1302906836372603762">"မီဒီယာ စက်ပစ္စည်း"</string>
@@ -252,7 +252,7 @@
<string name="quick_settings_cast_title" msgid="1893629685050355115">"ကာစ်တ် မျက်နှာပြင်"</string>
<string name="quick_settings_casting" msgid="6601710681033353316">"ကာစ်တင်"</string>
<string name="quick_settings_cast_device_default_name" msgid="5367253104742382945">"အမည်မတပ် ကိရိယာ"</string>
- <string name="quick_settings_cast_device_default_description" msgid="2484573682378634413">"ကာစ်တ် လုပ်ရန် အသင့် ရှိနေပြီ"</string>
+ <string name="quick_settings_cast_device_default_description" msgid="2484573682378634413">"ကာစ်တ် လုပ်ရန် အသင့် ရှိနေပြီ"</string>
<string name="quick_settings_cast_detail_empty_text" msgid="311785821261640623">"ကိရိယာများ မရှိ"</string>
<string name="quick_settings_brightness_dialog_title" msgid="8599674057673605368">"အလင်းတောက်ပမှု"</string>
<string name="quick_settings_brightness_dialog_auto_brightness_label" msgid="5064982743784071218">"အလိုအလျောက်"</string>
@@ -261,7 +261,7 @@
<string name="quick_settings_more_settings" msgid="326112621462813682">"နောက်ထပ် ဆက်တင်များ"</string>
<string name="quick_settings_done" msgid="3402999958839153376">"လုပ်ပြီး"</string>
<string name="quick_settings_connected" msgid="1722253542984847487">"ချိတ်ဆက်ထား"</string>
- <string name="quick_settings_connected_via_wfa" msgid="1587051627194895715">"ကြိုးမဲ့ကူညီသူမှတဆင့် ချိတ်ဆက်ပြီး၏"</string>
+ <string name="quick_settings_connected_via_wfa" msgid="1587051627194895715">"ကြိုးမဲ့ကူညီသူမှတဆင့် ချိတ်ဆက်ပြီး၏"</string>
<string name="quick_settings_connecting" msgid="47623027419264404">"ဆက်သွယ်နေ..."</string>
<string name="quick_settings_tethering_label" msgid="7153452060448575549">"တွဲချီပေးခြင်း"</string>
<string name="quick_settings_hotspot_label" msgid="6046917934974004879">"ဟော့စပေါ့"</string>
@@ -270,9 +270,9 @@
<string name="quick_settings_cellular_detail_title" msgid="8575062783675171695">"ဆယ်လူလာ ဒေတာ"</string>
<string name="quick_settings_cellular_detail_data_usage" msgid="1964260360259312002">"ဒေတာ သုံးစွဲမှု"</string>
<string name="quick_settings_cellular_detail_remaining_data" msgid="722715415543541249">"ကျန်ရှိ ဒေတာ"</string>
- <string name="quick_settings_cellular_detail_over_limit" msgid="967669665390990427">"ကန့်သတ်ချက် ကျော်လွန်"</string>
+ <string name="quick_settings_cellular_detail_over_limit" msgid="967669665390990427">"ကန့်သတ်ချက် ကျော်လွန်"</string>
<string name="quick_settings_cellular_detail_data_used" msgid="1476810587475761478">"<xliff:g id="DATA_USED">%s</xliff:g> သုံးထား"</string>
- <string name="quick_settings_cellular_detail_data_limit" msgid="56011158504994128">"<xliff:g id="DATA_LIMIT">%s</xliff:g> ကန့်သတ်ချက်"</string>
+ <string name="quick_settings_cellular_detail_data_limit" msgid="56011158504994128">"<xliff:g id="DATA_LIMIT">%s</xliff:g> ကန့်သတ်ချက်"</string>
<string name="quick_settings_cellular_detail_data_warning" msgid="2440098045692399009">"<xliff:g id="DATA_LIMIT">%s</xliff:g> သတိပေးချက်"</string>
<string name="recents_empty_message" msgid="8682129509540827999">"သင်၏ မကြာမီက မျက်နှာပြင်များ ဒီမှာ ပေါ်လာကြမည်"</string>
<string name="recents_app_info_button_label" msgid="2890317189376000030">"အပလီကေးရှင်း အင်ဖို"</string>
@@ -281,76 +281,76 @@
<string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ကို မစနိုင်ပါ။"</string>
<string name="expanded_header_battery_charged" msgid="5945855970267657951">"အားသွင်းပြီး"</string>
<string name="expanded_header_battery_charging" msgid="205623198487189724">"အားသွင်းနေ"</string>
- <string name="expanded_header_battery_charging_with_time" msgid="457559884275395376">"<xliff:g id="CHARGING_TIME">%s</xliff:g> ပြည်သည့် အထိ"</string>
+ <string name="expanded_header_battery_charging_with_time" msgid="457559884275395376">"<xliff:g id="CHARGING_TIME">%s</xliff:g> ပြည်သည့် အထိ"</string>
<string name="expanded_header_battery_not_charging" msgid="4798147152367049732">"အား မသွင်းပါ"</string>
<string name="ssl_ca_cert_warning" msgid="9005954106902053641">"ကွန်ယက်ကို\n စောင့်ကြည့်စစ်ဆေးခံရနိုင်သည်"</string>
<string name="description_target_search" msgid="3091587249776033139">"ရှာဖွေရန်"</string>
<string name="description_direction_up" msgid="7169032478259485180">"<xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> အတွက် အပေါ်ကို ပွတ်ဆွဲပါ"</string>
<string name="description_direction_left" msgid="7207478719805562165">"<xliff:g id="TARGET_DESCRIPTION">%s</xliff:g> အတွက် ဖယ်ဘက်ကို ပွတ်ဆွဲပါ"</string>
<string name="zen_no_interruptions_with_warning" msgid="4396898053735625287">"ကြားဖြတ်ဝင်မှုများ မရှိခဲ့။ နှိုးစက်ပင် မရှိခဲ့။"</string>
- <string name="zen_no_interruptions" msgid="7970973750143632592">"ကြားဖြတ်ဝင်မှု ခွင့်မပြုရန်"</string>
+ <string name="zen_no_interruptions" msgid="7970973750143632592">"ကြားဖြတ်ဝင်မှု ခွင့်မပြုရန်"</string>
<string name="zen_important_interruptions" msgid="3477041776609757628">"ဦးစားပေး ကြားဖြတ်ဝင်မှုများ သာလျှင်"</string>
<string name="zen_alarm_information_time" msgid="5235772206174372272">"သင်၏ နောက် နှိုးစက်၏ အချိန်မှာ<xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
<string name="zen_alarm_information_day_time" msgid="8422733576255047893">"သင်၏ နောက် နှိုးစက်မှာ <xliff:g id="ALARM_DAY_AND_TIME">%s</xliff:g>"</string>
<string name="zen_alarm_warning" msgid="6873910860111498041">"သင်သည် သင်၏ <xliff:g id="ALARM_TIME">%s</xliff:g> နှိုးစက်ကို ကြားရမည် မဟုတ်"</string>
<string name="keyguard_more_overflow_text" msgid="9195222469041601365">"+<xliff:g id="NUMBER_OF_NOTIFICATIONS">%d</xliff:g>"</string>
- <string name="speed_bump_explanation" msgid="1288875699658819755">"အရေးပါမှု နည်းသည့် အကြောင်းကြားချက်များ အောက်မှာ"</string>
- <string name="notification_tap_again" msgid="8524949573675922138">"ဖွင့်ရန် ထပ်ပြီး ထိပါ"</string>
- <string name="keyguard_unlock" msgid="8043466894212841998">"သော့ဖွင့်ရန် အပေါ်သို့ ပွတ်ဆွဲပါ"</string>
+ <string name="speed_bump_explanation" msgid="1288875699658819755">"အရေးပါမှု နည်းသည့် အကြောင်းကြားချက်များ အောက်မှာ"</string>
+ <string name="notification_tap_again" msgid="8524949573675922138">"ဖွင့်ရန် ထပ်ပြီး ထိပါ"</string>
+ <string name="keyguard_unlock" msgid="8043466894212841998">"သော့ဖွင့်ရန် အပေါ်သို့ ပွတ်ဆွဲပါ"</string>
<string name="phone_hint" msgid="3101468054914424646">"ဖုန်း အတွက် ညာသို့ ပွတ်ဆွဲပါ"</string>
<string name="camera_hint" msgid="5241441720959174226">"ကင်မရာ အတွက် ဘယ်သို့ ပွတ်ဆွဲပါ"</string>
<string name="interruption_level_none" msgid="3831278883136066646">"မရှိ"</string>
<string name="interruption_level_priority" msgid="6517366750688942030">"ဦးစားပေးမှု"</string>
<string name="interruption_level_all" msgid="1330581184930945764">"အားလုံး"</string>
- <string name="keyguard_indication_charging_time" msgid="1757251776872835768">"(<xliff:g id="CHARGING_TIME_LEFT">%s</xliff:g> အပြည့် အထိ) အားသွင်းနေ"</string>
+ <string name="keyguard_indication_charging_time" msgid="1757251776872835768">"(<xliff:g id="CHARGING_TIME_LEFT">%s</xliff:g> အပြည့် အထိ) အားသွင်းနေ"</string>
<string name="accessibility_multi_user_switch_switcher" msgid="7305948938141024937">"အသုံးပြုသူကို ပြောင်းလဲရန်"</string>
<string name="accessibility_multi_user_switch_switcher_with_current" msgid="8434880595284601601">"အသုံးပြုသူကို ပြောင်းရန်၊ လက်ရှိ အသုံးပြုသူ <xliff:g id="CURRENT_USER_NAME">%s</xliff:g>"</string>
<string name="accessibility_multi_user_switch_quick_contact" msgid="3020367729287990475">"ပရိုဖိုင်ကို ပြရန်"</string>
<string name="user_add_user" msgid="5110251524486079492">"သုံးသူ ထပ်ထည့်ရန်"</string>
<string name="user_new_user_name" msgid="426540612051178753">"အသုံးပြုသူ အသစ်"</string>
- <string name="guest_nickname" msgid="8059989128963789678">"ဧည့်သည်"</string>
- <string name="guest_new_guest" msgid="600537543078847803">"ဧည့်သည့်ကို ထည့်ပေးရန်"</string>
- <string name="guest_exit_guest" msgid="7187359342030096885">"ဧည့်သည်ကို ဖယ်ထုတ်ရန်"</string>
- <string name="guest_exit_guest_dialog_title" msgid="8480693520521766688">"ဧည့်သည်ကို ဖယ်ထုတ်လိုက်ရမလား?"</string>
- <string name="guest_exit_guest_dialog_message" msgid="4155503224769676625">"ဒီချိတ်ဆက်မှု ထဲက appများ အားလုံး နှင့် ဒေတာကို ဖျက်ပစ်မည်။"</string>
+ <string name="guest_nickname" msgid="8059989128963789678">"ဧည့်သည်"</string>
+ <string name="guest_new_guest" msgid="600537543078847803">"ဧည့်သည့်ကို ထည့်ပေးရန်"</string>
+ <string name="guest_exit_guest" msgid="7187359342030096885">"ဧည့်သည်ကို ဖယ်ထုတ်ရန်"</string>
+ <string name="guest_exit_guest_dialog_title" msgid="8480693520521766688">"ဧည့်သည်ကို ဖယ်ထုတ်လိုက်ရမလား?"</string>
+ <string name="guest_exit_guest_dialog_message" msgid="4155503224769676625">"ဒီချိတ်ဆက်မှု ထဲက appများ အားလုံး နှင့် ဒေတာကို ဖျက်ပစ်မည်။"</string>
<string name="guest_exit_guest_dialog_remove" msgid="7402231963862520531">"ဖယ်ထုတ်ပါ"</string>
- <string name="guest_wipe_session_title" msgid="6419439912885956132">"ပြန်လာတာ ကြိုဆိုပါသည်၊ ဧည့်သည်!"</string>
+ <string name="guest_wipe_session_title" msgid="6419439912885956132">"ပြန်လာတာ ကြိုဆိုပါသည်၊ ဧည့်သည်!"</string>
<string name="guest_wipe_session_message" msgid="8476238178270112811">"သင်သည် သင်၏ ချိတ်ဆက်မှုကို ဆက်ပြုလုပ် လိုပါသလား?"</string>
<string name="guest_wipe_session_wipe" msgid="5065558566939858884">"အစမှ ပြန်စပါ"</string>
<string name="guest_wipe_session_dontwipe" msgid="1401113462524894716">"ဟုတ်ကဲ့၊ ဆက်လုပ်ပါ"</string>
- <string name="user_add_user_title" msgid="4553596395824132638">"အသုံးပြုသူ အသစ်ကို ထည့်ရမလား?"</string>
- <string name="user_add_user_message_short" msgid="2161624834066214559">"သင်က အသုံးပြုသူ အသစ် တစ်ဦးကို ထည့်ပေးလိုက်လျှင်၊ ထိုသူသည် ၎င်း၏ နေရာကို သတ်မှတ်စီစဉ်ရန် လိုအပ်မည်။\n\n အသုံးပြုသူ မည်သူမဆို ကျန်အသုံးပြုသူ အားလုံးတို့အတွက် appများကို မွမ်းမံပေးနိုင်သည်။"</string>
- <string name="battery_saver_notification_title" msgid="237918726750955859">"ဘက်ထရီ ချွေတာသူ ဖွင့်ထား"</string>
- <string name="battery_saver_notification_text" msgid="820318788126672692">"လုပ်ကိုင်မှုကို လျှော့ချလျက် နောက်ခံ ဒေတာကို ကန့်သတ်သည်"</string>
+ <string name="user_add_user_title" msgid="4553596395824132638">"အသုံးပြုသူ အသစ်ကို ထည့်ရမလား?"</string>
+ <string name="user_add_user_message_short" msgid="2161624834066214559">"သင်က အသုံးပြုသူ အသစ် တစ်ဦးကို ထည့်ပေးလိုက်လျှင်၊ ထိုသူသည် ၎င်း၏ နေရာကို သတ်မှတ်စီစဉ်ရန် လိုအပ်မည်။\n\n အသုံးပြုသူ မည်သူမဆို ကျန်အသုံးပြုသူ အားလုံးတို့အတွက် appများကို မွမ်းမံပေးနိုင်သည်။"</string>
+ <string name="battery_saver_notification_title" msgid="237918726750955859">"ဘက်ထရီ ချွေတာသူ ဖွင့်ထား"</string>
+ <string name="battery_saver_notification_text" msgid="820318788126672692">"လုပ်ကိုင်မှုကို လျှော့ချလျက် နောက်ခံ ဒေတာကို ကန့်သတ်သည်"</string>
<string name="battery_saver_notification_action_text" msgid="109158658238110382">"ဘက်ထရီ ချွေတာမှုကို ပိတ်ထားရန်"</string>
<string name="notification_hidden_text" msgid="1135169301897151909">"အကြောင်းအရာများ ဝှက်ထား"</string>
- <string name="media_projection_dialog_text" msgid="3071431025448218928">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> က သင်၏ မျက်နှာပြင် ပေါ်မှာ ပြသထားသည့် အရာတိုင်းကို စတင် ဖမ်းယူမည်။"</string>
+ <string name="media_projection_dialog_text" msgid="3071431025448218928">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> က သင်၏ မျက်နှာပြင် ပေါ်မှာ ပြသထားသည့် အရာတိုင်းကို စတင် ဖမ်းယူမည်။"</string>
<string name="media_projection_remember_text" msgid="3103510882172746752">"နောက်ထပ် မပြပါနှင့်"</string>
<string name="clear_all_notifications_text" msgid="814192889771462828">"အားလုံး ရှင်းလင်းရန်"</string>
<string name="media_projection_action_text" msgid="8470872969457985954">"ယခု စတင်ပါ"</string>
<string name="empty_shade_text" msgid="708135716272867002">"အကြောင်းကြားချက်များ မရှိ"</string>
- <string name="device_owned_footer" msgid="3802752663326030053">"ကိရိယာကို စောင့်ကြပ် နိုင်ပါသည်"</string>
- <string name="profile_owned_footer" msgid="8021888108553696069">"ပရိုဖိုင်ကို စောင့်ကြပ်နိုင်သည်"</string>
- <string name="vpn_footer" msgid="2388611096129106812">"ကွန်ရက်ကို ကို စောင့်ကြပ် နိုင်ပါသည်"</string>
+ <string name="device_owned_footer" msgid="3802752663326030053">"ကိရိယာကို စောင့်ကြပ် နိုင်ပါသည်"</string>
+ <string name="profile_owned_footer" msgid="8021888108553696069">"ပရိုဖိုင်ကို စောင့်ကြပ်နိုင်သည်"</string>
+ <string name="vpn_footer" msgid="2388611096129106812">"ကွန်ရက်ကို ကို စောင့်ကြပ် နိုင်ပါသည်"</string>
<string name="monitoring_title_device_owned" msgid="7121079311903859610">"ကိရိယာကို စောင့်ကြပ်ခြင်း"</string>
- <string name="monitoring_title_profile_owned" msgid="6790109874733501487">"ပရိုဖိုင် စောင့်ကြပ်မှု"</string>
+ <string name="monitoring_title_profile_owned" msgid="6790109874733501487">"ပရိုဖိုင် စောင့်ကြပ်မှု"</string>
<string name="monitoring_title" msgid="169206259253048106">"ကွန်ရက်ကို စောင့်ကြပ်ခြင်း"</string>
<string name="disable_vpn" msgid="4435534311510272506">"VPN ကို ပိတ်ထားရန်"</string>
<string name="disconnect_vpn" msgid="1324915059568548655">"VPN ကို အဆက်ဖြတ်ရန်"</string>
<string name="monitoring_description_device_owned" msgid="7512371572956715493">"ဤစက်ပစ္စည်းကို စီမံခန့်ခွဲသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင့်အက်ဒ်မင်သည် သင့်စက်ပစ္စည်းနှင့် အီးမေးများ၊ app များ နှင့် လုံခြုံသည့်ဝက်ဘ်ဆိုက် အပါအဝင် ကွန်ရက် လှုပ်ှရားမှုများကို စောင့်ကြည့်နိုင်သည်။\n\nနောက်ထပ်အချက်အလက်များအတွက်၊ သင့်အက်ဒ်မင်ကို ဆက်သွယ်ပါ။"</string>
<string name="monitoring_description_vpn" msgid="7288268682714305659">"သင် \"<xliff:g id="APPLICATION">%1$s</xliff:g>\" ကို VPN စတင်သုံးခွင့်ပေးလိုက်သည်။ \n\n ဤ app သည် သင့်စက်ပစ္စည်းနှင့် အီးမေးများ၊ app များ နှင့် လုံခြုံသည့်ဝက်ဘ်ဆိုက် အပါအဝင် ကွန်ရက် လှုပ်ှရားမှုများကို စောင့်ကြည့်နိုင်သည်။"</string>
<string name="monitoring_description_legacy_vpn" msgid="4740349017929725435">"VPN (\"<xliff:g id="APPLICATION">%1$s</xliff:g>\") ကို သင်ချိတ်ဆက်မိ၏။\n\nသင့် VPN ဝန်ဆောင်မှုပေးသူသည် သင့်စက်ပစ္စည်းနှင့် အီးမေးများ၊ app များ နှင့် လုံခြုံသည့်ဝက်ဘ်ဆိုက် အပါအဝင် ကွန်ရက် လှုပ်ှရားမှုများကို စောင့်ကြည့်နိုင်သည်။"</string>
- <string name="monitoring_description_vpn_device_owned" msgid="696121105616356493">"ဒီကိရိယာကို စီမံကွပ်ကဲသူမှာ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူက သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ် နိုင်ပါသည်။ အချက်အလက်များ ပိုပြီး ရယူရန်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\n ထို့အပြင် သင်သည် \"<xliff:g id="APPLICATION">%2$s</xliff:g>\" အား VPN ချိတ်ဆက်မှု စဖွင့်လုပ်ကိုင်ရန် ခွင့်ပြုခဲ့သည်။ ဒီ appကပါ သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ် နိုင်ပါသည်။"</string>
- <string name="monitoring_description_legacy_vpn_device_owned" msgid="649791650224064248">"ဒီကိရိယာကို စီမံကွပ်ကဲသူမှာ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူက သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ် နိုင်ပါသည်။ အချက်အလက်များ ပိုပြီး ရယူရန်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\nထို့အပြင်၊ သင်သည် VPN (\"<xliff:g id="APPLICATION">%2$s</xliff:g>\") သို့ ချိတ်ဆက်ထားသည်။ သင်၏ VPN ဝန်ဆောင်မှုကို စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုများကို စောင့်ကြပ်နိုင်သေးသည်။"</string>
- <string name="monitoring_description_profile_owned" msgid="2370062794285691713">"ဒီပရိုဖိုင်ကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူသည် သင်၏ ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုများကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ်နိုင်သည်။ \n\n နောက်ထပ် သိလိုလျှင်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။"</string>
- <string name="monitoring_description_device_and_profile_owned" msgid="8685301493845456293">"ဒီကိရိယာကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့် ပရိုဖိုင်ကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူသည် သင်၏ ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုများကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ်နိုင်သည်။\n\nနောက်ထပ် သိလိုလျှင်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။"</string>
- <string name="monitoring_description_vpn_profile_owned" msgid="847491346263295767">"ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင့် စီမံအုပ်ချုပ်သူက သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်၊ စောင့်ကြပ်နိုင်သည်။ ထပ် သိလိုလျှင်၊ သင့် စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\n သင်သည် \"<xliff:g id="APPLICATION">%2$s</xliff:g>\" အား VPN ချိတ်ဆက်မှု ထူထောင်ခွင့် ပေးခဲ့သည်။ ဒီappကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
- <string name="monitoring_description_legacy_vpn_profile_owned" msgid="4095516964132237051">"ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင့်စီမံအုပ်ချုပ်သူက သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။ ထပ် သိလိုလျှင်၊ သင့်စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\nသင်သည် VPN (\"<xliff:g id="APPLICATION">%2$s</xliff:g>\") သို့ပါ ချိတ်ထားသည်။ သင်၏ VPN စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
- <string name="monitoring_description_vpn_device_and_profile_owned" msgid="9193588924767232909">"ကိရိယာကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့်ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\nသင့်စီမံအုပ်ချုပ်သူသည် သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။\n\nသင်သည် \"<xliff:g id="APPLICATION">%3$s</xliff:g>\"အား VPN ချိတ်ဆက်မှု ထူထောင်ခွင့် ပေးခဲ့သည်။ ဒီappကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
- <string name="monitoring_description_legacy_vpn_device_and_profile_owned" msgid="6935475023447698473">"ဒီကိရိယာ စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့် ပရိုဖိုင် စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\n စီမံအုပ်ချုပ်သူသည် သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။\n\nထပ် သိလိုလျှင်၊ သင့်စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။ သင်သည် VPN (\"<xliff:g id="APPLICATION">%3$s</xliff:g>\") သို့ပါ ချိတ်ထားသည်။ သင်၏ VPN စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
- <string name="keyguard_indication_trust_disabled" msgid="7412534203633528135">"သင်က လက်ဖြင့် သော့မဖွင့်မချင်း ကိရိယာမှာ သော့ပိတ်လျက် ရှိနေမည်"</string>
+ <string name="monitoring_description_vpn_device_owned" msgid="696121105616356493">"ဒီကိရိယာကို စီမံကွပ်ကဲသူမှာ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူက သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ် နိုင်ပါသည်။ အချက်အလက်များ ပိုပြီး ရယူရန်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\n ထို့အပြင် သင်သည် \"<xliff:g id="APPLICATION">%2$s</xliff:g>\" အား VPN ချိတ်ဆက်မှု စဖွင့်လုပ်ကိုင်ရန် ခွင့်ပြုခဲ့သည်။ ဒီ appကပါ သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ် နိုင်ပါသည်။"</string>
+ <string name="monitoring_description_legacy_vpn_device_owned" msgid="649791650224064248">"ဒီကိရိယာကို စီမံကွပ်ကဲသူမှာ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူက သင်၏ ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ် နိုင်ပါသည်။ အချက်အလက်များ ပိုပြီး ရယူရန်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\nထို့အပြင်၊ သင်သည် VPN (\"<xliff:g id="APPLICATION">%2$s</xliff:g>\") သို့ ချိတ်ဆက်ထားသည်။ သင်၏ VPN ဝန်ဆောင်မှုကို စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုများကို စောင့်ကြပ်နိုင်သေးသည်။"</string>
+ <string name="monitoring_description_profile_owned" msgid="2370062794285691713">"ဒီပရိုဖိုင်ကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူသည် သင်၏ ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုများကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ်နိုင်သည်။ \n\n နောက်ထပ် သိလိုလျှင်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။"</string>
+ <string name="monitoring_description_device_and_profile_owned" msgid="8685301493845456293">"ဒီကိရိယာကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့် ပရိုဖိုင်ကို စီမံကွပ်ကဲပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\nသင်၏ စီမံအုပ်ချုပ်သူသည် သင်၏ ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုများကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို၊ စောင့်ကြပ်နိုင်သည်။\n\nနောက်ထပ် သိလိုလျှင်၊ သင်၏ စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။"</string>
+ <string name="monitoring_description_vpn_profile_owned" msgid="847491346263295767">"ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင့် စီမံအုပ်ချုပ်သူက သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှုကို၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်၊ စောင့်ကြပ်နိုင်သည်။ ထပ် သိလိုလျှင်၊ သင့် စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\n သင်သည် \"<xliff:g id="APPLICATION">%2$s</xliff:g>\" အား VPN ချိတ်ဆက်မှု ထူထောင်ခွင့် ပေးခဲ့သည်။ ဒီappကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
+ <string name="monitoring_description_legacy_vpn_profile_owned" msgid="4095516964132237051">"ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION">%1$s</xliff:g>\n\nသင့်စီမံအုပ်ချုပ်သူက သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။ ထပ် သိလိုလျှင်၊ သင့်စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။\n\nသင်သည် VPN (\"<xliff:g id="APPLICATION">%2$s</xliff:g>\") သို့ပါ ချိတ်ထားသည်။ သင်၏ VPN စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
+ <string name="monitoring_description_vpn_device_and_profile_owned" msgid="9193588924767232909">"ကိရိယာကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့်ပရိုဖိုင်ကို စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\nသင့်စီမံအုပ်ချုပ်သူသည် သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။\n\nသင်သည် \"<xliff:g id="APPLICATION">%3$s</xliff:g>\"အား VPN ချိတ်ဆက်မှု ထူထောင်ခွင့် ပေးခဲ့သည်။ ဒီappကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
+ <string name="monitoring_description_legacy_vpn_device_and_profile_owned" msgid="6935475023447698473">"ဒီကိရိယာ စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_0">%1$s</xliff:g>\nသင့် ပရိုဖိုင် စီမံပေးသူ:\n<xliff:g id="ORGANIZATION_1">%2$s</xliff:g>\n\n စီမံအုပ်ချုပ်သူသည် သင့် ကိရိယာ နှင့် ကွန်ရက် လှုပ်ရှားမှု၊ အီးမေးလ်များ၊ appများ နှင့် လုံခြုံသည့် ဝက်ဘ်ဆိုက်များ အပါအဝင်ကို စောင့်ကြပ်နိုင်သည်။\n\nထပ် သိလိုလျှင်၊ သင့်စီမံအုပ်ချုပ်သူကို ဆက်သွယ်ပါ။ သင်သည် VPN (\"<xliff:g id="APPLICATION">%3$s</xliff:g>\") သို့ပါ ချိတ်ထားသည်။ သင်၏ VPN စီမံပေးသူကပါ ကွန်ရက် လှုပ်ရှားမှုကို စောင့်ကြပ်နိုင်သည်။"</string>
+ <string name="keyguard_indication_trust_disabled" msgid="7412534203633528135">"သင်က လက်ဖြင့် သော့မဖွင့်မချင်း ကိရိယာမှာ သော့ပိတ်လျက် ရှိနေမည်"</string>
<string name="hidden_notifications_title" msgid="7139628534207443290">"အကြောင်းကြားချက်များ မြန်မြန်ရရန်"</string>
- <string name="hidden_notifications_text" msgid="2326409389088668981">"မဖွင့်ခင် ၎င်းတို့ကို ကြည့်ပါ"</string>
+ <string name="hidden_notifications_text" msgid="2326409389088668981">"မဖွင့်ခင် ၎င်းတို့ကို ကြည့်ပါ"</string>
<string name="hidden_notifications_cancel" msgid="3690709735122344913">"မလိုအပ်ပါ"</string>
<string name="hidden_notifications_setup" msgid="41079514801976810">"သတ်မှတ်ရန်"</string>
<string name="zen_mode_and_condition" msgid="4462471036429759903">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>။ <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 9a95b37..98f03b5 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -251,12 +251,21 @@
<!-- Doze: duration to avoid false pickup gestures triggered by notification vibrations -->
<integer name="doze_pickup_vibration_threshold">2000</integer>
+ <!-- Doze: can we assume the pickup sensor includes a proximity check? -->
+ <bool name="doze_pickup_performs_proximity_check">true</bool>
+
<!-- Doze: pulse parameter - how long does it take to fade in? -->
<integer name="doze_pulse_duration_in">900</integer>
- <!-- Doze: pulse parameter - delay for fading so the screen can wake up before -->
+ <!-- Doze: pulse parameter - how long does it take to fade in after a pickup? -->
+ <integer name="doze_pulse_duration_in_pickup">300</integer>
+
+ <!-- Doze: pulse parameter - delay to wait for the screen to wake up -->
<integer name="doze_pulse_delay_in">200</integer>
+ <!-- Doze: pulse parameter - delay to wait for the screen to wake up after a pickup -->
+ <integer name="doze_pulse_delay_in_pickup">200</integer>
+
<!-- Doze: pulse parameter - once faded in, how long does it stay visible? -->
<integer name="doze_pulse_duration_visible">3000</integer>
diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java b/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java
index 7eb9c6e..1f3a830 100644
--- a/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java
+++ b/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java
@@ -153,7 +153,7 @@
sProxStats[pulseReason][near ? 0 : 1].append();
}
- private static String pulseReasonToString(int pulseReason) {
+ public static String pulseReasonToString(int pulseReason) {
switch (pulseReason) {
case PULSE_REASON_INTENT: return "intent";
case PULSE_REASON_NOTIFICATION: return "notification";
diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
index 2341144..8d27450 100644
--- a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
+++ b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
@@ -222,15 +222,25 @@
continuePulsing(reason);
return;
}
- // perform a proximity check before pulsing
final long start = SystemClock.uptimeMillis();
+ final boolean nonBlocking = reason == DozeLog.PULSE_REASON_SENSOR_PICKUP
+ && mDozeParameters.getPickupPerformsProxCheck();
+ if (nonBlocking) {
+ // proximity check is only done to capture statistics, continue pulsing
+ continuePulsing(reason);
+ }
+ // perform a proximity check
new ProximityCheck() {
@Override
public void onProximityResult(int result) {
- // avoid pulsing in pockets
final boolean isNear = result == RESULT_NEAR;
final long end = SystemClock.uptimeMillis();
DozeLog.traceProximityResult(isNear, end - start, reason);
+ if (nonBlocking) {
+ // we already continued
+ return;
+ }
+ // avoid pulsing in pockets
if (isNear) {
mPulsing = false;
mWakeLock.release();
@@ -340,7 +350,8 @@
if (DEBUG) Log.d(mTag, "No more schedule resets remaining");
return;
}
- if ((notificationTimeMs - mNotificationPulseTime) < mDozeParameters.getPulseDuration()) {
+ final long pulseDuration = mDozeParameters.getPulseDuration(false /*pickup*/);
+ if ((notificationTimeMs - mNotificationPulseTime) < pulseDuration) {
if (DEBUG) Log.d(mTag, "Recently updated, not resetting schedule");
return;
}
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
index c524edc..6bad652 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
@@ -47,6 +47,10 @@
ViewGroupAdapterBridge.link(this, mAdapter);
}
+ public void refreshAdapter() {
+ mAdapter.refresh();
+ }
+
public static class Adapter extends UserSwitcherController.BaseUserAdapter
implements OnClickListener {
diff --git a/packages/SystemUI/src/com/android/systemui/recents/AlternateRecentsComponent.java b/packages/SystemUI/src/com/android/systemui/recents/AlternateRecentsComponent.java
index 29f291d..4f0700e 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/AlternateRecentsComponent.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/AlternateRecentsComponent.java
@@ -19,6 +19,7 @@
import android.app.Activity;
import android.app.ActivityManager;
import android.app.ActivityOptions;
+import android.app.ITaskStackListener;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetProviderInfo;
import android.content.ActivityNotFoundException;
@@ -56,6 +57,7 @@
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
+
/** A proxy implementation for the recents component */
public class AlternateRecentsComponent implements ActivityOptions.OnAnimationStartedListener {
@@ -79,6 +81,28 @@
final static String sRecentsPackage = "com.android.systemui";
final static String sRecentsActivity = "com.android.systemui.recents.RecentsActivity";
+ /**
+ * An implementation of ITaskStackListener, that allows us to listen for changes to the system
+ * task stacks and update recents accordingly.
+ */
+ class TaskStackListenerImpl extends ITaskStackListener.Stub {
+ @Override
+ public void onTaskStackChanged() {
+ RecentsConfiguration config = RecentsConfiguration.getInstance();
+ if (config.svelteLevel == RecentsConfiguration.SVELTE_NONE) {
+ // Load the next task only if we aren't svelte
+ RecentsTaskLoader loader = RecentsTaskLoader.getInstance();
+ RecentsTaskLoadPlan plan = loader.createLoadPlan(mContext);
+ loader.preloadTasks(plan, true /* isTopTaskHome */);
+ RecentsTaskLoadPlan.Options launchOpts = new RecentsTaskLoadPlan.Options();
+ launchOpts.numVisibleTasks = 1;
+ launchOpts.numVisibleTaskThumbnails = 1;
+ launchOpts.onlyLoadForCache = true;
+ loader.loadTasks(mContext, plan, launchOpts);
+ }
+ }
+ }
+
static RecentsComponent.Callbacks sRecentsComponentCallbacks;
static RecentsTaskLoadPlan sInstanceLoadPlan;
@@ -86,6 +110,7 @@
LayoutInflater mInflater;
SystemServicesProxy mSystemServicesProxy;
Handler mHandler;
+ TaskStackListenerImpl mTaskStackListener;
boolean mBootCompleted;
boolean mStartAnimationTriggered;
boolean mCanReuseTaskStackViews = true;
@@ -116,6 +141,10 @@
mSystemServicesProxy = new SystemServicesProxy(context);
mHandler = new Handler();
mTaskStackBounds = new Rect();
+
+ // Register the task stack listener
+ mTaskStackListener = new TaskStackListenerImpl();
+ mSystemServicesProxy.registerTaskStackListener(mTaskStackListener);
}
public void onStart() {
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
index 6dc2edb..a37bc54 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
@@ -167,10 +167,6 @@
if (action.equals(Intent.ACTION_SCREEN_OFF)) {
// When the screen turns off, dismiss Recents to Home
dismissRecentsToHome(false);
- // Preload the metadata for all tasks in the background
- RecentsTaskLoader loader = RecentsTaskLoader.getInstance();
- RecentsTaskLoadPlan plan = loader.createLoadPlan(context);
- loader.preloadTasks(plan, true /* isTopTaskHome */);
} else if (action.equals(SearchManager.INTENT_GLOBAL_SEARCH_ACTIVITY_CHANGED)) {
// When the search activity changes, update the Search widget
refreshSearchWidget();
@@ -437,22 +433,6 @@
onEnterAnimationTriggered();
}
- // Start listening for widget package changes if there is one bound, post it since we don't
- // want it stalling the startup
- if (mConfig.searchBarAppWidgetId >= 0) {
- final WeakReference<RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks> callback =
- new WeakReference<RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks>(this);
- mRecentsView.post(new Runnable() {
- @Override
- public void run() {
- RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks cb = callback.get();
- if (cb != null) {
- mAppWidgetHost.startListening(cb);
- }
- }
- });
- }
-
mStatusBar = ((SystemUIApplication) getApplication())
.getComponent(PhoneStatusBar.class);
}
@@ -539,15 +519,29 @@
unregisterReceiver(mSystemBroadcastReceiver);
// Stop listening for widget package changes if there was one bound
- if (mAppWidgetHost.isListening()) {
- mAppWidgetHost.stopListening();
- }
+ mAppWidgetHost.stopListening();
}
public void onEnterAnimationTriggered() {
// Try and start the enter animation (or restart it on configuration changed)
ReferenceCountedTrigger t = new ReferenceCountedTrigger(this, null, null, null);
- mRecentsView.startEnterRecentsAnimation(new ViewAnimation.TaskViewEnterContext(t));
+ ViewAnimation.TaskViewEnterContext ctx = new ViewAnimation.TaskViewEnterContext(t);
+ mRecentsView.startEnterRecentsAnimation(ctx);
+ if (mConfig.searchBarAppWidgetId >= 0) {
+ final WeakReference<RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks> cbRef =
+ new WeakReference<RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks>(
+ RecentsActivity.this);
+ ctx.postAnimationTrigger.addLastDecrementRunnable(new Runnable() {
+ @Override
+ public void run() {
+ // Start listening for widget package changes if there is one bound
+ RecentsAppWidgetHost.RecentsAppWidgetHostCallbacks cb = cbRef.get();
+ if (cb != null) {
+ mAppWidgetHost.startListening(cb);
+ }
+ }
+ });
+ }
// Animate the SystemUI scrim views
mScrimViews.startEnterRecentsAnimation();
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsAppWidgetHost.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsAppWidgetHost.java
index a63e167..5bae37a 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsAppWidgetHost.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsAppWidgetHost.java
@@ -43,23 +43,23 @@
public void startListening(RecentsAppWidgetHostCallbacks cb) {
mCb = cb;
- mIsListening = true;
- super.startListening();
+ if (!mIsListening) {
+ mIsListening = true;
+ super.startListening();
+ }
}
@Override
public void stopListening() {
- super.stopListening();
+ if (mIsListening) {
+ super.stopListening();
+ }
// Ensure that we release any references to the callbacks
mCb = null;
mContext = null;
mIsListening = false;
}
- public boolean isListening() {
- return mIsListening;
- }
-
@Override
protected void onProviderChanged(int appWidgetId, AppWidgetProviderInfo appWidgetInfo) {
if (mCb == null) return;
diff --git a/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java b/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
index 9a4bd08..3fbd5a6 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
@@ -21,6 +21,7 @@
import android.app.ActivityOptions;
import android.app.AppGlobals;
import android.app.IActivityManager;
+import android.app.ITaskStackListener;
import android.app.SearchManager;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetManager;
@@ -536,4 +537,15 @@
e.printStackTrace();
}
}
+
+ /** Registers a task stack listener with the system. */
+ public void registerTaskStackListener(ITaskStackListener listener) {
+ if (mIam == null) return;
+
+ try {
+ mIam.registerTaskStackListener(listener);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
}
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
index 46a5d8d..746a7df 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
@@ -204,6 +204,10 @@
/** Requests all task stacks to start their enter-recents animation */
public void startEnterRecentsAnimation(ViewAnimation.TaskViewEnterContext ctx) {
+ // We have to increment/decrement the post animation trigger in case there are no children
+ // to ensure that it runs
+ ctx.postAnimationTrigger.increment();
+
int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
View child = getChildAt(i);
@@ -212,6 +216,7 @@
stackView.startEnterRecentsAnimation(ctx);
}
}
+ ctx.postAnimationTrigger.decrement();
}
/** Requests all task stacks to start their exit-recents animation */
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
index 2623db3..33a36f6 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
@@ -530,11 +530,12 @@
/** Resets the focused task. */
void resetFocusedTask() {
- if ((mStack != null) && (0 <= mFocusedTaskIndex) &&
- (mFocusedTaskIndex < mStack.getTaskCount())) {
+ if ((0 <= mFocusedTaskIndex) && (mFocusedTaskIndex < mStack.getTaskCount())) {
Task t = mStack.getTasks().get(mFocusedTaskIndex);
TaskView tv = getChildViewForTask(t);
- tv.unsetFocusedTask();
+ if (tv != null) {
+ tv.unsetFocusedTask();
+ }
}
mFocusedTaskIndex = -1;
}
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/ViewAnimation.java b/packages/SystemUI/src/com/android/systemui/recents/views/ViewAnimation.java
index 4586f12..e1d80fd 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/ViewAnimation.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/ViewAnimation.java
@@ -27,7 +27,7 @@
public static class TaskViewEnterContext {
// A trigger to run some logic when all the animations complete. This works around the fact
// that it is difficult to coordinate ViewPropertyAnimators
- ReferenceCountedTrigger postAnimationTrigger;
+ public ReferenceCountedTrigger postAnimationTrigger;
// An update listener to notify as the enter animation progresses (used for the home transition)
ValueAnimator.AnimatorUpdateListener updateListener;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java
index 3d4a1e0..6b167b4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java
@@ -46,9 +46,12 @@
public void dump(PrintWriter pw) {
pw.println(" DozeParameters:");
pw.print(" getDisplayStateSupported(): "); pw.println(getDisplayStateSupported());
- pw.print(" getPulseDuration(): "); pw.println(getPulseDuration());
- pw.print(" getPulseInDuration(): "); pw.println(getPulseInDuration());
- pw.print(" getPulseInDelay(): "); pw.println(getPulseInDelay());
+ pw.print(" getPulseDuration(pickup=false): "); pw.println(getPulseDuration(false));
+ pw.print(" getPulseDuration(pickup=true): "); pw.println(getPulseDuration(true));
+ pw.print(" getPulseInDuration(pickup=false): "); pw.println(getPulseInDuration(false));
+ pw.print(" getPulseInDuration(pickup=true): "); pw.println(getPulseInDuration(true));
+ pw.print(" getPulseInDelay(pickup=false): "); pw.println(getPulseInDelay(false));
+ pw.print(" getPulseInDelay(pickup=true): "); pw.println(getPulseInDelay(true));
pw.print(" getPulseInVisibleDuration(): "); pw.println(getPulseVisibleDuration());
pw.print(" getPulseOutDuration(): "); pw.println(getPulseOutDuration());
pw.print(" getPulseOnSigMotion(): "); pw.println(getPulseOnSigMotion());
@@ -60,22 +63,27 @@
pw.print(" getPulseSchedule(): "); pw.println(getPulseSchedule());
pw.print(" getPulseScheduleResets(): "); pw.println(getPulseScheduleResets());
pw.print(" getPickupVibrationThreshold(): "); pw.println(getPickupVibrationThreshold());
+ pw.print(" getPickupPerformsProxCheck(): "); pw.println(getPickupPerformsProxCheck());
}
public boolean getDisplayStateSupported() {
return getBoolean("doze.display.supported", R.bool.doze_display_state_supported);
}
- public int getPulseDuration() {
- return getPulseInDuration() + getPulseVisibleDuration() + getPulseOutDuration();
+ public int getPulseDuration(boolean pickup) {
+ return getPulseInDuration(pickup) + getPulseVisibleDuration() + getPulseOutDuration();
}
- public int getPulseInDuration() {
- return getInt("doze.pulse.duration.in", R.integer.doze_pulse_duration_in);
+ public int getPulseInDuration(boolean pickup) {
+ return pickup
+ ? getInt("doze.pulse.duration.in.pickup", R.integer.doze_pulse_duration_in_pickup)
+ : getInt("doze.pulse.duration.in", R.integer.doze_pulse_duration_in);
}
- public int getPulseInDelay() {
- return getInt("doze.pulse.delay.in", R.integer.doze_pulse_delay_in);
+ public int getPulseInDelay(boolean pickup) {
+ return pickup
+ ? getInt("doze.pulse.delay.in.pickup", R.integer.doze_pulse_delay_in_pickup)
+ : getInt("doze.pulse.delay.in", R.integer.doze_pulse_delay_in);
}
public int getPulseVisibleDuration() {
@@ -106,6 +114,10 @@
return getBoolean("doze.pulse.proxcheck", R.bool.doze_proximity_check_before_pulse);
}
+ public boolean getPickupPerformsProxCheck() {
+ return getBoolean("doze.pickup.proxcheck", R.bool.doze_pickup_performs_proximity_check);
+ }
+
public boolean getPulseOnNotifications() {
return getBoolean("doze.pulse.notifications", R.bool.doze_pulse_on_notifications);
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java
index 022e64e..3e17328 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java
@@ -21,10 +21,8 @@
import android.animation.ValueAnimator;
import android.annotation.NonNull;
import android.content.Context;
-import android.graphics.Color;
import android.os.Handler;
import android.util.Log;
-import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.Interpolator;
@@ -40,6 +38,7 @@
private final DozeParameters mDozeParameters;
private final Interpolator mPulseInInterpolator = PhoneStatusBar.ALPHA_OUT;
+ private final Interpolator mPulseInInterpolatorPickup;
private final Interpolator mPulseOutInterpolator = PhoneStatusBar.ALPHA_IN;
private final Interpolator mDozeAnimationInterpolator;
private final Handler mHandler = new Handler();
@@ -56,8 +55,8 @@
public DozeScrimController(ScrimController scrimController, Context context) {
mScrimController = scrimController;
mDozeParameters = new DozeParameters(context);
- mDozeAnimationInterpolator = AnimationUtils.loadInterpolator(context,
- android.R.interpolator.linear_out_slow_in);
+ mDozeAnimationInterpolator = mPulseInInterpolatorPickup =
+ AnimationUtils.loadInterpolator(context, android.R.interpolator.linear_out_slow_in);
}
public void setDozing(boolean dozing, boolean animate) {
@@ -219,11 +218,16 @@
private final Runnable mPulseIn = new Runnable() {
@Override
public void run() {
- if (DEBUG) Log.d(TAG, "Pulse in, mDozing=" + mDozing);
+ if (DEBUG) Log.d(TAG, "Pulse in, mDozing=" + mDozing + " mPulseReason="
+ + DozeLog.pulseReasonToString(mPulseReason));
if (!mDozing) return;
DozeLog.tracePulseStart(mPulseReason);
- startScrimAnimation(true /* inFront */, 0f, mDozeParameters.getPulseInDuration(),
- mPulseInInterpolator, mDozeParameters.getPulseInDelay(), mPulseInFinished);
+ final boolean pickup = mPulseReason == DozeLog.PULSE_REASON_SENSOR_PICKUP;
+ startScrimAnimation(true /* inFront */, 0f,
+ mDozeParameters.getPulseInDuration(pickup),
+ pickup ? mPulseInInterpolatorPickup : mPulseInInterpolator,
+ mDozeParameters.getPulseInDelay(pickup),
+ mPulseInFinished);
// Signal that the pulse is ready to turn the screen on and draw.
pulseStarted();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyguardUserSwitcher.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyguardUserSwitcher.java
index 7ee1fc5..1460e5f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyguardUserSwitcher.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyguardUserSwitcher.java
@@ -107,6 +107,7 @@
public void show(boolean animate) {
if (mUserSwitcher != null && mUserSwitcherContainer.getVisibility() != View.VISIBLE) {
cancelAnimations();
+ mAdapter.refresh();
mUserSwitcherContainer.setVisibility(View.VISIBLE);
mStatusBarView.setKeyguardUserSwitcherShowing(true, animate);
if (animate) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
index 39610e9..6431ab5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
@@ -428,8 +428,9 @@
updateNoSims();
}
- private void updateNoSims() {
- boolean hasNoSims = mPhone.getPhoneCount() != 0 && mMobileSignalControllers.size() == 0;
+ @VisibleForTesting
+ protected void updateNoSims() {
+ boolean hasNoSims = mHasMobileDataFeature && mMobileSignalControllers.size() == 0;
if (hasNoSims != mHasNoSims) {
mHasNoSims = hasNoSims;
notifyListeners();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java
index e5b357a..4ac41a1 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java
@@ -417,18 +417,6 @@
}
}
- public int getSwitchableUsers() {
- int result = 0;
- ArrayList<UserRecord> users = mController.mUsers;
- int N = users.size();
- for (int i = 0; i < N; i++) {
- if (users.get(i).info != null) {
- result++;
- }
- }
- return result;
- }
-
public Drawable getDrawable(Context context, UserRecord item) {
if (item.isAddUser) {
return context.getDrawable(R.drawable.ic_add_circle_qs);
@@ -436,6 +424,10 @@
return UserIcons.getDefaultUserIcon(item.isGuest ? UserHandle.USER_NULL : item.info.id,
/* light= */ true);
}
+
+ public void refresh() {
+ mController.refreshUsers(UserHandle.USER_NULL);
+ }
}
public static final class UserRecord {
@@ -500,6 +492,7 @@
} else {
v = (UserDetailView) convertView;
}
+ v.refreshAdapter();
return v;
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
index eaf2f78..020bc00 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
@@ -195,6 +195,18 @@
mPhoneStateListener.onDataActivity(dataActivity);
}
+ protected void verifyHasNoSims(boolean hasNoSimsVisible) {
+ ArgumentCaptor<Boolean> hasNoSimsArg = ArgumentCaptor.forClass(Boolean.class);
+
+ Mockito.verify(mSignalCluster, Mockito.atLeastOnce()).setNoSims(hasNoSimsArg.capture());
+ assertEquals("No sims in status bar", hasNoSimsVisible, (boolean) hasNoSimsArg.getValue());
+
+ Mockito.verify(mNetworkSignalChangedCallback, Mockito.atLeastOnce())
+ .onNoSimVisibleChanged(hasNoSimsArg.capture());
+ assertEquals("No sims in quick settings", hasNoSimsVisible,
+ (boolean) hasNoSimsArg.getValue());
+ }
+
protected void verifyLastQsMobileDataIndicators(boolean visible, int icon, int typeIcon,
boolean dataIn, boolean dataOut) {
ArgumentCaptor<Integer> iconArg = ArgumentCaptor.forClass(Integer.class);
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java
index b5d97d9..33eb4d6 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java
@@ -25,6 +25,30 @@
verifyLastMobileDataIndicators(false, 0, 0);
}
+ public void testNoSimsIconPresent() {
+ // No Subscriptions.
+ mNetworkController.mMobileSignalControllers.clear();
+ mNetworkController.updateNoSims();
+
+ verifyHasNoSims(true);
+ }
+
+ public void testNoSimlessIconWithoutMobile() {
+ // Turn off mobile network support.
+ Mockito.when(mMockCm.isNetworkSupported(ConnectivityManager.TYPE_MOBILE)).thenReturn(false);
+ // Create a new NetworkController as this is currently handled in constructor.
+ mNetworkController = new NetworkControllerImpl(mContext, mMockCm, mMockTm, mMockWm, mMockSm,
+ mConfig, mock(AccessPointControllerImpl.class),
+ mock(MobileDataControllerImpl.class));
+ setupNetworkController();
+
+ // No Subscriptions.
+ mNetworkController.mMobileSignalControllers.clear();
+ mNetworkController.updateNoSims();
+
+ verifyHasNoSims(false);
+ }
+
public void testSignalStrength() {
for (int testStrength = SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN;
testStrength <= SignalStrength.SIGNAL_STRENGTH_GREAT; testStrength++) {
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
index ca0d481..8b53a62 100644
--- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
+++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
@@ -4055,12 +4055,12 @@
mAppsToBeHidden.remove(appToken);
mAppsThatDismissKeyguard.remove(appToken);
if (mAppsToBeHidden.isEmpty()) {
- if (mKeyguardSecureIncludingHidden) {
+ if (dismissKeyguard && !mKeyguardSecure) {
+ mAppsThatDismissKeyguard.add(appToken);
+ } else {
mWinShowWhenLocked = win;
mHideLockScreen = true;
mForceStatusBarFromKeyguard = false;
- } else if (dismissKeyguard && !mKeyguardSecure) {
- mAppsThatDismissKeyguard.add(appToken);
}
}
} else if (dismissKeyguard) {
diff --git a/services/core/java/com/android/server/AppOpsService.java b/services/core/java/com/android/server/AppOpsService.java
index c3465d1..42a5195 100644
--- a/services/core/java/com/android/server/AppOpsService.java
+++ b/services/core/java/com/android/server/AppOpsService.java
@@ -29,6 +29,7 @@
import java.util.List;
import java.util.Map;
+import android.app.ActivityManager;
import android.app.ActivityThread;
import android.app.AppOpsManager;
import android.content.Context;
@@ -53,7 +54,6 @@
import android.util.Pair;
import android.util.Slog;
import android.util.SparseArray;
-import android.util.SparseIntArray;
import android.util.TimeUtils;
import android.util.Xml;
@@ -78,10 +78,12 @@
final Handler mHandler;
boolean mWriteScheduled;
+ boolean mFastWriteScheduled;
final Runnable mWriteRunner = new Runnable() {
public void run() {
synchronized (AppOpsService.this) {
mWriteScheduled = false;
+ mFastWriteScheduled = false;
AsyncTask<Void, Void, Void> task = new AsyncTask<Void, Void, Void>() {
@Override protected Void doInBackground(Void... params) {
writeState();
@@ -237,7 +239,7 @@
}
}
if (changed) {
- scheduleWriteLocked();
+ scheduleFastWriteLocked();
}
}
}
@@ -250,7 +252,7 @@
if (pkgs.size() <= 0) {
mUidOps.remove(uid);
}
- scheduleWriteLocked();
+ scheduleFastWriteLocked();
}
}
}
@@ -260,7 +262,7 @@
synchronized (this) {
if (mUidOps.indexOfKey(uid) >= 0) {
mUidOps.remove(uid);
- scheduleWriteLocked();
+ scheduleFastWriteLocked();
}
}
}
@@ -400,7 +402,7 @@
// if there is nothing else interesting in it.
pruneOp(op, uid, packageName);
}
- scheduleWriteNowLocked();
+ scheduleFastWriteLocked();
}
}
}
@@ -436,16 +438,20 @@
}
@Override
- public void resetAllModes() {
- int callingUid = Binder.getCallingUid();
+ public void resetAllModes(int reqUserId, String reqPackageName) {
+ final int callingPid = Binder.getCallingPid();
+ final int callingUid = Binder.getCallingUid();
mContext.enforcePermission(android.Manifest.permission.UPDATE_APP_OPS_STATS,
- Binder.getCallingPid(), callingUid, null);
+ callingPid, callingUid, null);
+ reqUserId = ActivityManager.handleIncomingUser(callingPid, callingUid, reqUserId,
+ true, true, "resetAllModes", null);
HashMap<Callback, ArrayList<Pair<String, Integer>>> callbacks = null;
synchronized (this) {
boolean changed = false;
for (int i=mUidOps.size()-1; i>=0; i--) {
HashMap<String, Ops> packages = mUidOps.valueAt(i);
- if (UserHandle.getUserId(callingUid) != UserHandle.getUserId(mUidOps.keyAt(i))) {
+ if (reqUserId != UserHandle.USER_ALL
+ && reqUserId != UserHandle.getUserId(mUidOps.keyAt(i))) {
// Skip any ops for a different user
continue;
}
@@ -453,6 +459,10 @@
while (it.hasNext()) {
Map.Entry<String, Ops> ent = it.next();
String packageName = ent.getKey();
+ if (reqPackageName != null && !reqPackageName.equals(packageName)) {
+ // Skip any ops for a different package
+ continue;
+ }
Ops pkgOps = ent.getValue();
for (int j=pkgOps.size()-1; j>=0; j--) {
Op curOp = pkgOps.valueAt(j);
@@ -478,7 +488,7 @@
}
}
if (changed) {
- scheduleWriteNowLocked();
+ scheduleFastWriteLocked();
}
}
if (callbacks != null) {
@@ -837,12 +847,13 @@
}
}
- private void scheduleWriteNowLocked() {
- if (!mWriteScheduled) {
+ private void scheduleFastWriteLocked() {
+ if (!mFastWriteScheduled) {
mWriteScheduled = true;
+ mFastWriteScheduled = true;
+ mHandler.removeCallbacks(mWriteRunner);
+ mHandler.postDelayed(mWriteRunner, 10*1000);
}
- mHandler.removeCallbacks(mWriteRunner);
- mHandler.post(mWriteRunner);
}
private Op getOpLocked(int code, int uid, String packageName, boolean edit) {
@@ -1236,12 +1247,11 @@
pw.print(" ago");
}
if (op.duration == -1) {
- pw.println(" (running)");
- } else {
- pw.print("; duration=");
- TimeUtils.formatDuration(op.duration, pw);
- pw.println();
+ pw.print(" (running)");
+ } else if (op.duration != 0) {
+ pw.print("; duration="); TimeUtils.formatDuration(op.duration, pw);
}
+ pw.println();
}
}
}
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index c5af085..84fddd7 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -797,17 +797,6 @@
throw new IllegalStateException("No free netIds");
}
- private int getConnectivityChangeDelay() {
- final ContentResolver cr = mContext.getContentResolver();
-
- /** Check system properties for the default value then use secure settings value, if any. */
- int defaultDelay = SystemProperties.getInt(
- "conn." + Settings.Global.CONNECTIVITY_CHANGE_DELAY,
- ConnectivityManager.CONNECTIVITY_CHANGE_DELAY_DEFAULT);
- return Settings.Global.getInt(cr, Settings.Global.CONNECTIVITY_CHANGE_DELAY,
- defaultDelay);
- }
-
private boolean teardown(NetworkStateTracker netTracker) {
if (netTracker.teardown()) {
netTracker.setTeardownRequested(true);
@@ -1479,11 +1468,6 @@
sendGeneralBroadcast(info, CONNECTIVITY_ACTION);
}
- private void sendConnectedBroadcastDelayed(NetworkInfo info, int delayMs) {
- sendGeneralBroadcast(info, CONNECTIVITY_ACTION_IMMEDIATE);
- sendGeneralBroadcastDelayed(info, CONNECTIVITY_ACTION, delayMs);
- }
-
private void sendInetConditionBroadcast(NetworkInfo info) {
sendGeneralBroadcast(info, ConnectivityManager.INET_CONDITION_ACTION);
}
@@ -1515,10 +1499,6 @@
sendStickyBroadcast(makeGeneralIntent(info, bcastType));
}
- private void sendGeneralBroadcastDelayed(NetworkInfo info, String bcastType, int delayMs) {
- sendStickyBroadcastDelayed(makeGeneralIntent(info, bcastType), delayMs);
- }
-
private void sendDataActivityBroadcast(int deviceType, boolean active, long tsNanos) {
Intent intent = new Intent(ConnectivityManager.ACTION_DATA_ACTIVITY_CHANGE);
intent.putExtra(ConnectivityManager.EXTRA_DEVICE_TYPE, deviceType);
@@ -1552,19 +1532,6 @@
}
}
- private void sendStickyBroadcastDelayed(Intent intent, int delayMs) {
- if (delayMs <= 0) {
- sendStickyBroadcast(intent);
- } else {
- if (VDBG) {
- log("sendStickyBroadcastDelayed: delayMs=" + delayMs + ", action="
- + intent.getAction());
- }
- mHandler.sendMessageDelayed(mHandler.obtainMessage(
- EVENT_SEND_STICKY_BROADCAST_INTENT, intent), delayMs);
- }
- }
-
void systemReady() {
// start network sampling ..
Intent intent = new Intent(ACTION_PKT_CNT_SAMPLE_INTERVAL_ELAPSED);
@@ -4307,7 +4274,7 @@
info.setType(type);
if (connected) {
info.setDetailedState(DetailedState.CONNECTED, null, info.getExtraInfo());
- sendConnectedBroadcastDelayed(info, getConnectivityChangeDelay());
+ sendConnectedBroadcast(info);
} else {
info.setDetailedState(DetailedState.DISCONNECTED, null, info.getExtraInfo());
Intent intent = new Intent(ConnectivityManager.CONNECTIVITY_ACTION);
@@ -4338,10 +4305,9 @@
final Intent immediateIntent = new Intent(intent);
immediateIntent.setAction(CONNECTIVITY_ACTION_IMMEDIATE);
sendStickyBroadcast(immediateIntent);
- sendStickyBroadcastDelayed(intent, getConnectivityChangeDelay());
+ sendStickyBroadcast(intent);
if (newDefaultAgent != null) {
- sendConnectedBroadcastDelayed(newDefaultAgent.networkInfo,
- getConnectivityChangeDelay());
+ sendConnectedBroadcast(newDefaultAgent.networkInfo);
}
}
}
diff --git a/services/core/java/com/android/server/MmsServiceBroker.java b/services/core/java/com/android/server/MmsServiceBroker.java
index b1c4955..83b1919 100644
--- a/services/core/java/com/android/server/MmsServiceBroker.java
+++ b/services/core/java/com/android/server/MmsServiceBroker.java
@@ -207,20 +207,6 @@
return mTelephonyManager;
}
- /*
- * Throws a security exception unless the caller has carrier privilege.
- */
- private void enforceCarrierPrivilege() {
- final String[] packages = getPackageManager().getPackagesForUid(Binder.getCallingUid());
- for (String pkg : packages) {
- if (getTelephonyManager().checkCarrierPrivilegesForPackage(pkg) ==
- TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS) {
- return;
- }
- }
- throw new SecurityException("No carrier privilege");
- }
-
private String getCallingPackageName() {
final String[] packages = getPackageManager().getPackagesForUid(Binder.getCallingUid());
if (packages != null && packages.length > 0) {
@@ -270,19 +256,6 @@
}
@Override
- public void updateMmsSendStatus(int messageRef, byte[] pdu, int status)
- throws RemoteException {
- enforceCarrierPrivilege();
- getServiceGuarded().updateMmsSendStatus(messageRef, pdu, status);
- }
-
- @Override
- public void updateMmsDownloadStatus(int messageRef, int status) throws RemoteException {
- enforceCarrierPrivilege();
- getServiceGuarded().updateMmsDownloadStatus(messageRef, status);
- }
-
- @Override
public Bundle getCarrierConfigValues(int subId) throws RemoteException {
Slog.d(TAG, "getCarrierConfigValues() by " + getCallingPackageName());
return getServiceGuarded().getCarrierConfigValues(subId);
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 7e17043..6823119 100755
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -37,6 +37,7 @@
import android.app.IActivityContainer;
import android.app.IActivityContainerCallback;
import android.app.IAppTask;
+import android.app.ITaskStackListener;
import android.app.ProfilerInfo;
import android.app.admin.DevicePolicyManager;
import android.app.usage.UsageEvents;
@@ -292,7 +293,7 @@
static final boolean IS_USER_BUILD = "user".equals(Build.TYPE);
// Maximum number recent bitmaps to keep in memory.
- static final int MAX_RECENT_BITMAPS = 5;
+ static final int MAX_RECENT_BITMAPS = 3;
// Amount of time after a call to stopAppSwitches() during which we will
// prevent further untrusted switches from happening.
@@ -370,6 +371,9 @@
static final int LAST_PREBOOT_DELIVERED_FILE_VERSION = 10000;
+ // Delay in notifying task stack change listeners (in millis)
+ static final int NOTIFY_TASK_STACK_CHANGE_LISTENERS_DELAY = 1000;
+
/** All system services */
SystemServiceManager mSystemServiceManager;
@@ -378,6 +382,10 @@
/** Run all ActivityStacks through this */
ActivityStackSupervisor mStackSupervisor;
+ /** Task stack change listeners. */
+ private RemoteCallbackList<ITaskStackListener> mTaskStackListeners =
+ new RemoteCallbackList<ITaskStackListener>();
+
public IntentFirewall mIntentFirewall;
// Whether we should show our dialogs (ANR, crash, etc) or just perform their
@@ -1219,6 +1227,7 @@
static final int START_USER_SWITCH_MSG = 46;
static final int SEND_LOCALE_TO_MOUNT_DAEMON_MSG = 47;
static final int DISMISS_DIALOG_MSG = 48;
+ static final int NOTIFY_TASK_STACK_CHANGE_LISTENERS_MSG = 49;
static final int FIRST_ACTIVITY_STACK_MSG = 100;
static final int FIRST_BROADCAST_QUEUE_MSG = 200;
@@ -1738,6 +1747,22 @@
d.dismiss();
break;
}
+ case NOTIFY_TASK_STACK_CHANGE_LISTENERS_MSG: {
+ synchronized (ActivityManagerService.this) {
+ int i = mTaskStackListeners.beginBroadcast();
+ while (i > 0) {
+ i--;
+ try {
+ // Make a one-way callback to the listener
+ mTaskStackListeners.getBroadcastItem(i).onTaskStackChanged();
+ } catch (RemoteException e){
+ // Handled by the RemoteCallbackList
+ }
+ }
+ mTaskStackListeners.finishBroadcast();
+ }
+ break;
+ }
}
}
};
@@ -2332,6 +2357,16 @@
}
}
+ /** Sets the task stack listener that gets callbacks when a task stack changes. */
+ @Override
+ public void registerTaskStackListener(ITaskStackListener listener) throws RemoteException {
+ synchronized (ActivityManagerService.this) {
+ if (listener != null) {
+ mTaskStackListeners.register(listener);
+ }
+ }
+ }
+
@Override
public void notifyActivityDrawn(IBinder token) {
if (DEBUG_VISBILITY) Slog.d(TAG, "notifyActivityDrawn: token=" + token);
@@ -3643,12 +3678,12 @@
if(DEBUG_TASKS) Slog.i(TAG, "remove RecentTask " + tr
+ " when finishing user" + userId);
mRecentTasks.remove(i);
- tr.removedFromRecents(mTaskPersister);
+ tr.removedFromRecents();
}
}
// Remove tasks from persistent storage.
- mTaskPersister.wakeup(null, true);
+ notifyTaskPersisterLocked(null, true);
}
// Sort by taskId
@@ -3660,7 +3695,7 @@
};
// Extract the affiliates of the chain containing mRecentTasks[start].
- private int processNextAffiliateChain(int start) {
+ private int processNextAffiliateChainLocked(int start) {
final TaskRecord startTask = mRecentTasks.get(start);
final int affiliateId = startTask.mAffiliatedTaskId;
@@ -3695,7 +3730,7 @@
if (first.mNextAffiliate != null) {
Slog.w(TAG, "Link error 1 first.next=" + first.mNextAffiliate);
first.setNextAffiliate(null);
- mTaskPersister.wakeup(first, false);
+ notifyTaskPersisterLocked(first, false);
}
// Everything in the middle is doubly linked from next to prev.
final int tmpSize = mTmpRecents.size();
@@ -3706,13 +3741,13 @@
Slog.w(TAG, "Link error 2 next=" + next + " prev=" + next.mPrevAffiliate +
" setting prev=" + prev);
next.setPrevAffiliate(prev);
- mTaskPersister.wakeup(next, false);
+ notifyTaskPersisterLocked(next, false);
}
if (prev.mNextAffiliate != next) {
Slog.w(TAG, "Link error 3 prev=" + prev + " next=" + prev.mNextAffiliate +
" setting next=" + next);
prev.setNextAffiliate(next);
- mTaskPersister.wakeup(prev, false);
+ notifyTaskPersisterLocked(prev, false);
}
prev.inRecents = true;
}
@@ -3721,7 +3756,7 @@
if (last.mPrevAffiliate != null) {
Slog.w(TAG, "Link error 4 last.prev=" + last.mPrevAffiliate);
last.setPrevAffiliate(null);
- mTaskPersister.wakeup(last, false);
+ notifyTaskPersisterLocked(last, false);
}
// Insert the group back into mRecentTasks at start.
@@ -3762,7 +3797,7 @@
if (task.autoRemoveRecents && task.getTopActivity() == null) {
// This situation is broken, and we should just get rid of it now.
mRecentTasks.remove(i);
- task.removedFromRecents(mTaskPersister);
+ task.removedFromRecents();
i--;
N--;
Slog.w(TAG, "Removing auto-remove without activity: " + task);
@@ -3807,7 +3842,7 @@
if (app == dummyApp || (app.flags&ApplicationInfo.FLAG_INSTALLED) == 0) {
// Doesn't exist any more! Good-bye.
mRecentTasks.remove(i);
- task.removedFromRecents(mTaskPersister);
+ task.removedFromRecents();
i--;
N--;
Slog.w(TAG, "Removing no longer valid recent: " + task);
@@ -3843,7 +3878,7 @@
}
// Verify the affiliate chain for each task.
- for (int i = 0; i < N; i = processNextAffiliateChain(i)) {
+ for (int i = 0; i < N; i = processNextAffiliateChainLocked(i)) {
}
mTmpRecents.clear();
@@ -4009,12 +4044,12 @@
}
if (DEBUG_RECENTS) Slog.d(TAG, "addRecent: trimming tasks for " + task);
- trimRecentsForTask(task, true);
+ trimRecentsForTaskLocked(task, true);
N = mRecentTasks.size();
while (N >= ActivityManager.getMaxRecentTasksStatic()) {
final TaskRecord tr = mRecentTasks.remove(N - 1);
- tr.removedFromRecents(mTaskPersister);
+ tr.removedFromRecents();
N--;
}
task.inRecents = true;
@@ -4079,7 +4114,7 @@
* If needed, remove oldest existing entries in recents that are for the same kind
* of task as the given one.
*/
- int trimRecentsForTask(TaskRecord task, boolean doTrim) {
+ int trimRecentsForTaskLocked(TaskRecord task, boolean doTrim) {
int N = mRecentTasks.size();
final Intent intent = task.intent;
final boolean document = intent != null && intent.isDocument();
@@ -4126,7 +4161,7 @@
tr.disposeThumbnail();
mRecentTasks.remove(i);
if (task != tr) {
- tr.removedFromRecents(mTaskPersister);
+ tr.removedFromRecents();
}
i--;
N--;
@@ -7989,10 +8024,6 @@
return list;
}
- TaskRecord getMostRecentTask() {
- return mRecentTasks.get(0);
- }
-
/**
* Creates a new RecentTaskInfo from a TaskRecord.
*/
@@ -8221,7 +8252,7 @@
TaskRecord task = new TaskRecord(this, mStackSupervisor.getNextTaskId(), ainfo,
intent, description);
- int trimIdx = trimRecentsForTask(task, false);
+ int trimIdx = trimRecentsForTaskLocked(task, false);
if (trimIdx >= 0) {
// If this would have caused a trim, then we'll abort because that
// means it would be added at the end of the list but then just removed.
@@ -8231,7 +8262,7 @@
final int N = mRecentTasks.size();
if (N >= (ActivityManager.getMaxRecentTasksStatic()-1)) {
final TaskRecord tr = mRecentTasks.remove(N - 1);
- tr.removedFromRecents(mTaskPersister);
+ tr.removedFromRecents();
}
task.inRecents = true;
@@ -8291,7 +8322,7 @@
private void cleanUpRemovedTaskLocked(TaskRecord tr, boolean killProcess) {
mRecentTasks.remove(tr);
- tr.removedFromRecents(mTaskPersister);
+ tr.removedFromRecents();
ComponentName component = tr.getBaseIntent().getComponent();
if (component == null) {
Slog.w(TAG, "No component for base intent of task: " + tr);
@@ -9979,6 +10010,7 @@
}
}
+ /** Pokes the task persister. */
void notifyTaskPersisterLocked(TaskRecord task, boolean flush) {
if (task != null && task.stack != null && task.stack.isHomeStack()) {
// Never persist the home stack.
@@ -9987,6 +10019,13 @@
mTaskPersister.wakeup(task, flush);
}
+ /** Notifies all listeners when the task stack has changed. */
+ void notifyTaskStackChangedLocked() {
+ mHandler.removeMessages(NOTIFY_TASK_STACK_CHANGE_LISTENERS_MSG);
+ Message nmsg = mHandler.obtainMessage(NOTIFY_TASK_STACK_CHANGE_LISTENERS_MSG);
+ mHandler.sendMessageDelayed(nmsg, NOTIFY_TASK_STACK_CHANGE_LISTENERS_DELAY);
+ }
+
@Override
public boolean shutdown(int timeout) {
if (checkCallingPermission(android.Manifest.permission.SHUTDOWN)
@@ -10010,12 +10049,12 @@
mBatteryStatsService.shutdown();
synchronized (this) {
mProcessStats.shutdownLocked();
+ notifyTaskPersisterLocked(null, true);
}
- notifyTaskPersisterLocked(null, true);
return timedout;
}
-
+
public final void activitySlept(IBinder token) {
if (localLOGV) Slog.v(TAG, "Activity slept: token=" + token);
diff --git a/services/core/java/com/android/server/am/ActivityRecord.java b/services/core/java/com/android/server/am/ActivityRecord.java
index c12cadb..e37d5f3 100755
--- a/services/core/java/com/android/server/am/ActivityRecord.java
+++ b/services/core/java/com/android/server/am/ActivityRecord.java
@@ -69,7 +69,7 @@
final class ActivityRecord {
static final String TAG = ActivityManagerService.TAG;
static final boolean DEBUG_SAVED_STATE = ActivityStackSupervisor.DEBUG_SAVED_STATE;
- final public static String RECENTS_PACKAGE_NAME = "com.android.systemui.recent";
+ final public static String RECENTS_PACKAGE_NAME = "com.android.systemui.recents";
private static final String TAG_ACTIVITY = "activity";
private static final String ATTR_ID = "id";
@@ -792,7 +792,7 @@
}
}
- void updateThumbnail(Bitmap newThumbnail, CharSequence description) {
+ void updateThumbnailLocked(Bitmap newThumbnail, CharSequence description) {
if (newThumbnail != null) {
if (ActivityManagerService.DEBUG_THUMBNAILS) Slog.i(ActivityManagerService.TAG,
"Setting thumbnail of " + this + " to " + newThumbnail);
diff --git a/services/core/java/com/android/server/am/ActivityStack.java b/services/core/java/com/android/server/am/ActivityStack.java
index ea694ada..ad86aea 100755
--- a/services/core/java/com/android/server/am/ActivityStack.java
+++ b/services/core/java/com/android/server/am/ActivityStack.java
@@ -65,7 +65,6 @@
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.res.Configuration;
-import android.content.res.Resources;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Binder;
@@ -838,7 +837,7 @@
clearLaunchTime(prev);
final ActivityRecord next = mStackSupervisor.topRunningActivityLocked();
if (mService.mHasRecents && (next == null || next.noDisplay || next.task != prev.task || uiSleeping)) {
- prev.updateThumbnail(screenshotActivities(prev), null);
+ prev.updateThumbnailLocked(screenshotActivities(prev), null);
}
stopFullyDrawnTraceIfNeeded();
@@ -950,7 +949,7 @@
r.icicle = icicle;
r.haveState = true;
r.launchCount = 0;
- r.updateThumbnail(null, description);
+ r.updateThumbnailLocked(null, description);
}
if (!r.stopped) {
if (DEBUG_STATES) Slog.v(TAG, "Moving to STOPPED: " + r + " (stop complete)");
@@ -1060,6 +1059,9 @@
}
prev.cpuTimeAtResume = 0; // reset it
}
+
+ // Notfiy when the task stack has changed
+ mService.notifyTaskStackChangedLocked();
}
/**
@@ -4105,7 +4107,7 @@
// Task creator asked to remove this when done, or this task was a voice
// interaction, so it should not remain on the recent tasks list.
mService.mRecentTasks.remove(task);
- task.removedFromRecents(mService.mTaskPersister);
+ task.removedFromRecents();
}
}
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
index 38809cb..d9396d8 100644
--- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
@@ -2871,6 +2871,7 @@
final TaskRecord task = r.task;
task.setLastThumbnail(task.stack.screenshotActivities(r));
mService.addRecentTaskLocked(task);
+ mService.notifyTaskStackChangedLocked();
mWindowManager.setAppVisibility(r.appToken, false);
}
diff --git a/services/core/java/com/android/server/am/TaskRecord.java b/services/core/java/com/android/server/am/TaskRecord.java
index ee93233..d726685 100644
--- a/services/core/java/com/android/server/am/TaskRecord.java
+++ b/services/core/java/com/android/server/am/TaskRecord.java
@@ -383,12 +383,12 @@
setNextAffiliate(null);
}
- void removedFromRecents(TaskPersister persister) {
+ void removedFromRecents() {
disposeThumbnail();
closeRecentsChain();
if (inRecents) {
inRecents = false;
- persister.wakeup(this, false);
+ mService.notifyTaskPersisterLocked(this, false);
}
}
diff --git a/services/core/java/com/android/server/connectivity/NetworkMonitor.java b/services/core/java/com/android/server/connectivity/NetworkMonitor.java
index 225097f..39718ea 100644
--- a/services/core/java/com/android/server/connectivity/NetworkMonitor.java
+++ b/services/core/java/com/android/server/connectivity/NetworkMonitor.java
@@ -215,6 +215,8 @@
// Default to 5s reevaluation delay.
private static final int DEFAULT_REEVALUATE_DELAY_MS = 5000;
private static final int MAX_RETRIES = 10;
+ // Between groups of MAX_RETRIES evaluation attempts, pause 10 mins in hopes ISP outage passes.
+ private static final int REEVALUATE_PAUSE_MS = 10*60*1000;
private final int mReevaluateDelayMs;
private int mReevaluateToken = 0;
private static final int INVALID_UID = -1;
@@ -345,6 +347,7 @@
public void enter() {
mConnectivityServiceHandler.sendMessage(obtainMessage(EVENT_NETWORK_TESTED,
NETWORK_TEST_RESULT_INVALID, 0, mNetworkAgentInfo));
+ if (!mUserDoesNotWant) sendMessageDelayed(CMD_FORCE_REEVALUATION, REEVALUATE_PAUSE_MS);
}
@Override
@@ -360,6 +363,15 @@
return NOT_HANDLED;
}
}
+
+ @Override
+ public void exit() {
+ // NOTE: This removes the delayed message posted by enter() but will inadvertently
+ // remove any other CMD_FORCE_REEVALUATION in the message queue. At the moment this
+ // is harmless. If in the future this becomes problematic a different message could
+ // be used.
+ removeMessages(CMD_FORCE_REEVALUATION);
+ }
}
// Being in the ValidatedState State indicates a Network is:
diff --git a/services/core/java/com/android/server/connectivity/Tethering.java b/services/core/java/com/android/server/connectivity/Tethering.java
index 2c8e1dc..ef86c6c 100644
--- a/services/core/java/com/android/server/connectivity/Tethering.java
+++ b/services/core/java/com/android/server/connectivity/Tethering.java
@@ -429,7 +429,8 @@
if (bluetoothTethered) {
showTetheredNotification(com.android.internal.R.drawable.stat_sys_tether_general);
} else {
- showTetheredNotification(com.android.internal.R.drawable.stat_sys_tether_wifi);
+ /* We now have a status bar icon for WifiTethering, so drop the notification */
+ clearTetheredNotification();
}
} else if (bluetoothTethered) {
showTetheredNotification(com.android.internal.R.drawable.stat_sys_tether_bluetooth);
diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java
index 5f8b389..5df36b4 100644
--- a/services/core/java/com/android/server/hdmi/HdmiControlService.java
+++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java
@@ -993,6 +993,19 @@
mHotplugEventListenerRecords.remove(this);
}
}
+
+ @Override
+ public boolean equals(Object obj) {
+ if (!(obj instanceof HotplugEventListenerRecord)) return false;
+ if (obj == this) return true;
+ HotplugEventListenerRecord other = (HotplugEventListenerRecord) obj;
+ return other.mListener == this.mListener;
+ }
+
+ @Override
+ public int hashCode() {
+ return mListener.hashCode();
+ }
}
private final class DeviceEventListenerRecord implements IBinder.DeathRecipient {
@@ -1549,8 +1562,8 @@
source.queryDisplayStatus(callback);
}
- private void addHotplugEventListener(IHdmiHotplugEventListener listener) {
- HotplugEventListenerRecord record = new HotplugEventListenerRecord(listener);
+ private void addHotplugEventListener(final IHdmiHotplugEventListener listener) {
+ final HotplugEventListenerRecord record = new HotplugEventListenerRecord(listener);
try {
listener.asBinder().linkToDeath(record, 0);
} catch (RemoteException e) {
@@ -1560,6 +1573,24 @@
synchronized (mLock) {
mHotplugEventListenerRecords.add(record);
}
+
+ // Inform the listener of the initial state of each HDMI port by generating
+ // hotplug events.
+ runOnServiceThread(new Runnable() {
+ @Override
+ public void run() {
+ synchronized (mLock) {
+ if (!mHotplugEventListenerRecords.contains(record)) return;
+ }
+ for (HdmiPortInfo port : mPortInfo) {
+ HdmiHotplugEvent event = new HdmiHotplugEvent(port.getId(),
+ mCecController.isConnected(port.getId()));
+ synchronized (mLock) {
+ invokeHotplugEventListenerLocked(listener, event);
+ }
+ }
+ }
+ });
}
private void removeHotplugEventListener(IHdmiHotplugEventListener listener) {
diff --git a/services/core/java/com/android/server/notification/RankingHelper.java b/services/core/java/com/android/server/notification/RankingHelper.java
index aeddecb..6a96f85 100644
--- a/services/core/java/com/android/server/notification/RankingHelper.java
+++ b/services/core/java/com/android/server/notification/RankingHelper.java
@@ -227,23 +227,8 @@
notificationList.get(i).setGlobalSortKey(null);
}
- try {
- // rank each record individually
- Collections.sort(notificationList, mPreliminaryComparator);
- } catch (RuntimeException ex) {
- // Don't crash the system server if something bad happened.
- Log.e(TAG, "Extreme badness during notification sort", ex);
- Log.e(TAG, "Current notification list: ");
- for (int i = 0; i < N; i++) {
- NotificationRecord nr = notificationList.get(i);
- Log.e(TAG, String.format(
- " [%d] %s (group %s, rank %d, sortkey %s)",
- i, nr, nr.getGroupKey(), nr.getAuthoritativeRank(),
- nr.getNotification().getSortKey()));
- }
- // STOPSHIP: remove once b/16626175 is found
- throw ex;
- }
+ // rank each record individually
+ Collections.sort(notificationList, mPreliminaryComparator);
synchronized (mProxyByGroupTmp) {
// record individual ranking result and nominate proxies for each group
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 57a89679..6f1e851 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -4539,26 +4539,35 @@
try {
IMountService ms = PackageHelper.getMountService();
if (ms != null) {
- final long interval = android.provider.Settings.Global.getLong(
- mContext.getContentResolver(),
- android.provider.Settings.Global.FSTRIM_MANDATORY_INTERVAL,
- DEFAULT_MANDATORY_FSTRIM_INTERVAL);
- if (interval > 0) {
- final long timeSinceLast = System.currentTimeMillis() - ms.lastMaintenance();
- if (timeSinceLast > interval) {
- Slog.w(TAG, "No disk maintenance in " + timeSinceLast
- + "; running immediately");
- if (!isFirstBoot()) {
- try {
- ActivityManagerNative.getDefault().showBootMessage(
- mContext.getResources().getString(
- R.string.android_upgrading_fstrim), true);
- } catch (RemoteException e) {
- }
+ final boolean isUpgrade = isUpgrade();
+ boolean doTrim = isUpgrade;
+ if (doTrim) {
+ Slog.w(TAG, "Running disk maintenance immediately due to system update");
+ } else {
+ final long interval = android.provider.Settings.Global.getLong(
+ mContext.getContentResolver(),
+ android.provider.Settings.Global.FSTRIM_MANDATORY_INTERVAL,
+ DEFAULT_MANDATORY_FSTRIM_INTERVAL);
+ if (interval > 0) {
+ final long timeSinceLast = System.currentTimeMillis() - ms.lastMaintenance();
+ if (timeSinceLast > interval) {
+ doTrim = true;
+ Slog.w(TAG, "No disk maintenance in " + timeSinceLast
+ + "; running immediately");
}
- ms.runMaintenance();
}
}
+ if (doTrim) {
+ if (!isFirstBoot()) {
+ try {
+ ActivityManagerNative.getDefault().showBootMessage(
+ mContext.getResources().getString(
+ R.string.android_upgrading_fstrim), true);
+ } catch (RemoteException e) {
+ }
+ }
+ ms.runMaintenance();
+ }
} else {
Slog.e(TAG, "Mount service unavailable!");
}
diff --git a/services/core/java/com/android/server/wm/AppTransition.java b/services/core/java/com/android/server/wm/AppTransition.java
index f6e8bcf..c0d54e1 100644
--- a/services/core/java/com/android/server/wm/AppTransition.java
+++ b/services/core/java/com/android/server/wm/AppTransition.java
@@ -118,7 +118,7 @@
private static final float RECENTS_THUMBNAIL_FADEOUT_FRACTION = 0.3f;
private static final int DEFAULT_APP_TRANSITION_DURATION = 250;
- private static final int THUMBNAIL_APP_TRANSITION_DURATION = 300;
+ private static final int THUMBNAIL_APP_TRANSITION_DURATION = 325;
private static final int THUMBNAIL_APP_TRANSITION_ALPHA_DURATION = 325;
private final Context mContext;
diff --git a/telecomm/java/android/telecom/AudioState.java b/telecomm/java/android/telecom/AudioState.java
index bd63e00..3271ebf 100644
--- a/telecomm/java/android/telecom/AudioState.java
+++ b/telecomm/java/android/telecom/AudioState.java
@@ -91,7 +91,7 @@
@Override
public String toString() {
return String.format(Locale.US,
- "[AudioState isMuted: %b, route; %s, supportedRouteMask: %s]",
+ "[AudioState isMuted: %b, route: %s, supportedRouteMask: %s]",
isMuted,
audioRouteToString(route),
audioRouteToString(supportedRouteMask));
diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java
index 04274c7..f3b0586 100644
--- a/telecomm/java/android/telecom/Connection.java
+++ b/telecomm/java/android/telecom/Connection.java
@@ -838,6 +838,11 @@
return mConnectionCapabilities;
}
+ /** @hide */
+ @SystemApi @Deprecated public final int getCallCapabilities() {
+ return getConnectionCapabilities();
+ }
+
/**
* Sets the value of the {@link #getAddress()} property.
*
diff --git a/telephony/java/android/telephony/ServiceState.java b/telephony/java/android/telephony/ServiceState.java
index 8c2a4eb..559a58c 100644
--- a/telephony/java/android/telephony/ServiceState.java
+++ b/telephony/java/android/telephony/ServiceState.java
@@ -167,10 +167,40 @@
private int mVoiceRegState = STATE_OUT_OF_SERVICE;
private int mDataRegState = STATE_OUT_OF_SERVICE;
- private boolean mRoaming;
- private String mOperatorAlphaLong;
- private String mOperatorAlphaShort;
- private String mOperatorNumeric;
+
+ /**
+ * Roaming type
+ * HOME : in home network
+ * @hide
+ */
+ public static final int ROAMING_TYPE_NOT_ROAMING = 0;
+ /**
+ * Roaming type
+ * UNKNOWN : in a roaming network, but we can not tell if it's domestic or international
+ * @hide
+ */
+ public static final int ROAMING_TYPE_UNKNOWN = 1;
+ /**
+ * Roaming type
+ * DOMESTIC : in domestic roaming network
+ * @hide
+ */
+ public static final int ROAMING_TYPE_DOMESTIC = 2;
+ /**
+ * Roaming type
+ * INTERNATIONAL : in international roaming network
+ * @hide
+ */
+ public static final int ROAMING_TYPE_INTERNATIONAL = 3;
+
+ private int mVoiceRoamingType;
+ private int mDataRoamingType;
+ private String mVoiceOperatorAlphaLong;
+ private String mVoiceOperatorAlphaShort;
+ private String mVoiceOperatorNumeric;
+ private String mDataOperatorAlphaLong;
+ private String mDataOperatorAlphaShort;
+ private String mDataOperatorNumeric;
private boolean mIsManualNetworkSelection;
private boolean mIsEmergencyOnly;
@@ -187,6 +217,29 @@
private int mCdmaEriIconMode;
/**
+ * get String description of roaming type
+ * @hide
+ */
+ public static final String getRoamingLogString(int roamingType) {
+ switch (roamingType) {
+ case ROAMING_TYPE_NOT_ROAMING:
+ return "home";
+
+ case ROAMING_TYPE_UNKNOWN:
+ return "roaming";
+
+ case ROAMING_TYPE_DOMESTIC:
+ return "Domestic Roaming";
+
+ case ROAMING_TYPE_INTERNATIONAL:
+ return "International Roaming";
+
+ default:
+ return "UNKNOWN";
+ }
+ }
+
+ /**
* Create a new ServiceState from a intent notifier Bundle
*
* This method is used by PhoneStateIntentReceiver and maybe by
@@ -221,10 +274,14 @@
protected void copyFrom(ServiceState s) {
mVoiceRegState = s.mVoiceRegState;
mDataRegState = s.mDataRegState;
- mRoaming = s.mRoaming;
- mOperatorAlphaLong = s.mOperatorAlphaLong;
- mOperatorAlphaShort = s.mOperatorAlphaShort;
- mOperatorNumeric = s.mOperatorNumeric;
+ mVoiceRoamingType = s.mVoiceRoamingType;
+ mDataRoamingType = s.mDataRoamingType;
+ mVoiceOperatorAlphaLong = s.mVoiceOperatorAlphaLong;
+ mVoiceOperatorAlphaShort = s.mVoiceOperatorAlphaShort;
+ mVoiceOperatorNumeric = s.mVoiceOperatorNumeric;
+ mDataOperatorAlphaLong = s.mDataOperatorAlphaLong;
+ mDataOperatorAlphaShort = s.mDataOperatorAlphaShort;
+ mDataOperatorNumeric = s.mDataOperatorNumeric;
mIsManualNetworkSelection = s.mIsManualNetworkSelection;
mRilVoiceRadioTechnology = s.mRilVoiceRadioTechnology;
mRilDataRadioTechnology = s.mRilDataRadioTechnology;
@@ -244,10 +301,14 @@
public ServiceState(Parcel in) {
mVoiceRegState = in.readInt();
mDataRegState = in.readInt();
- mRoaming = in.readInt() != 0;
- mOperatorAlphaLong = in.readString();
- mOperatorAlphaShort = in.readString();
- mOperatorNumeric = in.readString();
+ mVoiceRoamingType = in.readInt();
+ mDataRoamingType = in.readInt();
+ mVoiceOperatorAlphaLong = in.readString();
+ mVoiceOperatorAlphaShort = in.readString();
+ mVoiceOperatorNumeric = in.readString();
+ mDataOperatorAlphaLong = in.readString();
+ mDataOperatorAlphaShort = in.readString();
+ mDataOperatorNumeric = in.readString();
mIsManualNetworkSelection = in.readInt() != 0;
mRilVoiceRadioTechnology = in.readInt();
mRilDataRadioTechnology = in.readInt();
@@ -264,10 +325,14 @@
public void writeToParcel(Parcel out, int flags) {
out.writeInt(mVoiceRegState);
out.writeInt(mDataRegState);
- out.writeInt(mRoaming ? 1 : 0);
- out.writeString(mOperatorAlphaLong);
- out.writeString(mOperatorAlphaShort);
- out.writeString(mOperatorNumeric);
+ out.writeInt(mVoiceRoamingType);
+ out.writeInt(mDataRoamingType);
+ out.writeString(mVoiceOperatorAlphaLong);
+ out.writeString(mVoiceOperatorAlphaShort);
+ out.writeString(mVoiceOperatorNumeric);
+ out.writeString(mDataOperatorAlphaLong);
+ out.writeString(mDataOperatorAlphaShort);
+ out.writeString(mDataOperatorNumeric);
out.writeInt(mIsManualNetworkSelection ? 1 : 0);
out.writeInt(mRilVoiceRadioTechnology);
out.writeInt(mRilDataRadioTechnology);
@@ -337,10 +402,45 @@
*
* @return true if TS 27.007 7.2 roaming is true
* and ONS is different from SPN
- *
*/
public boolean getRoaming() {
- return mRoaming;
+ return getVoiceRoaming() || getDataRoaming();
+ }
+
+ /**
+ * Get current voice network roaming status
+ * @return roaming status
+ * @hide
+ */
+ public boolean getVoiceRoaming() {
+ return mVoiceRoamingType != ROAMING_TYPE_NOT_ROAMING;
+ }
+
+ /**
+ * Get current voice network roaming type
+ * @return roaming type
+ * @hide
+ */
+ public int getVoiceRoamingType() {
+ return mVoiceRoamingType;
+ }
+
+ /**
+ * Get current data network roaming type
+ * @return roaming type
+ * @hide
+ */
+ public boolean getDataRoaming() {
+ return mDataRoamingType != ROAMING_TYPE_NOT_ROAMING;
+ }
+
+ /**
+ * Get current data network roaming type
+ * @return roaming type
+ * @hide
+ */
+ public int getDataRoamingType() {
+ return mDataRoamingType;
}
/**
@@ -387,7 +487,25 @@
* @return long name of operator, null if unregistered or unknown
*/
public String getOperatorAlphaLong() {
- return mOperatorAlphaLong;
+ return mVoiceOperatorAlphaLong;
+ }
+
+ /**
+ * Get current registered voice network operator name in long alphanumeric format.
+ * @return long name of operator
+ * @hide
+ */
+ public String getVoiceOperatorAlphaLong() {
+ return mVoiceOperatorAlphaLong;
+ }
+
+ /**
+ * Get current registered data network operator name in long alphanumeric format.
+ * @return long name of voice operator
+ * @hide
+ */
+ public String getDataOperatorAlphaLong() {
+ return mDataOperatorAlphaLong;
}
/**
@@ -398,7 +516,25 @@
* @return short name of operator, null if unregistered or unknown
*/
public String getOperatorAlphaShort() {
- return mOperatorAlphaShort;
+ return mVoiceOperatorAlphaShort;
+ }
+
+ /**
+ * Get current registered voice network operator name in short alphanumeric format.
+ * @return short name of operator, null if unregistered or unknown
+ * @hide
+ */
+ public String getVoiceOperatorAlphaShort() {
+ return mVoiceOperatorAlphaShort;
+ }
+
+ /**
+ * Get current registered data network operator name in short alphanumeric format.
+ * @return short name of operator, null if unregistered or unknown
+ * @hide
+ */
+ public String getDataOperatorAlphaShort() {
+ return mDataOperatorAlphaShort;
}
/**
@@ -414,7 +550,25 @@
* {@link com.android.internal.telephony.MccTable#countryCodeForMcc(int)}.
*/
public String getOperatorNumeric() {
- return mOperatorNumeric;
+ return mVoiceOperatorNumeric;
+ }
+
+ /**
+ * Get current registered voice network operator numeric id.
+ * @return numeric format of operator, null if unregistered or unknown
+ * @hide
+ */
+ public String getVoiceOperatorNumeric() {
+ return mVoiceOperatorNumeric;
+ }
+
+ /**
+ * Get current registered data network operator numeric id.
+ * @return numeric format of operator, null if unregistered or unknown
+ * @hide
+ */
+ public String getDataOperatorNumeric() {
+ return mDataOperatorNumeric;
}
/**
@@ -430,11 +584,15 @@
public int hashCode() {
return ((mVoiceRegState * 31)
+ (mDataRegState * 37)
- + (mRoaming ? 1 : 0)
+ + mVoiceRoamingType
+ + mDataRoamingType
+ (mIsManualNetworkSelection ? 1 : 0)
- + ((null == mOperatorAlphaLong) ? 0 : mOperatorAlphaLong.hashCode())
- + ((null == mOperatorAlphaShort) ? 0 : mOperatorAlphaShort.hashCode())
- + ((null == mOperatorNumeric) ? 0 : mOperatorNumeric.hashCode())
+ + ((null == mVoiceOperatorAlphaLong) ? 0 : mVoiceOperatorAlphaLong.hashCode())
+ + ((null == mVoiceOperatorAlphaShort) ? 0 : mVoiceOperatorAlphaShort.hashCode())
+ + ((null == mVoiceOperatorNumeric) ? 0 : mVoiceOperatorNumeric.hashCode())
+ + ((null == mDataOperatorAlphaLong) ? 0 : mDataOperatorAlphaLong.hashCode())
+ + ((null == mDataOperatorAlphaShort) ? 0 : mDataOperatorAlphaShort.hashCode())
+ + ((null == mDataOperatorNumeric) ? 0 : mDataOperatorNumeric.hashCode())
+ mCdmaRoamingIndicator
+ mCdmaDefaultRoamingIndicator
+ (mIsEmergencyOnly ? 1 : 0));
@@ -456,11 +614,15 @@
return (mVoiceRegState == s.mVoiceRegState
&& mDataRegState == s.mDataRegState
- && mRoaming == s.mRoaming
&& mIsManualNetworkSelection == s.mIsManualNetworkSelection
- && equalsHandlesNulls(mOperatorAlphaLong, s.mOperatorAlphaLong)
- && equalsHandlesNulls(mOperatorAlphaShort, s.mOperatorAlphaShort)
- && equalsHandlesNulls(mOperatorNumeric, s.mOperatorNumeric)
+ && mVoiceRoamingType == s.mVoiceRoamingType
+ && mDataRoamingType == s.mDataRoamingType
+ && equalsHandlesNulls(mVoiceOperatorAlphaLong, s.mVoiceOperatorAlphaLong)
+ && equalsHandlesNulls(mVoiceOperatorAlphaShort, s.mVoiceOperatorAlphaShort)
+ && equalsHandlesNulls(mVoiceOperatorNumeric, s.mVoiceOperatorNumeric)
+ && equalsHandlesNulls(mDataOperatorAlphaLong, s.mDataOperatorAlphaLong)
+ && equalsHandlesNulls(mDataOperatorAlphaShort, s.mDataOperatorAlphaShort)
+ && equalsHandlesNulls(mDataOperatorNumeric, s.mDataOperatorNumeric)
&& equalsHandlesNulls(mRilVoiceRadioTechnology, s.mRilVoiceRadioTechnology)
&& equalsHandlesNulls(mRilDataRadioTechnology, s.mRilDataRadioTechnology)
&& equalsHandlesNulls(mCssIndicator, s.mCssIndicator)
@@ -548,10 +710,17 @@
String radioTechnology = rilRadioTechnologyToString(mRilVoiceRadioTechnology);
String dataRadioTechnology = rilRadioTechnologyToString(mRilDataRadioTechnology);
- return (mVoiceRegState + " " + mDataRegState + " " + (mRoaming ? "roaming" : "home")
- + " " + mOperatorAlphaLong
- + " " + mOperatorAlphaShort
- + " " + mOperatorNumeric
+ return (mVoiceRegState + " " + mDataRegState
+ + " "
+ + "voice " + getRoamingLogString(mVoiceRoamingType)
+ + " "
+ + "data " + getRoamingLogString(mDataRoamingType)
+ + " " + mVoiceOperatorAlphaLong
+ + " " + mVoiceOperatorAlphaShort
+ + " " + mVoiceOperatorNumeric
+ + " " + mDataOperatorAlphaLong
+ + " " + mDataOperatorAlphaShort
+ + " " + mDataOperatorNumeric
+ " " + (mIsManualNetworkSelection ? "(manual)" : "")
+ " " + radioTechnology
+ " " + dataRadioTechnology
@@ -567,10 +736,14 @@
if (DBG) Rlog.d(LOG_TAG, "[ServiceState] setNullState=" + state);
mVoiceRegState = state;
mDataRegState = state;
- mRoaming = false;
- mOperatorAlphaLong = null;
- mOperatorAlphaShort = null;
- mOperatorNumeric = null;
+ mVoiceRoamingType = ROAMING_TYPE_NOT_ROAMING;
+ mDataRoamingType = ROAMING_TYPE_NOT_ROAMING;
+ mVoiceOperatorAlphaLong = null;
+ mVoiceOperatorAlphaShort = null;
+ mVoiceOperatorNumeric = null;
+ mDataOperatorAlphaLong = null;
+ mDataOperatorAlphaShort = null;
+ mDataOperatorNumeric = null;
mIsManualNetworkSelection = false;
mRilVoiceRadioTechnology = 0;
mRilDataRadioTechnology = 0;
@@ -610,9 +783,29 @@
}
public void setRoaming(boolean roaming) {
- mRoaming = roaming;
+ mVoiceRoamingType = (roaming ? ROAMING_TYPE_UNKNOWN : ROAMING_TYPE_NOT_ROAMING);
+ mDataRoamingType = mVoiceRoamingType;
}
+ /** @hide */
+ public void setVoiceRoaming(boolean roaming) {
+ mVoiceRoamingType = (roaming ? ROAMING_TYPE_UNKNOWN : ROAMING_TYPE_NOT_ROAMING);
+ }
+
+ /** @hide */
+ public void setVoiceRoamingType(int type) {
+ mVoiceRoamingType = type;
+ }
+
+ /** @hide */
+ public void setDataRoaming(boolean dataRoaming) {
+ mDataRoamingType = (dataRoaming ? ROAMING_TYPE_UNKNOWN : ROAMING_TYPE_NOT_ROAMING);
+ }
+
+ /** @hide */
+ public void setDataRoamingType(int type) {
+ mDataRoamingType = type;
+ }
/**
* @hide
@@ -650,9 +843,26 @@
}
public void setOperatorName(String longName, String shortName, String numeric) {
- mOperatorAlphaLong = longName;
- mOperatorAlphaShort = shortName;
- mOperatorNumeric = numeric;
+ mVoiceOperatorAlphaLong = longName;
+ mVoiceOperatorAlphaShort = shortName;
+ mVoiceOperatorNumeric = numeric;
+ mDataOperatorAlphaLong = longName;
+ mDataOperatorAlphaShort = shortName;
+ mDataOperatorNumeric = numeric;
+ }
+
+ /** @hide */
+ public void setVoiceOperatorName(String longName, String shortName, String numeric) {
+ mVoiceOperatorAlphaLong = longName;
+ mVoiceOperatorAlphaShort = shortName;
+ mVoiceOperatorNumeric = numeric;
+ }
+
+ /** @hide */
+ public void setDataOperatorName(String longName, String shortName, String numeric) {
+ mDataOperatorAlphaLong = longName;
+ mDataOperatorAlphaShort = shortName;
+ mDataOperatorNumeric = numeric;
}
/**
@@ -662,7 +872,18 @@
* @hide
*/
public void setOperatorAlphaLong(String longName) {
- mOperatorAlphaLong = longName;
+ mVoiceOperatorAlphaLong = longName;
+ mDataOperatorAlphaLong = longName;
+ }
+
+ /** @hide */
+ public void setVoiceOperatorAlphaLong(String longName) {
+ mVoiceOperatorAlphaLong = longName;
+ }
+
+ /** @hide */
+ public void setDataOperatorAlphaLong(String longName) {
+ mDataOperatorAlphaLong = longName;
}
public void setIsManualSelection(boolean isManual) {
@@ -689,10 +910,14 @@
private void setFromNotifierBundle(Bundle m) {
mVoiceRegState = m.getInt("voiceRegState");
mDataRegState = m.getInt("dataRegState");
- mRoaming = m.getBoolean("roaming");
- mOperatorAlphaLong = m.getString("operator-alpha-long");
- mOperatorAlphaShort = m.getString("operator-alpha-short");
- mOperatorNumeric = m.getString("operator-numeric");
+ mVoiceRoamingType = m.getInt("voiceRoamingType");
+ mDataRoamingType = m.getInt("dataRoamingType");
+ mVoiceOperatorAlphaLong = m.getString("operator-alpha-long");
+ mVoiceOperatorAlphaShort = m.getString("operator-alpha-short");
+ mVoiceOperatorNumeric = m.getString("operator-numeric");
+ mDataOperatorAlphaLong = m.getString("data-operator-alpha-long");
+ mDataOperatorAlphaShort = m.getString("data-operator-alpha-short");
+ mDataOperatorNumeric = m.getString("data-operator-numeric");
mIsManualNetworkSelection = m.getBoolean("manual");
mRilVoiceRadioTechnology = m.getInt("radioTechnology");
mRilDataRadioTechnology = m.getInt("dataRadioTechnology");
@@ -713,10 +938,14 @@
public void fillInNotifierBundle(Bundle m) {
m.putInt("voiceRegState", mVoiceRegState);
m.putInt("dataRegState", mDataRegState);
- m.putBoolean("roaming", Boolean.valueOf(mRoaming));
- m.putString("operator-alpha-long", mOperatorAlphaLong);
- m.putString("operator-alpha-short", mOperatorAlphaShort);
- m.putString("operator-numeric", mOperatorNumeric);
+ m.putInt("voiceRoamingType", mVoiceRoamingType);
+ m.putInt("dataRoamingType", mDataRoamingType);
+ m.putString("operator-alpha-long", mVoiceOperatorAlphaLong);
+ m.putString("operator-alpha-short", mVoiceOperatorAlphaShort);
+ m.putString("operator-numeric", mVoiceOperatorNumeric);
+ m.putString("data-operator-alpha-long", mDataOperatorAlphaLong);
+ m.putString("data-operator-alpha-short", mDataOperatorAlphaShort);
+ m.putString("data-operator-numeric", mDataOperatorNumeric);
m.putBoolean("manual", Boolean.valueOf(mIsManualNetworkSelection));
m.putInt("radioTechnology", mRilVoiceRadioTechnology);
m.putInt("dataRadioTechnology", mRilDataRadioTechnology);
diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java
index 40d2e77..abf1ead 100644
--- a/telephony/java/android/telephony/SubscriptionManager.java
+++ b/telephony/java/android/telephony/SubscriptionManager.java
@@ -1103,5 +1103,35 @@
return Boolean.parseBoolean(TelephonyManager.getTelephonyProperty(phoneId,
TelephonyProperties.PROPERTY_OPERATOR_ISROAMING, null));
}
+
+ /**
+ * Returns a constant indicating the state of sim for the subscription.
+ *
+ * @param subId
+ *
+ * {@See TelephonyManager#SIM_STATE_UNKNOWN}
+ * {@See TelephonyManager#SIM_STATE_ABSENT}
+ * {@See TelephonyManager#SIM_STATE_PIN_REQUIRED}
+ * {@See TelephonyManager#SIM_STATE_PUK_REQUIRED}
+ * {@See TelephonyManager#SIM_STATE_NETWORK_LOCKED}
+ * {@See TelephonyManager#SIM_STATE_READY}
+ * {@See TelephonyManager#SIM_STATE_NOT_READY}
+ * {@See TelephonyManager#SIM_STATE_PERM_DISABLED}
+ * {@See TelephonyManager#SIM_STATE_CARD_IO_ERROR}
+ *
+ * {@hide}
+ */
+ public static int getSimStateForSubscriber(int subId) {
+ int simState;
+
+ try {
+ ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub"));
+ simState = iSub.getSimStateForSubscriber(subId);
+ } catch (RemoteException ex) {
+ simState = TelephonyManager.SIM_STATE_UNKNOWN;
+ }
+ logd("getSimStateForSubscriber: simState=" + simState + " subId=" + subId);
+ return simState;
+ }
}
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index de2a6da..751e11b 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -1416,10 +1416,14 @@
//
//
- /** SIM card state: Unknown. Signifies that the SIM is in transition
- * between states. For example, when the user inputs the SIM pin
- * under PIN_REQUIRED state, a query for sim status returns
- * this state before turning to SIM_STATE_READY. */
+ /**
+ * SIM card state: Unknown. Signifies that the SIM is in transition
+ * between states. For example, when the user inputs the SIM pin
+ * under PIN_REQUIRED state, a query for sim status returns
+ * this state before turning to SIM_STATE_READY.
+ *
+ * These are the ordinal value of IccCardConstants.State.
+ */
public static final int SIM_STATE_UNKNOWN = 0;
/** SIM card state: no SIM card is available in the device */
public static final int SIM_STATE_ABSENT = 1;
@@ -1427,14 +1431,22 @@
public static final int SIM_STATE_PIN_REQUIRED = 2;
/** SIM card state: Locked: requires the user's SIM PUK to unlock */
public static final int SIM_STATE_PUK_REQUIRED = 3;
- /** SIM card state: Locked: requries a network PIN to unlock */
+ /** SIM card state: Locked: requires a network PIN to unlock */
public static final int SIM_STATE_NETWORK_LOCKED = 4;
/** SIM card state: Ready */
public static final int SIM_STATE_READY = 5;
- /** SIM card state: SIM Card Error, Sim Card is present but faulty
+ /** SIM card state: SIM Card is NOT READY
*@hide
*/
- public static final int SIM_STATE_CARD_IO_ERROR = 6;
+ public static final int SIM_STATE_NOT_READY = 6;
+ /** SIM card state: SIM Card Error, permanently disabled
+ *@hide
+ */
+ public static final int SIM_STATE_PERM_DISABLED = 7;
+ /** SIM card state: SIM Card Error, present but faulty
+ *@hide
+ */
+ public static final int SIM_STATE_CARD_IO_ERROR = 8;
/**
* @return true if a ICC card is present
@@ -1464,8 +1476,7 @@
}
/**
- * Returns a constant indicating the state of the
- * device SIM card.
+ * Returns a constant indicating the state of the default SIM card.
*
* @see #SIM_STATE_UNKNOWN
* @see #SIM_STATE_ABSENT
@@ -1473,6 +1484,8 @@
* @see #SIM_STATE_PUK_REQUIRED
* @see #SIM_STATE_NETWORK_LOCKED
* @see #SIM_STATE_READY
+ * @see #SIM_STATE_NOT_READY
+ * @see #SIM_STATE_PERM_DISABLED
* @see #SIM_STATE_CARD_IO_ERROR
*/
public int getSimState() {
@@ -1480,10 +1493,9 @@
}
/**
- * Returns a constant indicating the state of the
- * device SIM card in a slot.
+ * Returns a constant indicating the state of the device SIM card in a slot.
*
- * @param slotId
+ * @param slotIdx
*
* @see #SIM_STATE_UNKNOWN
* @see #SIM_STATE_ABSENT
@@ -1491,39 +1503,20 @@
* @see #SIM_STATE_PUK_REQUIRED
* @see #SIM_STATE_NETWORK_LOCKED
* @see #SIM_STATE_READY
+ * @see #SIM_STATE_NOT_READY
+ * @see #SIM_STATE_PERM_DISABLED
+ * @see #SIM_STATE_CARD_IO_ERROR
*/
/** {@hide} */
- // FIXME the argument to pass is subId ??
- public int getSimState(int slotId) {
- int[] subId = SubscriptionManager.getSubId(slotId);
+ public int getSimState(int slotIdx) {
+ int[] subId = SubscriptionManager.getSubId(slotIdx);
if (subId == null || subId.length == 0) {
- return SIM_STATE_ABSENT;
- }
- // FIXME Do not use a property to determine SIM_STATE, call
- // appropriate method on some object.
- int phoneId = SubscriptionManager.getPhoneId(subId[0]);
- String prop = getTelephonyProperty(phoneId, TelephonyProperties.PROPERTY_SIM_STATE, "");
- if ("ABSENT".equals(prop)) {
- return SIM_STATE_ABSENT;
- }
- else if ("PIN_REQUIRED".equals(prop)) {
- return SIM_STATE_PIN_REQUIRED;
- }
- else if ("PUK_REQUIRED".equals(prop)) {
- return SIM_STATE_PUK_REQUIRED;
- }
- else if ("NETWORK_LOCKED".equals(prop)) {
- return SIM_STATE_NETWORK_LOCKED;
- }
- else if ("READY".equals(prop)) {
- return SIM_STATE_READY;
- }
- else if ("CARD_IO_ERROR".equals(prop)) {
- return SIM_STATE_CARD_IO_ERROR;
- }
- else {
+ Rlog.d(TAG, "getSimState:- empty subId return SIM_STATE_ABSENT");
return SIM_STATE_UNKNOWN;
}
+ int simState = SubscriptionManager.getSimStateForSubscriber(subId[0]);
+ Rlog.d(TAG, "getSimState: simState=" + simState + " slotIdx=" + slotIdx);
+ return simState;
}
/**
@@ -1535,7 +1528,7 @@
* @see #getSimState
*/
public String getSimOperator() {
- int subId = mSubscriptionManager.getDefaultDataSubId();
+ int subId = SubscriptionManager.getDefaultDataSubId();
if (!SubscriptionManager.isUsableSubIdValue(subId)) {
subId = SubscriptionManager.getDefaultSmsSubId();
if (!SubscriptionManager.isUsableSubIdValue(subId)) {
@@ -2758,8 +2751,6 @@
* @hide
*/
public static void setTelephonyProperty(int phoneId, String property, String value) {
- Rlog.d(TAG, "setTelephonyProperty property: " + property + " phoneId: " + phoneId +
- " value: " + value);
String propVal = "";
String p[] = null;
String prop = SystemProperties.get(property);
@@ -2773,7 +2764,8 @@
}
if (!SubscriptionManager.isValidPhoneId(phoneId)) {
- Rlog.d(TAG, "setTelephonyProperty invalid phone id");
+ Rlog.d(TAG, "setTelephonyProperty: invalid phoneId=" + phoneId +
+ " property=" + property + " value: " + value + " prop=" + prop);
return;
}
@@ -2792,13 +2784,15 @@
}
}
- // TODO: workaround for QC
- if (property.length() > SystemProperties.PROP_NAME_MAX || propVal.length() > SystemProperties.PROP_VALUE_MAX) {
- Rlog.d(TAG, "setTelephonyProperty length too long:" + property + ", " + propVal);
+ if (property.length() > SystemProperties.PROP_NAME_MAX
+ || propVal.length() > SystemProperties.PROP_VALUE_MAX) {
+ Rlog.d(TAG, "setTelephonyProperty: property to long phoneId=" + phoneId +
+ " property=" + property + " value: " + value + " propVal=" + propVal);
return;
}
- Rlog.d(TAG, "setTelephonyProperty property=" + property + " propVal=" + propVal);
+ Rlog.d(TAG, "setTelephonyProperty: success phoneId=" + phoneId +
+ " property=" + property + " value: " + value + " propVal=" + propVal);
SystemProperties.set(property, propVal);
}
@@ -2904,13 +2898,16 @@
propVal = values[phoneId];
}
}
+ Rlog.d(TAG, "getTelephonyProperty: return propVal='" + propVal + "' phoneId=" + phoneId
+ + " property='" + property + "' defaultVal='" + defaultVal + "' prop=" + prop);
return propVal == null ? defaultVal : propVal;
}
/** @hide */
public int getSimCount() {
+ // FIXME Need to get it from Telephony Dev Controller when that gets implemented!
+ // and then this method shouldn't be used at all!
if(isMultiSimEnabled()) {
- //FIXME Need to get it from Telephony Devcontroller
return 2;
} else {
return 1;
diff --git a/telephony/java/com/android/ims/ImsReasonInfo.java b/telephony/java/com/android/ims/ImsReasonInfo.java
index 2ab9648..2482249 100644
--- a/telephony/java/com/android/ims/ImsReasonInfo.java
+++ b/telephony/java/com/android/ims/ImsReasonInfo.java
@@ -195,6 +195,10 @@
public static final int CODE_USER_IGNORE = 503;
// User declines an incoming call
public static final int CODE_USER_DECLINE = 504;
+ // Device declines/ends a call due to low battery
+ public static final int CODE_LOW_BATTERY = 505;
+ // Device declines call due to blacklisted call ID
+ public static final int CODE_BLACKLISTED_CALL_ID = 506;
// IMS -> Telephony
// The call is terminated by the network or remote user
public static final int CODE_USER_TERMINATED_BY_REMOTE = 510;
diff --git a/telephony/java/com/android/internal/telephony/IMms.aidl b/telephony/java/com/android/internal/telephony/IMms.aidl
index 0322499..49ac400 100644
--- a/telephony/java/com/android/internal/telephony/IMms.aidl
+++ b/telephony/java/com/android/internal/telephony/IMms.aidl
@@ -61,40 +61,6 @@
in PendingIntent downloadedIntent);
/**
- * Update the status of a pending (send-by-IP) MMS message handled by the carrier app.
- * If the carrier app fails to send this message, it may be resent via carrier network
- * depending on the status code.
- *
- * The caller should have carrier privileges.
- * @see android.telephony.TelephonyManager.hasCarrierPrivileges
- *
- * @param messageRef the reference number of the MMS message.
- * @param pdu non-empty (contains the SendConf PDU) if the message was sent successfully,
- * otherwise, this param should be null.
- * @param status send status. It can be Activity.RESULT_OK or one of the MMS error codes.
- * If status is Activity.RESULT_OK, the MMS was sent successfully.
- * If status is MMS_ERROR_RETRY, this message would be resent via carrier
- * network. The message will not be resent for other MMS error statuses.
- */
- void updateMmsSendStatus(int messageRef, in byte[] pdu, in int status);
-
- /**
- * Update the status of a pending (download-by-IP) MMS message handled by the carrier app.
- * If the carrier app fails to download this message, it may be re-downloaded via carrier
- * network depending on the status code.
- *
- * The caller should have carrier privileges.
- * @see android.telephony.TelephonyManager.hasCarrierPrivileges
- *
- * @param messageRef the reference number of the MMS message.
- * @param status download status. It can be Activity.RESULT_OK or one of the MMS error codes.
- * If status is Activity.RESULT_OK, the MMS was downloaded successfully.
- * If status is MMS_ERROR_RETRY, this message would be re-downloaded via carrier
- * network. The message will not be re-downloaded for other MMS error statuses.
- */
- void updateMmsDownloadStatus(int messageRef, in int status);
-
- /**
* Get carrier-dependent configuration values.
*
* @param subId the SIM id
diff --git a/telephony/java/com/android/internal/telephony/ISms.aidl b/telephony/java/com/android/internal/telephony/ISms.aidl
index 15fa340..6fdf121 100644
--- a/telephony/java/com/android/internal/telephony/ISms.aidl
+++ b/telephony/java/com/android/internal/telephony/ISms.aidl
@@ -224,17 +224,6 @@
void injectSmsPdu(in byte[] pdu, String format, in PendingIntent receivedIntent);
/**
- * Update the status of a pending (send-by-IP) SMS message and resend by PSTN if necessary.
- * This outbound message was handled by the carrier app. If the carrier app fails to send
- * this message, it would be resent by PSTN.
- *
- * @param messageRef the reference number of the SMS message.
- * @param success True if and only if the message was sent successfully. If its value is
- * false, this message should be resent via PSTN.
- */
- void updateSmsSendStatus(int messageRef, boolean success);
-
- /**
* Send a multi-part text based SMS.
*
* @param destinationAddress the address to send the message to
diff --git a/telephony/java/com/android/internal/telephony/ISub.aidl b/telephony/java/com/android/internal/telephony/ISub.aidl
index ca82083..acbc0aa 100755
--- a/telephony/java/com/android/internal/telephony/ISub.aidl
+++ b/telephony/java/com/android/internal/telephony/ISub.aidl
@@ -164,4 +164,11 @@
void clearDefaultsForInactiveSubIds();
int[] getActiveSubIdList();
+
+ /**
+ * Get the SIM state for the subscriber
+ * @return SIM state as the ordinal of IccCardConstants.State
+ */
+ int getSimStateForSubscriber(int subId);
+
}
diff --git a/telephony/java/com/android/internal/telephony/IccCardConstants.java b/telephony/java/com/android/internal/telephony/IccCardConstants.java
index 8029713..c1e2518 100644
--- a/telephony/java/com/android/internal/telephony/IccCardConstants.java
+++ b/telephony/java/com/android/internal/telephony/IccCardConstants.java
@@ -15,12 +15,14 @@
*/
package com.android.internal.telephony;
+import android.telephony.TelephonyManager;
+
/**
* {@hide}
*/
public class IccCardConstants {
- /* The extra data for broacasting intent INTENT_ICC_STATE_CHANGE */
+ /* The extra data for broadcasting intent INTENT_ICC_STATE_CHANGE */
public static final String INTENT_KEY_ICC_STATE = "ss";
/* UNKNOWN means the ICC state is unknown */
public static final String INTENT_VALUE_ICC_UNKNOWN = "UNKNOWN";
@@ -32,13 +34,17 @@
static public final String INTENT_VALUE_ICC_CARD_IO_ERROR = "CARD_IO_ERROR";
/* LOCKED means ICC is locked by pin or by network */
public static final String INTENT_VALUE_ICC_LOCKED = "LOCKED";
+ //TODO: we can remove this state in the future if Bug 18489776 analysis
+ //#42's first race condition is resolved
+ /* INTERNAL LOCKED means ICC is locked by pin or by network */
+ public static final String INTENT_VALUE_ICC_INTERNAL_LOCKED = "INTERNAL_LOCKED";
/* READY means ICC is ready to access */
public static final String INTENT_VALUE_ICC_READY = "READY";
/* IMSI means ICC IMSI is ready in property */
public static final String INTENT_VALUE_ICC_IMSI = "IMSI";
/* LOADED means all ICC records, including IMSI, are loaded */
public static final String INTENT_VALUE_ICC_LOADED = "LOADED";
- /* The extra data for broacasting intent INTENT_ICC_STATE_CHANGE */
+ /* The extra data for broadcasting intent INTENT_ICC_STATE_CHANGE */
public static final String INTENT_KEY_LOCKED_REASON = "reason";
/* PIN means ICC is locked on PIN1 */
public static final String INTENT_VALUE_LOCKED_ON_PIN = "PIN";
@@ -56,17 +62,19 @@
* UNKNOWN is a transient state, for example, after user inputs ICC pin under
* PIN_REQUIRED state, the query for ICC status returns UNKNOWN before it
* turns to READY
+ *
+ * The ordinal values much match {@link TelephonyManager#SIM_STATE_UNKNOWN} ...
*/
public enum State {
- UNKNOWN,
- ABSENT,
- PIN_REQUIRED,
- PUK_REQUIRED,
- NETWORK_LOCKED,
- READY,
- NOT_READY,
- PERM_DISABLED,
- CARD_IO_ERROR;
+ UNKNOWN, /** ordinal(0) == {@See TelephonyManager#SIM_STATE_UNKNOWN} */
+ ABSENT, /** ordinal(1) == {@See TelephonyManager#SIM_STATE_ABSENT} */
+ PIN_REQUIRED, /** ordinal(2) == {@See TelephonyManager#SIM_STATE_PIN_REQUIRED} */
+ PUK_REQUIRED, /** ordinal(3) == {@See TelephonyManager#SIM_STATE_PUK_REQUIRED} */
+ NETWORK_LOCKED, /** ordinal(4) == {@See TelephonyManager#SIM_STATE_NETWORK_LOCKED} */
+ READY, /** ordinal(5) == {@See TelephonyManager#SIM_STATE_READY} */
+ NOT_READY, /** ordinal(6) == {@See TelephonyManager#SIM_STATE_NOT_READY} */
+ PERM_DISABLED, /** ordinal(7) == {@See TelephonyManager#SIM_STATE_PERM_DISABLED} */
+ CARD_IO_ERROR; /** ordinal(8) == {@See TelephonyManager#SIM_STATE_CARD_IO_ERROR} */
public boolean isPinLocked() {
return ((this == PIN_REQUIRED) || (this == PUK_REQUIRED));
@@ -77,5 +85,21 @@
|| (this == NETWORK_LOCKED) || (this == READY)
|| (this == PERM_DISABLED) || (this == CARD_IO_ERROR));
}
+
+ public static State intToState(int state) throws IllegalArgumentException {
+ switch(state) {
+ case 0: return UNKNOWN;
+ case 1: return ABSENT;
+ case 2: return PIN_REQUIRED;
+ case 3: return PUK_REQUIRED;
+ case 4: return NETWORK_LOCKED;
+ case 5: return READY;
+ case 6: return NOT_READY;
+ case 7: return PERM_DISABLED;
+ case 8: return CARD_IO_ERROR;
+ default:
+ throw new IllegalArgumentException();
+ }
+ }
}
}
diff --git a/tools/aapt/Resource.cpp b/tools/aapt/Resource.cpp
index bfd0531..e3a0200 100644
--- a/tools/aapt/Resource.cpp
+++ b/tools/aapt/Resource.cpp
@@ -2985,23 +2985,26 @@
writeProguardForLayouts(ProguardKeepSet* keep, const sp<AaptAssets>& assets)
{
status_t err;
+ const char* kClass = "class";
+ const char* kFragment = "fragment";
const String8 kTransition("transition");
const String8 kTransitionPrefix("transition-");
// tag:attribute pairs that should be checked in layout files.
KeyedVector<String8, Vector<NamespaceAttributePair> > kLayoutTagAttrPairs;
- addTagAttrPair(&kLayoutTagAttrPairs, "view", NULL, "class");
- addTagAttrPair(&kLayoutTagAttrPairs, "fragment", NULL, "class");
- addTagAttrPair(&kLayoutTagAttrPairs, "fragment", RESOURCES_ANDROID_NAMESPACE, "name");
+ addTagAttrPair(&kLayoutTagAttrPairs, "view", NULL, kClass);
+ addTagAttrPair(&kLayoutTagAttrPairs, kFragment, NULL, kClass);
+ addTagAttrPair(&kLayoutTagAttrPairs, kFragment, RESOURCES_ANDROID_NAMESPACE, "name");
// tag:attribute pairs that should be checked in xml files.
KeyedVector<String8, Vector<NamespaceAttributePair> > kXmlTagAttrPairs;
- addTagAttrPair(&kXmlTagAttrPairs, "PreferenceScreen", RESOURCES_ANDROID_NAMESPACE, "fragment");
- addTagAttrPair(&kXmlTagAttrPairs, "header", RESOURCES_ANDROID_NAMESPACE, "fragment");
+ addTagAttrPair(&kXmlTagAttrPairs, "PreferenceScreen", RESOURCES_ANDROID_NAMESPACE, kFragment);
+ addTagAttrPair(&kXmlTagAttrPairs, "header", RESOURCES_ANDROID_NAMESPACE, kFragment);
// tag:attribute pairs that should be checked in transition files.
KeyedVector<String8, Vector<NamespaceAttributePair> > kTransitionTagAttrPairs;
- addTagAttrPair(&kTransitionTagAttrPairs, kTransition.string(), NULL, "class");
+ addTagAttrPair(&kTransitionTagAttrPairs, kTransition.string(), NULL, kClass);
+ addTagAttrPair(&kTransitionTagAttrPairs, "pathMotion", NULL, kClass);
const Vector<sp<AaptDir> >& dirs = assets->resDirs();
const size_t K = dirs.size();
diff --git a/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java b/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
index 93814b2..c41a4ee 100644
--- a/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
+++ b/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
@@ -23,7 +23,7 @@
public class BridgeAssetManager extends AssetManager {
/**
- * This initializes the static field {@link AssetManager#mSystem} which is used
+ * This initializes the static field {@link AssetManager#sSystem} which is used
* by methods who get a global asset manager using {@link AssetManager#getSystem()}.
* <p/>
* They will end up using our bridge asset manager.
diff --git a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
index 4993262..ab79664 100644
--- a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
+++ b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
@@ -282,7 +282,7 @@
@LayoutlibDelegate
/*package*/ static boolean nAddFontFromAsset(long nativeFamily, AssetManager mgr, String path) {
Bridge.getLog().fidelityWarning(LayoutLog.TAG_UNSUPPORTED,
- "FontFamily.addFontFromAsset is not supported.", null, null);
+ "Typeface.createFromAsset is not supported.", null, null);
return false;
}
diff --git a/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java b/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java
deleted file mode 100644
index ed8498f..0000000
--- a/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.text.format;
-
-import java.util.Calendar;
-import java.util.TimeZone;
-import java.util.UnknownFormatConversionException;
-import java.util.regex.Pattern;
-
-import com.android.ide.common.rendering.api.LayoutLog;
-import com.android.layoutlib.bridge.Bridge;
-import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
-
-/**
- * Delegate used to provide new implementation for native methods of {@link Time}
- *
- * Through the layoutlib_create tool, some native methods of Time have been replaced by calls to
- * methods of the same name in this delegate class.
- */
-public class Time_Delegate {
-
- // Regex to match odd number of '%'.
- private static final Pattern p = Pattern.compile("(?<!%)(%%)*%(?!%)");
-
- // Format used by toString()
- private static final String FORMAT = "%1$tY%1$tm%1$tdT%1$tH%1$tM%1$tS<%1$tZ>";
-
- // ---- private helper methods ----
-
- private static Calendar timeToCalendar(Time time) {
- Calendar calendar = getCalendarInstance(time);
- calendar.set(time.year, time.month, time.monthDay, time.hour, time.minute, time.second);
- return calendar;
- }
-
- private static void calendarToTime(Calendar c, Time time) {
- time.timezone = c.getTimeZone().getID();
- time.set(c.get(Calendar.SECOND), c.get(Calendar.MINUTE), c.get(Calendar.HOUR_OF_DAY),
- c.get(Calendar.DATE), c.get(Calendar.MONTH), c.get(Calendar.YEAR));
- time.weekDay = c.get(Calendar.DAY_OF_WEEK);
- time.yearDay = c.get(Calendar.DAY_OF_YEAR);
- time.isDst = c.getTimeZone().inDaylightTime(c.getTime()) ? 1 : 0;
- // gmtoff is in seconds and TimeZone.getOffset() returns milliseconds.
- time.gmtoff = c.getTimeZone().getOffset(c.getTimeInMillis()) / DateUtils.SECOND_IN_MILLIS;
- }
-
- /**
- * Return a calendar instance with the correct timezone.
- *
- * @param time Time to obtain the timezone from.
- */
- private static Calendar getCalendarInstance(Time time) {
- // TODO: Check platform code to make sure the behavior is same for null/invalid timezone.
- if (time == null || time.timezone == null) {
- // Default to local timezone.
- return Calendar.getInstance();
- }
- // If timezone is invalid, use GMT.
- return Calendar.getInstance(TimeZone.getTimeZone(time.timezone));
- }
-}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
index ec78712..0af04ec 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
@@ -36,6 +36,7 @@
import com.android.tools.layoutlib.create.OverrideMethod;
import com.android.util.Pair;
import com.ibm.icu.util.ULocale;
+import libcore.io.MemoryMappedFile_Delegate;
import android.content.res.BridgeAssetManager;
import android.graphics.Bitmap;
@@ -252,6 +253,7 @@
// load the fonts.
FontFamily_Delegate.setFontLocation(fontLocation.getAbsolutePath());
+ MemoryMappedFile_Delegate.setDataDir(fontLocation.getAbsoluteFile().getParentFile());
// now parse com.android.internal.R (and only this one as android.R is a subset of
// the internal version), and put the content in the maps.
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
index e1f24ce..e74debb 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
@@ -483,7 +483,7 @@
// In some cases, style may not be a dynamic id, so we do a full search.
ResourceReference ref = resolveId(resid);
if (ref != null) {
- mRenderResources.getStyle(ref.getName(), ref.isFramework());
+ style = mRenderResources.getStyle(ref.getName(), ref.isFramework());
}
}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
new file mode 100644
index 0000000..7e361a1
--- /dev/null
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.layoutlib.bridge.libcore.io;
+
+import java.nio.ByteBuffer;
+
+import libcore.io.BufferIterator;
+
+/**
+ * Provides an implementation of {@link BufferIterator} over a {@link ByteBuffer}.
+ */
+public class BridgeBufferIterator extends BufferIterator {
+
+ private final long mSize;
+ private final ByteBuffer mByteBuffer;
+
+ public BridgeBufferIterator(long size, ByteBuffer buffer) {
+ mSize = size;
+ mByteBuffer = buffer;
+ }
+
+ @Override
+ public void seek(int offset) {
+ assert offset <= mSize;
+ mByteBuffer.position(offset);
+ }
+
+ @Override
+ public void skip(int byteCount) {
+ int newPosition = mByteBuffer.position() + byteCount;
+ assert newPosition <= mSize;
+ mByteBuffer.position(newPosition);
+ }
+
+ @Override
+ public void readByteArray(byte[] dst, int dstOffset, int byteCount) {
+ assert dst.length >= dstOffset + byteCount;
+ mByteBuffer.get(dst, dstOffset, byteCount);
+ }
+
+ @Override
+ public byte readByte() {
+ return mByteBuffer.get();
+ }
+
+ @Override
+ public int readInt() {
+ return mByteBuffer.getInt();
+ }
+
+ @Override
+ public void readIntArray(int[] dst, int dstOffset, int intCount) {
+ while (--intCount >= 0) {
+ dst[dstOffset++] = mByteBuffer.getInt();
+ }
+ }
+
+ @Override
+ public short readShort() {
+ return mByteBuffer.getShort();
+ }
+}
diff --git a/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java b/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java
new file mode 100644
index 0000000..723d5c4
--- /dev/null
+++ b/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package libcore.io;
+
+import com.android.layoutlib.bridge.impl.DelegateManager;
+import com.android.layoutlib.bridge.libcore.io.BridgeBufferIterator;
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import android.system.ErrnoException;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.RandomAccessFile;
+import java.nio.ByteOrder;
+import java.nio.MappedByteBuffer;
+import java.nio.channels.FileChannel.MapMode;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Delegate used to provide alternate implementation of select methods of {@link MemoryMappedFile}.
+ */
+public class MemoryMappedFile_Delegate {
+
+ private static final DelegateManager<MemoryMappedFile_Delegate> sManager = new
+ DelegateManager<MemoryMappedFile_Delegate>(MemoryMappedFile_Delegate.class);
+
+ private static final Map<MemoryMappedFile, Long> sMemoryMappedFileMap =
+ new HashMap<MemoryMappedFile, Long>();
+
+ private final MappedByteBuffer mMappedByteBuffer;
+ private final long mSize;
+
+ /** Path on the target device where the data file is available. */
+ private static final String TARGET_PATH = System.getenv("ANDROID_ROOT") + "/usr/share/zoneinfo";
+ /** Path on the host (inside the SDK) where the data files are available. */
+ private static File sRootPath;
+
+ @LayoutlibDelegate
+ static MemoryMappedFile mmapRO(String path) throws ErrnoException {
+ if (!path.startsWith(TARGET_PATH)) {
+ throw new ErrnoException("Custom timezone data files are not supported.", 1);
+ }
+ if (sRootPath == null) {
+ throw new ErrnoException("Bridge has not been initialized properly.", 1);
+ }
+ path = path.substring(TARGET_PATH.length());
+ try {
+ File f = new File(sRootPath, path);
+ if (!f.exists()) {
+ throw new ErrnoException("File not found: " + f.getPath(), 1);
+ }
+ RandomAccessFile file = new RandomAccessFile(f, "r");
+ try {
+ long size = file.length();
+ MemoryMappedFile_Delegate newDelegate = new MemoryMappedFile_Delegate(file);
+ long filePointer = file.getFilePointer();
+ MemoryMappedFile mmFile = new MemoryMappedFile(filePointer, size);
+ long delegateIndex = sManager.addNewDelegate(newDelegate);
+ sMemoryMappedFileMap.put(mmFile, delegateIndex);
+ return mmFile;
+ } finally {
+ file.close();
+ }
+ } catch (IOException e) {
+ throw new ErrnoException("mmapRO", 1, e);
+ }
+ }
+
+ @LayoutlibDelegate
+ static void close(MemoryMappedFile thisFile) throws ErrnoException {
+ Long index = sMemoryMappedFileMap.get(thisFile);
+ if (index != null) {
+ sMemoryMappedFileMap.remove(thisFile);
+ sManager.removeJavaReferenceFor(index);
+ }
+ }
+
+ @LayoutlibDelegate
+ static BufferIterator bigEndianIterator(MemoryMappedFile file) {
+ MemoryMappedFile_Delegate delegate = getDelegate(file);
+ return new BridgeBufferIterator(delegate.mSize, delegate.mMappedByteBuffer.duplicate());
+ }
+
+ // TODO: implement littleEndianIterator()
+
+ public MemoryMappedFile_Delegate(RandomAccessFile file) throws IOException {
+ mSize = file.length();
+ // It's weird that map() takes size as long, but returns MappedByteBuffer which uses an int
+ // to store the marker to the position.
+ mMappedByteBuffer = file.getChannel().map(MapMode.READ_ONLY, 0, mSize);
+ assert mMappedByteBuffer.order() == ByteOrder.BIG_ENDIAN;
+ }
+
+ public static void setDataDir(File path) {
+ sRootPath = path;
+ }
+
+ private static MemoryMappedFile_Delegate getDelegate(MemoryMappedFile file) {
+ Long index = sMemoryMappedFileMap.get(file);
+ return index == null ? null : sManager.getDelegate(index);
+ }
+
+}
diff --git a/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java b/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
new file mode 100644
index 0000000..f29c5c0
--- /dev/null
+++ b/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package libcore.util;
+
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import java.util.GregorianCalendar;
+
+/**
+ * Delegate used to provide alternate implementation of select methods in {@link ZoneInfo.WallTime}
+ */
+public class ZoneInfo_WallTime_Delegate {
+
+ @LayoutlibDelegate
+ static GregorianCalendar createGregorianCalendar() {
+ return new GregorianCalendar();
+ }
+}
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
index 4e6f456..5a979e8 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
@@ -21,6 +21,7 @@
import com.android.tools.layoutlib.java.Charsets;
import com.android.tools.layoutlib.java.IntegralToString;
import com.android.tools.layoutlib.java.Objects;
+import com.android.tools.layoutlib.java.System_Delegate;
import com.android.tools.layoutlib.java.UnsafeByteSequence;
import java.util.Arrays;
@@ -131,6 +132,7 @@
IntegralToString.class,
UnsafeByteSequence.class,
Charsets.class,
+ System_Delegate.class,
};
/**
@@ -170,7 +172,11 @@
"com.android.internal.view.menu.MenuBuilder#createNewMenuItem",
"com.android.internal.util.XmlUtils#convertValueToInt",
"com.android.internal.textservice.ITextServicesManager$Stub#asInterface",
- "dalvik.system.VMRuntime#newUnpaddedArray"
+ "dalvik.system.VMRuntime#newUnpaddedArray",
+ "libcore.io.MemoryMappedFile#mmapRO",
+ "libcore.io.MemoryMappedFile#close",
+ "libcore.io.MemoryMappedFile#bigEndianIterator",
+ "libcore.util.ZoneInfo$WallTime#createGregorianCalendar",
};
/**
@@ -261,6 +267,7 @@
"java.nio.charset.Charsets", "com.android.tools.layoutlib.java.Charsets",
"java.lang.IntegralToString", "com.android.tools.layoutlib.java.IntegralToString",
"java.lang.UnsafeByteSequence", "com.android.tools.layoutlib.java.UnsafeByteSequence",
+ "java.nio.charset.StandardCharsets", "com.android.tools.layoutlib.java.Charsets",
};
private final static String[] EXCLUDED_CLASSES =
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
index 9c6fbac..1e2623f 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
@@ -16,6 +16,8 @@
package com.android.tools.layoutlib.create;
+import com.android.tools.layoutlib.java.System_Delegate;
+
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.MethodVisitor;
import org.objectweb.asm.Opcodes;
@@ -47,24 +49,25 @@
private static final String ANDROID_LOCALE_CLASS =
"com/android/layoutlib/bridge/android/AndroidLocale";
- private static final String JAVA_LOCALE_CLASS = "java/util/Locale";
+ private static final String JAVA_LOCALE_CLASS = Type.getInternalName(java.util.Locale.class);
private static final Type STRING = Type.getType(String.class);
+ private static final String JAVA_LANG_SYSTEM = Type.getInternalName(System.class);
+
// Static initialization block to initialize METHOD_REPLACERS.
static {
// Case 1: java.lang.System.arraycopy()
METHOD_REPLACERS.add(new MethodReplacer() {
@Override
public boolean isNeeded(String owner, String name, String desc) {
- return "java/lang/System".equals(owner) && "arraycopy".equals(name) &&
+ return JAVA_LANG_SYSTEM.equals(owner) && "arraycopy".equals(name) &&
ARRAYCOPY_DESCRIPTORS.contains(desc);
}
@Override
- public void replace(int[] opcode, String[] methodInformation) {
- assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
- && opcode.length == 1;
- methodInformation[2] = "(Ljava/lang/Object;ILjava/lang/Object;II)V";
+ public void replace(MethodInformation mi) {
+ assert isNeeded(mi.owner, mi.name, mi.desc);
+ mi.desc = "(Ljava/lang/Object;ILjava/lang/Object;II)V";
}
});
@@ -80,12 +83,11 @@
}
@Override
- public void replace(int[] opcode, String[] methodInformation) {
- assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
- && opcode.length == 1;
- opcode[0] = Opcodes.INVOKESTATIC;
- methodInformation[0] = ANDROID_LOCALE_CLASS;
- methodInformation[2] = LOCALE_TO_STRING;
+ public void replace(MethodInformation mi) {
+ assert isNeeded(mi.owner, mi.name, mi.desc);
+ mi.opcode = Opcodes.INVOKESTATIC;
+ mi.owner = ANDROID_LOCALE_CLASS;
+ mi.desc = LOCALE_TO_STRING;
}
});
@@ -104,10 +106,27 @@
}
@Override
- public void replace(int[] opcode, String[] methodInformation) {
- assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
- && opcode.length == 1;
- methodInformation[0] = ANDROID_LOCALE_CLASS;
+ public void replace(MethodInformation mi) {
+ assert isNeeded(mi.owner, mi.name, mi.desc);
+ mi.owner = ANDROID_LOCALE_CLASS;
+ }
+ });
+
+ // Case 4: java.lang.System.log?()
+ METHOD_REPLACERS.add(new MethodReplacer() {
+ @Override
+ public boolean isNeeded(String owner, String name, String desc) {
+ return JAVA_LANG_SYSTEM.equals(owner) && name.length() == 4
+ && name.startsWith("log");
+ }
+
+ @Override
+ public void replace(MethodInformation mi) {
+ assert isNeeded(mi.owner, mi.name, mi.desc);
+ assert mi.desc.equals("(Ljava/lang/String;Ljava/lang/Throwable;)V")
+ || mi.desc.equals("(Ljava/lang/String;)V");
+ mi.name = "log";
+ mi.owner = Type.getInternalName(System_Delegate.class);
}
});
}
@@ -141,13 +160,12 @@
public void visitMethodInsn(int opcode, String owner, String name, String desc) {
for (MethodReplacer replacer : METHOD_REPLACERS) {
if (replacer.isNeeded(owner, name, desc)) {
- String[] methodInformation = {owner, name, desc};
- int[] opcodeOut = {opcode};
- replacer.replace(opcodeOut, methodInformation);
- opcode = opcodeOut[0];
- owner = methodInformation[0];
- name = methodInformation[1];
- desc = methodInformation[2];
+ MethodInformation mi = new MethodInformation(opcode, owner, name, desc);
+ replacer.replace(mi);
+ opcode = mi.opcode;
+ owner = mi.owner;
+ name = mi.name;
+ desc = mi.desc;
break;
}
}
@@ -155,19 +173,28 @@
}
}
+ private static class MethodInformation {
+ public int opcode;
+ public String owner;
+ public String name;
+ public String desc;
+
+ public MethodInformation(int opcode, String owner, String name, String desc) {
+ this.opcode = opcode;
+ this.owner = owner;
+ this.name = name;
+ this.desc = desc;
+ }
+ }
+
private interface MethodReplacer {
public boolean isNeeded(String owner, String name, String desc);
/**
- * This method must update the arrays with the new values of the method attributes -
+ * Updates the MethodInformation with the new values of the method attributes -
* opcode, owner, name and desc.
- * @param opcode This array should contain the original value of the opcode. The value is
- * modified by the method if needed. The size of the array must be 1.
*
- * @param methodInformation This array should contain the original values of the method
- * attributes - owner, name and desc in that order. The values
- * may be modified as needed. The size of the array must be 3.
*/
- public void replace(int[] opcode, String[] methodInformation);
+ public void replace(MethodInformation mi);
}
}
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java
new file mode 100644
index 0000000..613c8d9
--- /dev/null
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.tools.layoutlib.java;
+
+import com.android.tools.layoutlib.create.ReplaceMethodCallsAdapter;
+
+/**
+ * Provides dummy implementation of methods that don't exist on the host VM.
+ *
+ * @see ReplaceMethodCallsAdapter
+ */
+public class System_Delegate {
+ public static void log(String message) {
+ // ignore.
+ }
+
+ public static void log(String message, Throwable th) {
+ // ignore.
+ }
+}