问题标签 [ndef]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用 ActivityInstrumentationTestCase2 通过 Intent 传递输入数据 (NDEF msgs) 来测试 Android 应用程序
很长一段时间以来,我都可以通过阅读 StackOverflow 上的许多不同帖子来解决我的问题,但现在我的问题变得非常有趣。我被卡住了,也许有人可以给我一些提示:
我想使用ActivityInstrumentationTestCase2测试 Android 应用程序。我的测试场景如下:我的 Android 设备上的数据库中有几个测试数据集(十六进制字符串,编码有效和无效的 NDEF 消息)。我为数据库中的每个行条目生成了一个 java 文件,其中包含对我要测试的应用程序的调用。
以下是这些功能之一的示例:
如您所见,我使用了 Robotium 框架,并按照他们的常见问题解答和教程进行了所有设置(特别是:https ://code.google.com/p/robotium/wiki/RobotiumForAPKFiles )
我正在使用专门的Instrumentation Runner,它能够将结果写入 xml 文件,并且似乎适合我的需要;这是我的清单文件:
到目前为止我已经尝试/取得的成就:
- 我想测试的应用程序是第三方应用程序,所以我用我的调试密钥重新签署了它们。(作品)
- 由于我想测试不同的应用程序,我在手机上实现了包含测试用例的 Java 文件的生成;因此,通过按钮单击包含
*.java
我所有测试的文件(构造函数、setUp()、testNdefPush0() ... testNdefPush100()、tearDown())并Manifest.xml
在手机上生成一个合适的文件。然后将这些文件拉到PC上,在测试项目中编译(ant clean, ant debug, ant install -r /path/to/target.apk)并安装到手机上 我可以使用 adb shell 运行测试:
adb -d shell am instrument -w -r -e class de.nfc.tests.NfcTestCase -e junitOutputDirectory /mnt/sdcard/ de.nfc/pl.polidea.instrumentation.PolideaInstrumentationTestRunner
如果测试数据有效,则仪器工作并生成一个 xml 文件,其中包含 sdcard 上的结果。
如果测试数据无效(参见示例) Instrumentation 崩溃并且无法继续进行以下测试:
INSTRUMENTATION_RESULT:longMsg=java.lang.NullPointerException:无法启动活动 ComponentInfo{se.anyro.nfc_reader/se.anyro.nfc_reader.TagViewer}:java.lang.NullPointerException
问题
我怎样才能实现,失败的测试被记录为失败,JUnit 继续进行以下测试。
我在这里发现了一个类似的问题Android JUnit test suite hangs after Activity throws NullPointerException in one test case,但到目前为止没有回复:(
有没有人通过向他们传递测试数据来测试(第三方)应用程序Intent
并且可以分享/提供一些建议/经验?
我确实希望我把问题说清楚了,因为它的设置非常复杂,我希望我为不熟悉该主题的人提到了所有相关事实(你知道森林和树木;))如果没有,请不要介意问,我会尝试解释:D
java - Android NFC 未在点击时打开正确的类
我有一个包含 2 个类的应用程序,CardActivity
当 NFC 标签轻按/刷卡时,我需要我的应用程序打开第二个类。该应用程序可以正常打开,但MainActivity
正在运行,而不是CardActivity
.
我会冒险猜测这是我的清单的问题,但它看起来是正确的。这是无论如何:
我确信标签本身是正确的,因为我已经在另一个应用程序中打开它来查看它的内容。
下面是两个类。
卡片活动:
主要活动:
这是我用来编写标签的代码。顺便说一句,这是在另一个应用程序上完成的:
android - NFC - 我可以将 NdfMessage 传递给 iOS 吗?
我正在开发一个使用 NFC 技术的 APP 将一些数据传递给另一个 android 设备
但我可以将 NdfMessage 传递给 iOS 设备吗?
如果 iOS 设备有外部 NFC 芯片
android - 轻松的 NFC 网址共享
我正在开发一个维基百科阅读器,我希望用户能够使用 NFC 将他正在阅读的文章分享给朋友。我不想打开这些意图或任何类似的东西,只允许朋友在他选择的浏览器中打开 url。我正在使用网络视图,因此获取网址并不难。
我一直在互联网上搜索某种如此简单的示例,但我还没有找到足够简单的东西。你们中有人对教程或示例有什么建议吗?
java - 众所周知的类型 android nfc 意图过滤器
我想过滤以下类型:
瓮:nfc:wkt:Hs
在android清单中。
我写的数据如下:
我现在如何正确过滤类型?
谢谢。
c++ - 如何将 NDEF 中的 NFC 标签转换为非 NDEF
有没有办法将 NDEF 格式的 NFC 标签再次转换为原始格式,即使其成为非 NDEF。
提前致谢
android - 三星 Nexus S 与 HTC - NFC 意图过滤器 + AAR
我将 AAR 保存在我的 NFC-Tag 上。如果我用 Nexus S (Android 4.1.1) 扫描 TAG,我会得到 NfcAdapter.ACTION_NDEF_DISCOVERED 并且 NFCReaderActivity 直接启动。
如果我对 HTC X (Android 4.0.3) 执行相同操作,则应用程序会启动,但我只获得了 android.intent.action.MAIN,因此 NFCReaderActivity 不会出现,并且标签也不会被扫描。
这适用于三星 Nexus S,但不适用于 HTC:
这是我的活动和过滤器。
有人出主意吗?
编辑:
这适用于 HTC,但不适用于三星 Nexus S:
在这里我得到以下异常@HTC - 也许这是我不知道的问题:堆栈:
也许问题是版本 4.1.1 vs 4.0.3 - 我不知道:事实是:只有 Ndef 适用于三星,如果我添加
android - NFC 标签未在 Android 上的浏览器中打开 URL
我在包含以下 URL 的 Mifare Classic 标签上记录了 NDEF 消息:
它链接到我的网络服务器,我想从我的 Android 手机上的数据库中读取数据。当我在浏览器中键入该地址时,请求的页面会按原样打开。但是当我尝试使用 NFC 标签打开它时,会出现一个白屏,其中显示:
存储其他地址(我试过 google.com)工作得很好。所以我想知道在 NDEF 记录中使用 PHP 或 IP 地址是否存在任何已知问题?或者任何其他想法为什么它不起作用?
这里是消息的十六进制代码:
这真的很紧急,如果有人可以提供帮助,那就太好了!
android - NDEF_DISCOVERED 不适用于三星 Galaxy S3
我有一个我觉得很奇怪的问题。我有一个应用程序,它应该在扫描包含 NdefMessage 的标签时启动。这一切在 Galaxy Nexus、Nexus S 和 HTC one X 上运行良好,但当我尝试在 Galaxy S3 上执行此操作时,应用程序没有出现。
我的意图过滤器如下所示:
每次扫描包含 NdefMessage 的标签时,这应该会在应用程序选择器中显示应用程序。现在要在 Galaxy S3 上解决这个问题,我需要添加 TAG_DISCOVERED。但这不是我想要的,因为现在它会弹出我扫描的每个标签。
有没有其他人看到过这种行为?
编辑:
它还包含 TECH_DISCOVERED 意图过滤器,它还检查 ndef 技术,因此这不能解决问题。
android - 在 Ndef writeNdefMessage 中捕获 NFCSTATUS_INSUFFICIENT_STORAGE 错误
在使用 Ndef.writeNdefMessage 写入 NFC 标签时,我在 catch 块中收到 IOException 错误。检查 Logcat 显示 PhLibNfc_Ndef_Write 函数触发了 NFCSTATUS_INSUFFICIENT_STORAGE 错误,这有效地触发了 IOException。有没有办法在应用层捕获这个 NFCSTATUS_INSUFFICIENT_STORAGE 错误。我搜索了很多,但总是以 PhLibNfc_Ndef_Write 函数的源代码结束。
我用来写标签的代码
我遇到的 logcat 错误
对捕获 NFCSTATUS_INSUFFICIENT_STORAGE 错误有任何帮助吗?