我已经尝试过这段代码,但它没有正常运行。
Intent intent = new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", true);
sendBroadcast(intent, Manifest.permission.WRITE_SECURE_SETTINGS);
出现此错误:
java.lang.RuntimeException:无法启动活动 ComponentInfo {com.setting / com.setting.activity.TraceLocationActivity}: java.lang.SecurityException:Permission Denial:不允许发送 从pid = 28258广播android.location.GPS_ENABLED_CHANGE, UID = 10395 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2793) 在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2864) 在android.app.ActivityThread.-wrap12(ActivityThread.java) 在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1567) 在android.os.Handler.dispatchMessage(Handler.java:105) 在android.os.Looper.loop(Looper.java:156) 在android.app.ActivityThread.main(ActivityThread.java:6523) at java.lang.reflect.Method.invoke(Native Method) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:942) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832) 引起:java.lang.SecurityException:Permission Denial:不允许发送 从pid = 28258广播android.location.GPS_ENABLED_CHANGE, UID = 10395 在android.os.Parcel.readException(Parcel.java:1665) 在android.os.Parcel.readException(Parcel.java:1618) 在android.app.ActivityManagerProxy.broadcastIntent(ActivityManagerNative.java:3533) 在android.app.ContextImpl.sendBroadcast(ContextImpl.java:1012) 在android.content.ContextWrapper.sendBroadcast(ContextWrapper.java:426) at com.setting.activity.TraceLocationActivity.onCreate(TraceLocationActivity.java:46) 在android.app.Activity.performCreate(Activity.java:6915) 在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123) 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2746) 在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2864) 在android.app.ActivityThread.-wrap12(ActivityThread.java) 在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1567) 在android.os.Handler.dispatchMessage(Handler.java:105) 在android.os.Looper.loop(Looper.java:156) 在android.app.ActivityThread.main(ActivityThread.java:6523) at java.lang.reflect.Method.invoke(Native Method) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:942) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
答案 0 :(得分:5)
如何在不询问用户的情况下自动开启GPS?
出于明显的隐私和安全原因,这是不可能的。