diff options
author | 2023-10-23 21:29:43 +0000 | |
---|---|---|
committer | 2023-10-23 21:29:43 +0000 | |
commit | 47be3bb627879495b8b6426a7f5b5680d9b1ee6b (patch) | |
tree | 5dd1dcdcae893bf0e39e9a9bfe2b91f59de99687 | |
parent | 867815f0bea9f5497ef4695fb8bd5909e7ae6abd (diff) | |
parent | 8140652ead483cad0f12c5f8fed1dec68e057f3e (diff) |
Merge "Revert "svc(nfc): Use NfcAdapter API to enable/disable"" into main
-rw-r--r-- | cmds/svc/src/com/android/commands/svc/NfcCommand.java | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/cmds/svc/src/com/android/commands/svc/NfcCommand.java b/cmds/svc/src/com/android/commands/svc/NfcCommand.java index 870e0078450f..020ca3387555 100644 --- a/cmds/svc/src/com/android/commands/svc/NfcCommand.java +++ b/cmds/svc/src/com/android/commands/svc/NfcCommand.java @@ -16,10 +16,10 @@ package com.android.commands.svc; -import android.app.ActivityThread; import android.content.Context; -import android.nfc.NfcAdapter; -import android.nfc.NfcManager; +import android.nfc.INfcAdapter; +import android.os.RemoteException; +import android.os.ServiceManager; public class NfcCommand extends Svc.Command { @@ -42,24 +42,27 @@ public class NfcCommand extends Svc.Command { @Override public void run(String[] args) { - Context context = ActivityThread.systemMain().getSystemContext(); - NfcManager nfcManager = context.getSystemService(NfcManager.class); - if (nfcManager == null) { - System.err.println("Got a null NfcManager, is the system running?"); - return; - } - NfcAdapter adapter = nfcManager.getDefaultAdapter(); + INfcAdapter adapter = INfcAdapter.Stub.asInterface( + ServiceManager.getService(Context.NFC_SERVICE)); + if (adapter == null) { System.err.println("Got a null NfcAdapter, is the system running?"); return; } - if (args.length == 2 && "enable".equals(args[1])) { - adapter.enable(); - return; - } else if (args.length == 2 && "disable".equals(args[1])) { - adapter.disable(true); + + try { + if (args.length == 2 && "enable".equals(args[1])) { + adapter.enable(); + return; + } else if (args.length == 2 && "disable".equals(args[1])) { + adapter.disable(true); + return; + } + } catch (RemoteException e) { + System.err.println("NFC operation failed: " + e); return; } + System.err.println(longHelp()); } |