标签: open-mobile-api

如何在不生根已支持智能卡 API 的设备的情况下访问 Secure Element

SEEK-for-Android 文档表示列出的设备支持智能卡 API。

我想通过我的 Android 应用程序访问基于 SIM 卡的安全元件 (SE)。我可以在不 root任何这些受支持的设备且不重建其 Android 系统映像的情况下实现此目的吗?就我而言,该设备是三星 Galaxy S3。

security android nfc sim-card open-mobile-api

5
推荐指数
1
解决办法
5361
查看次数

如何查看Android上的Open Mobile API版本?

据我了解,Open Mobile API与制造商创建的Android ROM捆绑在一起.我们正在使用大量使用Open Mobile API的SDK,并发现一些供应商创建了ROM,其中Open Mobile API的版本与Android版本不兼容.这会导致灾难,当我们尝试使用上述SDK时,应用程序崩溃.因为SDK启动了一个新线程,并在其上崩溃.我们甚至无法将整个逻辑放在try-catch块中,因为所有这些都在一个单独的线程中运行.

我们决定检查Android和Open Mobile API的版本,看看它们是否不兼容,如果是,则完全禁用需要它的功能.

有没有办法确定预装的Open Mobile API的版本?如果有,我该怎么办?

android version nfc open-mobile-api secure-element

3
推荐指数
1
解决办法
2635
查看次数

OMAPI 支持的设备列表

我正在使用 Open Mobile API 进行开发,但到目前为止还没有找到默认支持该 API 的设备列表(默认情况下使用 OEM ROM)。

我意识到从 API 级别 21 开始,Android 电话支持通过 TelephonyManager 直接通过基本和逻辑通道发送 APDU。但我也想知道运行 API 级别 21 之前的设备。

那么,是否已经编制了具有内置支持的设备列表,或者有没有办法自己找出来?

android apdu nfc open-mobile-api secure-element

3
推荐指数
1
解决办法
2130
查看次数

如何在SEservice中使用Executor(Android 9.0开放移动API)

我正在研究NFC,目前尝试为Android 9.0内置的Open Mobile API编写代码,但不明白在SEService中传递Executor参数的方式。

public class MainActivity extends Activity implements SEService.OnConnectedListener {

    final String LOG_TAG = "NfcTest";

    private SEService seService;

    private Button button;


    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        LinearLayout layout = new LinearLayout(this);
        layout.setLayoutParams(new LayoutParams(
                LayoutParams.WRAP_CONTENT,
                LayoutParams.WRAP_CONTENT));

        button = new Button(this);
        button.setLayoutParams(new LayoutParams(
                LayoutParams.WRAP_CONTENT,
                LayoutParams.WRAP_CONTENT));

        button.setText("Click Me");
        button.setEnabled(false);
        button.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                try {

                    Reader[] readers = seService.getReaders();
                    if (readers.length < 1)
                        return;


                    Session session = readers[0].openSession();



                    Channel channel = session.openLogicalChannel(new byte[]{
                            (byte) 0xF0, …
Run Code Online (Sandbox Code Playgroud)

java android nfc open-mobile-api secure-element

1
推荐指数
1
解决办法
1536
查看次数