不知道NFC一直开着会不会费电啊... NFC功能也就是每天刷个交通卡用用...没必要一直开着, 试试autojs的定时任务功能,看看在我手机上能不能定时执行...
安卓文档上没给开关的方法, 不过可以反射调用一下.直接上代码吧:
const NFC = new NFCManager();
//判断NFC是否开启,开着的时候就关闭, 关闭的时候就开启
if (NFC.hasNfc()) {
NFC.disable();
} else {
NFC.enable();
}
function NFCManager() {
importClass(android.nfc.NfcManager);
importClass(android.nfc.NfcAdapter);
importClass(android.content.Context);
var mNFCManager =context.getSystemService(Context.NFC_SERVICE);
var adapter = mNFCManager.getDefaultAdapter();
this.enable = function() {
try {
var method =adapter.getClass().getDeclaredMethod("enable");
method.invoke(adapter);
} catch (e) {
log(e);
}
}
this.disable = function() {
try {
var method = adapter.getClass().getDeclaredMethod("disable");
method.invoke(adapter);
} catch (e) {
log(e);
}
}
this.hasNfc = function() {
var bRet=false;
if(context==null)
return bRet;
if (adapter != null && adapter.isEnabled()) {
bRet=true;
}
return bRet;
}
}
这里需要注意的是, 我没有添加判断是否有NFC模块...这个需要你们自己添加一下, 不过我觉得也没必要添加吧....,有没有NFC功能,你自己心里还没有点数么...反正没有NFC就会报错,这个就不要再问了.
另外可以配合autojs的定时任务来定时开启, 不过autojs的后台保活...emmm需要你们自己针对自己的手机进行设置一下. 目测我的华为EMUI 10.1 是可以后台保活的...
全部0条评论
快来发表一下你的评论吧 !