登录/注册

nfc触碰后自动发送指定消息

更多

要实现NFC触碰后自动发送指定消息的功能,可以在Android设备上通过以下步骤实现(以发送短信为例):


1. 添加权限和NFC配置

AndroidManifest.xml 中添加权限和NFC相关声明:

<!-- NFC权限 -->
<uses-permission android:name="android.permission.NFC" />
<!-- 发送短信权限 -->
<uses-permission android:name="android.permission.SEND_SMS" />
<!-- 仅支持带NFC的设备 -->
<uses-feature android:name="android.hardware.nfc" android:required="true" />

<application>
    <activity android:name=".MainActivity">
        <!-- 声明响应NFC触碰 -->
        <intent-filter>
            <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>
</application>

2. 编写核心代码

MainActivity.java 中实现NFC监听和短信发送逻辑:

import android.content.Intent;
import android.nfc.NdefMessage;
import android.nfc.NfcAdapter;
import android.os.Bundle;
import android.telephony.SmsManager;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    private NfcAdapter nfcAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 获取NFC适配器
        nfcAdapter = NfcAdapter.getDefaultAdapter(this);

        // 检查NFC支持
        if (nfcAdapter == null) {
            // 设备不支持NFC,提示用户
            return;
        }

        // 首次启动时处理NFC触碰事件
        handleIntent(getIntent());
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        // 处理新的NFC触碰
        handleIntent(intent);
    }

    private void handleIntent(Intent intent) {
        // 验证是否为NFC触碰事件
        if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction())) {
            // 获取NFC数据
            NdefMessage[] messages = intent.getParcelableArrayExtra(
                NfcAdapter.EXTRA_NDEF_MESSAGES,
                NdefMessage.class
            );

            if (messages != null && messages.length > 0) {
                // 触碰到NFC标签时发送短信
                sendSMS("目标手机号", "指定消息内容");
            }
        }
    }

    // 发送短信方法
    private void sendSMS(String phoneNumber, String message) {
        try {
            SmsManager smsManager = SmsManager.getDefault();
            smsManager.sendTextMessage(phoneNumber, null, message, null, null);
        } catch (SecurityException e) {
            // 处理权限异常
        }
    }

    @Override
    protected void onResume() {
        super.onResume();
        // 启用前台调度系统(捕获NFC事件)
        if (nfcAdapter != null) {
            nfcAdapter.enableForegroundDispatch(
                this,
                null, // 使用默认的PendingIntent
                null,
                null
            );
        }
    }

    @Override
    protected void onPause() {
        super.onPause();
        // 暂停时禁用NFC监听
        if (nfcAdapter != null) {
            nfcAdapter.disableForegroundDispatch(this);
        }
    }
}

3. 关键点说明


4. 测试条件

  1. 设备要求
    • 支持NFC的Android手机(系统需 ≥ Android 5.0)。
    • 开启NFC功能(设置 → 连接与共享 → NFC)。
  2. NFC标签:写入任意NDEF数据(可用APP如"NFC Tools"写入空标签)。
  3. 测试步骤
    • 安装APP并授予短信权限。
    • 打开APP,用NFC标签触碰手机背部。
    • 自动向预设号码发送短信。

替代方案(无需代码)

优势:无需开发,适合普通用户,但需购买/安装第三方工具。

根据需求选择开发或自动化工具方案即可实现NFC触碰发送消息的功能。

NFC”,让交互更便捷

作为新一代智能应用入口,融智兴科技推出的NFC“碰一碰”产品,以“轻触即连、无感体验”的优势,为企业和用户带来全新的交互方式。

2025-09-26 17:11:41

复位管脚的上拉电阻会引起复位,为什么?

我发现一个很奇怪的现象,每当我用万用表的其中一个表笔去触碰复位管脚10K的上拉电阻,触

2024-05-08 06:47:57

NFC技术的定义通信方式

)的近距离无线通信技术。具有NFC功能的电子设备通过简单触碰的方式就可以完成信息交换及内容与服务的访问。

资料下载 李华 2023-05-15 15:49:45

4.5*4.5插件控开关原理图

4.5*4.5插件触控开关原理图

资料下载 汉博电子 2022-01-06 09:59:27

基于双接口NFC芯片的FPGA验证系统

介绍了一种双接口NFC芯片的架构和功能,提岀并实现了用于该双接口NFC芯片的FPGA验证系统及其验证流程。该FPGA验证系统包括FPGA、PIC单片机以及带N

资料下载 佚名 2021-05-26 14:03:26

串口通信之读取与发送及LabView文件下载

串口通信之读取与发送及LabView文件下载

资料下载 ABC_Lee 2021-04-26 11:06:21

汽车侧仿真:用RADIOSS多域求解资料下载

电子发烧友网为你提供汽车侧碰仿真:用RADIOSS多域求解资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。

资料下载 贾大林 2021-04-07 08:47:37

鸿蒙3.0上配置NFC

最近更新了 HarmonyOS 3.0 系统,按照过去的方法配置 NFC 碰一碰方法配置应用,发现出现了一些问题,在一些摸索测试中总结了一套最新

2022-12-26 10:02:51

式触摸检测,原理搞不清?

最近遇到一个难题,功能是通过碰触金属来实现触摸功能,通过2个IO口高频的充放电,检测电容电压到高电平就完全放电再循环,当有碰触到金属触摸片时,整个充电过程需要的时间会大幅度缩短,可以明显区分触碰与无

2022-07-19 13:28:55

【视频】解决方案第5期:NFC)介绍

本期主要对HarmonyOS Connect碰一碰(NFC)功能进行技术解读,重点介绍极简交互方式中

2022-03-09 14:43:30

HarmonyOS基本功能如何实现

碰一碰简单来说就是,使用 NFC 拉起配网 FA,入网之后,使用控制 FA 进行设备控制。

2022-01-04 14:58:57

”版本的蓝牙键盘,来啦

到手机上,打开手机NFC功能,用手机背面(NFC传感器)靠近指定的NFC

2021-07-28 18:04:29

机智云NFC”配网解决方案

较长、设备响应速率慢等问题,不利于用户初次使用和体验智能设备。因此,快速简单的配网方式成为市场需求所在,比如基于NFC的IoT设备一碰配网解决方案。机智云+内置鸿蒙系统的

2021-04-20 14:20:31

手机NFC智慧贴,一秒开启“三翼鸟”智慧场景

当你深夜回到家,只需要拿出手机碰一碰NFC智慧贴,就能一秒开启就寝场景,灯光关闭、安防布放、空调

2020-09-18 17:09:04

7天热门专题 换一换
相关标签