Properties p = new Properties();
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME,"com.somepackage.app");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION,"https"//example.com/app/app.apk");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM,"akjlsdghadkq");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_SSID, "aaaSSID");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_PASSWORD,"password");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_SECURITY_TYPE, "WPA");
p.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_HIDDEN, "false");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
OutputStream out;
out = new ObjectOutputStream(bos);
p.store(out, "");
final byte[] bytes = bos.toByteArray();
record = (NdefRecord.createMime("application/com.android.managedprovisioning", bytes));
我已经使用了以上代码处理NFC消息。除了Wifi部分之外,一切都正常。当NFC消息中包含Wifi时,进程会停在“连接Wifi”屏幕上。
当NFC消息中不包含Wifi设置时,会显示可用Wifi网络列表,可以选择任何一个网络。然后,它会从指定的下载地址下载.apk文件,计算校验和,并将其与NFC消息中指定的校验和进行验证。最终激活设备所有者。
问题仅在NFC消息中指定Wifi详细信息时发生。设备所有者配置过程会停在“连接Wifi”处。
当提供错误的Wifi密码时也会出现相同情况。没有任何提示表明密码是错误的。
请帮我解决这个问题!