Manual Input ADB Command to make Locale Work on Android 4.2+ No ROOTed Devices

First: Install our app Locales first

What you need

  • Computer
  • Usb cable
  • Connect your device to the computer

Step 1. Enabling adb Debugging (Must do)

Tutorial – http://blog.sightidea.com/?p=165 (Open Developer Options and open USB debugging on Android 4.2+)

 

Step 2. Dwonload ADB Tools:

Download the ADB Tools and Extract it.(After extracted you will find folder adb-tools)
Open a command line(Linux or Mac called Terminals, Windows called cmd.exe

Use command cd into “adb-tools” folder downloaded above.(command like below, replace YouPath to your file path)

cd /YouPath/adb-tools

Step 3. Grant Permission

Grant Permission
  • Input the Command Below and press “Enter” key:
adb shell pm grant com.langs.locales android.permission.CHANGE_CONFIGURATION

 


If you get “error: no devices found“, that is mean you phone has not open the ADB debugging, Please Read Step 1 or Read Tutorial – Open Developer Options and open USB debugging on Android 4.2+

At last

You can click list item of Set Locale app to change language .

2 responses on “Manual Input ADB Command to make Locale Work on Android 4.2+ No ROOTed Devices

  1. Pingback: Recommended Way to Make Locales work on Android 4.2+ | SightIdea's Blog

  2. Satria Adi

    Help, why this happen?

    Exception occurred while executing:
    java.lang.IllegalArgumentException: Unknown package: com.sys.locale
    at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:1403)
    at com.android.server.pm.permission.PermissionManagerService.access$900(PermissionManagerService.java:89)
    at com.android.server.pm.permission.PermissionManagerService$PermissionManagerInternalImpl.grantRuntimePermission(PermissionManagerService.java:2118)
    at com.android.server.pm.PackageManagerService.grantRuntimePermission(PackageManagerService.java:5607)
    at com.android.server.pm.PackageManagerShellCommand.runGrantRevokePermission(PackageManagerShellCommand.java:1730)
    at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:217)
    at android.os.ShellCommand.exec(ShellCommand.java:103)
    at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:21846)
    at android.os.Binder.shellCommand(Binder.java:634)
    at android.os.Binder.onTransact(Binder.java:532)
    at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:2809)
    at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4017)
    at android.os.Binder.execTransact(Binder.java:731)

Leave a Reply