我正在使用本教程创建我的第一个react-native项目:http://facebook.github.io/react-native/
当涉及到执行代码和运行react-native run-android我得到:
adb server is out of date. killing...
* daemon started successfully *
Run Code Online (Sandbox Code Playgroud)
Android设备上的应用程序显然无法正常工作.
我已经重新安装了SDK,试图 adb kill-server和adb start-server,但似乎没有任何工作
我使用的是Android 4.4和Ubuntu 14.04
我目前正在尝试创建COSU应用。我想将用户锁定在应用程序中,并禁用所有功能,例如主页按钮,菜单按钮,后退按钮,工具栏等。我在这里遵循了指南:https : //developer.android.com/work/cosu.html#cosu-solutions
我遇到的问题是我收到“没有活动的管理员”错误。我不知道如何使我活跃。是否有通话意图会弹出此提示?我直接按照开发人员的指示进行操作,但是缺少一些未发布在网站上的详细信息。
造成原因:java.lang.SecurityException:在android.os.Parcel.readException(Parcel.java:1693)处没有活动的管理员ComponentInfo {android.example.stage / com.example.app.framework.utilities.kiosk.DeviceAdminReceiver} android.app.admin.IDevicePolicyManager $ Stub $ Proxy.setUserRestriction(IDevicePolicyManager.java:7977)上的android.os.Parcel.readException(Parcel.java:1646),android.app.admin.DevicePolicyManager.addUserRestriction(DevicePolicyManager.java:6296),位于android.example.activity.RegistrationActivity.setUserRestriction(RegistrationActivity.java:320),位于android.example.activity.RegistrationActivity.setDefaultCosuPolicies(RegistrationActivity.java:274),位于android.example.activity.RegistrationActivity.onCreate(RegistrationActivity.java) :110)在android.app.Activity.performCreate(Activity.java:6942)在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126)在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2880)在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988)在android.app.ActivityThread.-wrap14(ActivityThread.java)在android.app .ActivityThread $ H.handleMessage(ActivityThread.java:1631)在android.os.Handler.dispatchMessage(Handler.java:102)at android.os.Looper.loop(Looper.java:154)at android.app.ActivityThread.main(ActivityThread.java:6682)at com.android的java.lang.reflect.Method.invoke(Native Method) .internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1520)位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)154),位于android.app.ActivityThread.main(ActivityThread.java:6682),位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:的java.lang.reflect.Method.invoke(本机方法)处。 1520),位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)154),位于android.app.ActivityThread.main(ActivityThread.java:6682),位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:的java.lang.reflect.Method.invoke(本机方法)处。 1520),位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)处com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1520)处调用(本机方法)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)处com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1520)处调用(本机方法)
这是我的实现。
在OnCreate()中
mAdminComponentName = DeviceAdminReceiver.getComponentName(this);
mDevicePolicyManager = (DevicePolicyManager) getSystemService(
Context.DEVICE_POLICY_SERVICE);
mPackageManager = getPackageManager();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
setDefaultCosuPolicies(true);
}
Run Code Online (Sandbox Code Playgroud)
在onStart()中
// start lock task mode if it's not already active
ActivityManager am = (ActivityManager) getSystemService(
Context.ACTIVITY_SERVICE);
// ActivityManager.getLockTaskModeState api is not available in pre-M. …Run Code Online (Sandbox Code Playgroud)