当前位置: 首页 > 知识库问答 >
问题:

Android 5.0(及其他)设备所有者whitout根设备,通过NFC提供设备

彭霄
2023-03-14

我知道NFC是什么,它是如何工作的,但我不能理解如何使用这个问题。

共有1个答案

梁渊
2023-03-14

创建NFC触发器应用程序,并将其安装在具有NFC的设备上(而不是您希望将应用程序作为设备所有者的设备)。

以下是NFC触发器的代码

public class MainActivity extends Activity implements CreateNdefMessageCallback {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
        nfcAdapter.setNdefPushMessageCallback(this, this);
    }

    @Override
    public NdefMessage createNdefMessage(NfcEvent event) {
        try {
            Properties p = new Properties();

            p.setProperty(
                    DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME,
                    "apk package name");
            p.setProperty(
                    DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION,
                    "app download url");
            p.setProperty(
                    DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM,
                    "apk checksum");
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            OutputStream out = new ObjectOutputStream(bos);
            p.store(out, "");
            final byte[] bytes = bos.toByteArray();

            NdefMessage msg = new NdefMessage(NdefRecord.createMime(
                    DevicePolicyManager.MIME_TYPE_PROVISIONING_NFC, bytes));
            return msg;
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
}

对于校验和,运行以下命令

    null
 类似资料:
  • 是否有其他方法启用它?

  • 我是Java和Android开发人员的新手,来自更多的C++背景。我用这个问题作为指导创建了一个kiosk/cosu应用程序。我将应用程序设置为设备管理,使用

  • 我正在尝试在使用NFC的设备上设置设备所有者包。在这里的Lollipop概述中提到: 它似乎意识到了它正在接收一个提供请求的事实,但我不认为它正在读取我设置的属性,它没有尝试连接WiFi。

  • 我的设备拥有者应用程序有一个问题:在Android5.1之前,它运行良好,但现在更新到Android5.1之后,安装设备拥有者应用程序就会禁用备份服务。 现在,在设备设置中,当进入备份和重置选项时,备份服务将显示为灰色,显示为:备份服务不活动。这是由您的设备策略设置的 以下是他们所做的: 哇哦...这对我的项目来说是一个严重的缺陷!不是开玩笑:现在用户真的不可能在安装设备拥有者应用程序的同时备份数

  • 问题内容: 我正在尝试获取文件的大小,然后再下载。我曾经这样做,它在我的家用计算机Android 2.1 Emulator上运行良好。 但是,一旦我从手机(WiFi或3G)运行我的应用程序,该功能将无法使用,而当我从工作笔记本电脑的Android 2.1仿真器中运行该应用程序时,它也将无法使用。 有谁知道解决方法?还有另一种方法可以获取文件的大小,而无需使用。 问题答案: 此信息并非始终可用。通常

  • 问题内容: 以下代码可在模拟器上运行,但无法在Samsung Galaxy S III上运行。 这是例外: 有什么建议?我这样做是出于学习目的,即为了研讨会。 问题答案: 您有Java空指针异常,因此名称为null。将您的system.out.println()放在尝试中,您将不会出现此错误。在获得名字之后,我真的不知道–Clad 不是我的帖子,而是您的答案: 获取Android设备名称 (对于A