在Android Lollipop上使用NFC激活设备所有者

tagy22

我正在尝试使用NFC在设备上设置设备所有者程序包。此处在“棒棒糖”概述中提到了

要部署和激活设备所有者,必须在设备处于未配置状态时执行从编程应用到设备的NFC数据传输。此数据传输发送的信息与托管配置中所述的配置意图相同。

原因是,一旦设置了此功能,您就可以使用屏幕固定功能将设备锁定为信息亭模式。通过将device_owner.xml文件放置到根设备上的data / system /中,可以手动设置设备所有者,从而能够测试此信息亭模式。

我以前从未使用过NFC,因此可能会有点遥远,但是我根据此处的信息提出了以下NdefMessage

Properties properties = new Properties();
properties.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME, "com.my.package");
properties.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_SSID, "MyWiFiSSID");
properties.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_WIFI_PASSWORD, "WifiPassword");
properties.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM, "C9AD9E082457819B54CF76255A400375E4127112");
properties.setProperty(DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION, "https://dl.dropboxusercontent.com/u/xxx/app-release.apk");


ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutput out = new ObjectOutputStream(bos);
out.writeObject(properties);
byte[] yourBytes = bos.toByteArray();
NdefRecord ndefRecord = NdefRecord.createMime(DevicePolicyManager.MIME_TYPE_PROVISIONING_NFC, yourBytes);
NdefMessage msg = new NdefMessage(ndefRecord);

将其发送到我刚刚使用Lollipop预览还原的设备,将使其显示:

糟糕!无法设置您的设备。与您的IT部门联系。

它似乎正在意识到它正在接收配置请求的事实,但是我不认为它正在读取我设置的属性,它不会尝试连接wifi。

兰迪

看来您需要使用Properties.store来为NdefRecord正确创建字节。

Properties properties = new Properties();
properties.setProperty(...);

ByteArrayOutputStream bos = new ByteArrayOutputStream();
OutputStream out = new ObjectOutputStream(bos);
properties.store(out, "");
byte[] bytes = bos.toByteArray();

NdefMessage msg = new NdefMessage(NdefRecord.createMime(DevicePolicyManager.MIME_TYPE_PROVISIONING_NFC, bytes));

目前,我在下载APK和校验和失败时遇到了问题。完全不确定为什么。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Android 5.0中通过NFC激活设备所有者期间无法连接Wifi

来自分类Dev

Android 5.0(及其他)上的设备所有者淘汰了已root用户的设备,由NFC进行设备配置

来自分类Dev

Android NFC设备所有者设置:发送自定义属性。是否有可能?

来自分类Dev

Android设备所有者通过NFC WiFi类型参数

来自分类Dev

创建设备所有者Android Lollipop时出现校验和错误

来自分类Dev

在Android 10上无法让IMEI成为设备所有者

来自分类Dev

在Android上擦除数据:设备管理员与配置文件所有者

来自分类Dev

在Android上使用资源所有者密码凭据实施OAuth2

来自分类Dev

为什么即使Android 5.0中的设备所有者也无法使用sendBroadcastAsUser(intent,userHandle)?

来自分类Dev

Android-在设备所有者应用中允许安装非市场应用失败

来自分类Dev

Android 设备管理员/配置文件所有者

来自分类Dev

所有设备上的Android getExternalStorageDirectory()行为

来自分类Dev

使用 IdentityServer4 和 Xamarin Android 使用资源所有者密码登录会话超时通知

来自分类Dev

仅在LG设备上使用adb方法的设备所有者问题

来自分类Dev

如何在Wifi-Direct Android中成为特定的群组所有者

来自分类Dev

缺少所有者的运行时依赖项,Android Gradle

来自分类Dev

在Lollipop之前的设备上在Android上跟踪每个应用的使用情况

来自分类Dev

为所有Android设备上的布局分配px值

来自分类Dev

在所有Android设备上显示图像

来自分类Dev

Android快速查找网络上的所有本地设备

来自分类Dev

删除Android上所有配对的蓝牙设备

来自分类Dev

Xamarin - 遍历 Android 设备上的所有音频文件

来自分类Dev

Android设备的所有图像

来自分类Dev

如何在Google Play开发者控制台中找到Android应用的帐户所有者?

来自分类Dev

无法在升级到Android Lollipop的设备上使用adb安装apk

来自分类Dev

在Windows上使用Ant获取文件所有者

来自分类Dev

通过 NFC 的设备所有者应用程序/电话,可完全访问 Play 商店(而不是 Play for Work)

来自分类Dev

在Windows和Android设备上写入和读取NFC标签

来自分类Dev

减少BLE startScan在Android 5.0 Lollipop上检测到的设备

Related 相关文章

  1. 1

    在Android 5.0中通过NFC激活设备所有者期间无法连接Wifi

  2. 2

    Android 5.0(及其他)上的设备所有者淘汰了已root用户的设备,由NFC进行设备配置

  3. 3

    Android NFC设备所有者设置:发送自定义属性。是否有可能?

  4. 4

    Android设备所有者通过NFC WiFi类型参数

  5. 5

    创建设备所有者Android Lollipop时出现校验和错误

  6. 6

    在Android 10上无法让IMEI成为设备所有者

  7. 7

    在Android上擦除数据:设备管理员与配置文件所有者

  8. 8

    在Android上使用资源所有者密码凭据实施OAuth2

  9. 9

    为什么即使Android 5.0中的设备所有者也无法使用sendBroadcastAsUser(intent,userHandle)?

  10. 10

    Android-在设备所有者应用中允许安装非市场应用失败

  11. 11

    Android 设备管理员/配置文件所有者

  12. 12

    所有设备上的Android getExternalStorageDirectory()行为

  13. 13

    使用 IdentityServer4 和 Xamarin Android 使用资源所有者密码登录会话超时通知

  14. 14

    仅在LG设备上使用adb方法的设备所有者问题

  15. 15

    如何在Wifi-Direct Android中成为特定的群组所有者

  16. 16

    缺少所有者的运行时依赖项,Android Gradle

  17. 17

    在Lollipop之前的设备上在Android上跟踪每个应用的使用情况

  18. 18

    为所有Android设备上的布局分配px值

  19. 19

    在所有Android设备上显示图像

  20. 20

    Android快速查找网络上的所有本地设备

  21. 21

    删除Android上所有配对的蓝牙设备

  22. 22

    Xamarin - 遍历 Android 设备上的所有音频文件

  23. 23

    Android设备的所有图像

  24. 24

    如何在Google Play开发者控制台中找到Android应用的帐户所有者?

  25. 25

    无法在升级到Android Lollipop的设备上使用adb安装apk

  26. 26

    在Windows上使用Ant获取文件所有者

  27. 27

    通过 NFC 的设备所有者应用程序/电话,可完全访问 Play 商店(而不是 Play for Work)

  28. 28

    在Windows和Android设备上写入和读取NFC标签

  29. 29

    减少BLE startScan在Android 5.0 Lollipop上检测到的设备

热门标签

归档