我用的软件是:macrodroid
手机是红米k50
做了一个小小的自动化nfc检测,但是每次执行都要点击“打开”
望采纳,谢谢!
1、可以使用Android的Foreground Dispatch系统来自动执行检测到的NFC标签,无需再点确认。Foreground Dispatch系统允许应用程序注册一个intent-filter,以便在检测到NFC标签时自动启动应用程序。应用程序可以使用PendingIntent类来定义要在检测到NFC标签时执行的操作。
2、要自动执行检测到的NFC标签,需要在应用中实现NFC标签的自动处理功能。
<uses-permission android:name="android.permission.NFC" />
public class MyNfcHandler extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
nfcAdapter.enableForegroundDispatch(this, new Intent(this, MyNfcHandler.class), null, null);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
// 在这里处理NFC标签
}
}
<activity android:name=".MyNfcHandler">
<intent-filter>
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
以上就是实现自动执行检测到的NFC标签的步骤,无需再点击确认按钮。
望采纳!!
弹出的通知,想自动化的点击:打开,按钮这个选项。
可通过应用实现 NotificationListener,以及使用 AccessbilityService 去组合使用。
NotificationListener 通知使用权限授权之后,可在这个 listener 里面获取当前系统通知栏内容,包括:打开按钮。
AccessbilityService 无障碍服务,可实现精准控件位置点击!!通过代码去点击这个打开按钮,实现不需要手去点击,打开按钮。。
为什么还需要 NotificationListener,因为需要知道通知内容,以及是哪个 app 弹出来的打开按钮。
要让Android自动执行检测到的NFC标签,您需要在应用程序中实现NFC标签的监听器,并在其中自动执行所需的操作。
1.在 AndroidManifest.xml 中声明NFC权限,并注册一个 IntentFilter 来捕获 NFC 标签的操作。
<uses-permission android:name="android.permission.NFC" />
<activity ... >
<intent-filter>
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
2.在你的 activity 里实现 NfcAdapter.OnNdefPushCompleteCallback 和 NfcAdapter.CreateNdefMessageCallback
public class MainActivity extends AppCompatActivity implements NfcAdapter.OnNdefPushCompleteCallback,
NfcAdapter.CreateNdefMessageCallback {
@Override
public NdefMessage createNdefMessage(NfcEvent event) {
//在这里处理标签信息
return null;
}
@Override
public void onNdefPushComplete(NfcEvent event) {
//在这里处理标签操作完成后的逻辑
}
}
3.在 onCreate() 中启用NFC
NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
if (nfcAdapter != null && nfcAdapter.isEnabled()) {
nfcAdapter.setNdefPushMessageCallback(this, this);
nfcAdapter.setOnNdefPushCompleteCallback(this, this);
}
这样,当检测到NFC标签时,应用程序就会自动执行相应的操作,无需点击确认。
您可以通过以下步骤来实现自动执行检测到的NFC标签:
1.在Macrodroid中创建一个规则。
2.在触发器中选择NFC标签读取。
3.在操作中选择启动应用程序。
4.选择要自动启动的应用程序。
5.保存规则并启用它。
当检测到NFC标签时,Macrodroid将自动读取并启动选定的应用程序,无需再点确认。
如果想要实现检测到NFC标签后自动执行,不需要再点确认,您可以试试以下步骤:
打开设置,进入“系统”选项,然后选择“高级”
进入“开发者选项”,找到“默认操作”,并将其设置为“NFC标签检测”
使用您正在使用的软件macrodroid,配置一个规则,当检测到NFC标签时自动执行预先设置的操作。
旁观学习!
题主应该是想要问的是,如何使用这个软件,而不是开发一个软件。
您可以在Macrodroid中创建一个规则,选择NFC标签读取,然后关联相应的应用即可,这样后续就无需再点确认。
我不是没有设置,已经都设置好了,但是他检测到nfc的时候还需要自己点“打开”才执行,我是想问怎样不需要点击“打开”它就可以执行