如何使 TAG_ALPHA_IDENTIFIER 为空而不要求用户确认

How to make TAG_ALPHA_IDENTIFIER empty not to ask user for a confirmation

我的钱包小程序需要执行 PLAY TONE 等操作,但它需要提示“是或否?”来自用户。 AFAIK,是 TAG_ALPHA_IDENTIFIER 负责的。但是,如果我在下面尝试这段代码,它仍然会要求用户确认,但现在带有“@”文本。如何完全摆脱用户确认?

尝试 1。失败,出现 NullPtrException

proHdlr.appendTLV(ToolkitConstants.TAG_ALPHA_IDENTIFIER, null, (short)0, (short)0);
proHdlr.send();

尝试 2. 提示“@@”

proHdlr.appendTLV(ToolkitConstants.TAG_ALPHA_IDENTIFIER, (byte)0, (byte)0);
proHdlr.send();

尝试 3. 提示“@”

proHdlr.appendTLV(ToolkitConstants.TAG_ALPHA_IDENTIFIER, (byte)0);
proHdlr.send();

尝试 4. 提示默认文本

byte[] ALPHA_MSG = {};
proHdlr.appendTLV(ToolkitConstants.TAG_ALPHA_IDENTIFIER, ALPHA_MSG, (short)0, (short)ALPHA_MSG.length);
proHdlr.send();

根据ETSI 102.223,“8.2 Alpha标识符”部分,应该是:

Description Length
Alpha identifier tag 1
Length(X) Y
Alpha identifier X

文档中也有“默认文本”,但是由于“5.3.7 文本属性”要求存在 Alpha 标识符,因此默认文本应该不会打扰,对吗?

在本文档“6.4.5 PLAY TONE”部分,第 45 页,它说:

if the alpha identifier is provided by the UICC and is a null data object (i.e. length = '00' and no value part), the terminal should not give any information to the user;

这就是我需要的。我应该如何使用 ProactiveHandler Java?我所有的 Google 搜索结果都以一些 text/menu Alpha 标识符的标题结束。

如何摆脱用户确认并在没有它的情况下执行主动操作?

a) 尽量不传递任何数据,即省略 proHdlr.appendTLV(ToolkitConstants.TAG_ALPHA_IDENTIFIER 行。

b) 行为可能 phone-related 或更具体 modem-related。查看基于联发科的、基于高通的和 iPhone 并比较结果。