summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorNick Pelly <npelly@google.com>2010-09-28 22:40:18 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-09-28 22:40:18 -0700
commitf4c3b7e916b417fabb468ec0a565dc79cd7ba2b3 (patch)
treecd2bf75a03b260858cbeb78ea6d54a7f0dfdf8d2 /core/java/android
parent10b15c08bb8ffb1fddeac2e79c882a23ffe7a3de (diff)
parent038cabe0247ee46df62f9363f1a303bc5b9c1028 (diff)
am 038cabe0: NFC integration
Merge commit '038cabe0247ee46df62f9363f1a303bc5b9c1028' into gingerbread-plus-aosp * commit '038cabe0247ee46df62f9363f1a303bc5b9c1028': NFC integration
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/ContextImpl.java20
-rw-r--r--core/java/android/content/Context.java10
-rw-r--r--core/java/android/provider/Settings.java94
3 files changed, 123 insertions, 1 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index 539d50a651ea..3c2a7b81ba30 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -99,6 +99,8 @@ import android.view.inputmethod.InputMethodManager;
import android.accounts.AccountManager;
import android.accounts.IAccountManager;
import android.app.admin.DevicePolicyManager;
+import com.trustedlogic.trustednfc.android.NfcManager;
+import com.trustedlogic.trustednfc.android.INfcManager;
import com.android.internal.os.IDropBoxManagerService;
@@ -168,6 +170,7 @@ class ContextImpl extends Context {
private static ThrottleManager sThrottleManager;
private static WifiManager sWifiManager;
private static LocationManager sLocationManager;
+ private static NfcManager sNfcManager;
private static final HashMap<String, SharedPreferencesImpl> sSharedPrefs =
new HashMap<String, SharedPreferencesImpl>();
@@ -966,6 +969,8 @@ class ContextImpl extends Context {
return getClipboardManager();
} else if (WALLPAPER_SERVICE.equals(name)) {
return getWallpaperManager();
+ } else if (NFC_SERVICE.equals(name)) {
+ return getNfcManager();
} else if (DROPBOX_SERVICE.equals(name)) {
return getDropBoxManager();
} else if (DEVICE_POLICY_SERVICE.equals(name)) {
@@ -1201,6 +1206,21 @@ class ContextImpl extends Context {
return mDownloadManager;
}
+ private NfcManager getNfcManager()
+ {
+ synchronized (sSync) {
+ if (sNfcManager == null) {
+ IBinder b = ServiceManager.getService(NFC_SERVICE);
+ if (b == null) {
+ return null;
+ }
+ INfcManager service = INfcManager.Stub.asInterface(b);
+ sNfcManager = new NfcManager(service, mMainThread.getHandler());
+ }
+ }
+ return sNfcManager;
+ }
+
@Override
public int checkPermission(String permission, int pid, int uid) {
if (permission == null) {
diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java
index 0dd2e4a74878..693be21cc28e 100644
--- a/core/java/android/content/Context.java
+++ b/core/java/android/content/Context.java
@@ -1555,6 +1555,16 @@ public abstract class Context {
public static final String SIP_SERVICE = "sip";
/**
+ * Use with {@link #getSystemService} to retrieve an
+ * {@link com.trustedlogic.trustednfc.android.INfcManager.INfcManager} for
+ * accessing NFC methods.
+ *
+ * @see #getSystemService
+ * @hide
+ */
+ public static final String NFC_SERVICE = "nfc";
+
+ /**
* Determine whether the given permission is allowed for a particular
* process and user ID running in the system.
*
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 27df082f27d5..99d4e8704e3c 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -1640,6 +1640,86 @@ public final class Settings {
public static final String NOTIFICATION_LIGHT_PULSE = "notification_light_pulse";
/**
+ * Whether nfc is enabled/disabled
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_ON = "nfc_on";
+
+ /**
+ * Whether nfc secure element is enabled/disabled
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_SECURE_ELEMENT_ON = "nfc_secure_element_on";
+
+ /**
+ * Whether nfc secure element is enabled/disabled
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_SECURE_ELEMENT_ID = "nfc_secure_element_id";
+
+ /**
+ * LLCP LTO value
+ * @hide
+ */
+ public static final String NFC_LLCP_LTO = "nfc_llcp_lto";
+
+ /**
+ * LLCP MIU value
+ * @hide
+ */
+ public static final String NFC_LLCP_MIU = "nfc_llcp_miu";
+
+ /**
+ * LLCP WKS value
+ * @hide
+ */
+ public static final String NFC_LLCP_WKS = "nfc_llcp_wks";
+
+ /**
+ * LLCP OPT value
+ * @hide
+ */
+ public static final String NFC_LLCP_OPT = "nfc_llcp_opt";
+
+ /**
+ * NFC Discovery Reader A
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_DISCOVERY_A = "nfc_discovery_a";
+
+ /**
+ * NFC Discovery Reader B
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_DISCOVERY_B = "nfc_discovery_b";
+
+ /**
+ * NFC Discovery Reader Felica
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_DISCOVERY_F = "nfc_discovery_felica";
+
+ /**
+ * NFC Discovery Reader 15693
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_DISCOVERY_15693 = "nfc_discovery_15693";
+
+ /**
+ * NFC Discovery NFCIP
+ * 0=disabled. 1=enabled.
+ * @hide
+ */
+ public static final String NFC_DISCOVERY_NFCIP = "nfc_discovery_nfcip";
+
+ /**
* Show pointer location on screen?
* 0 = no
* 1 = yes
@@ -1804,7 +1884,19 @@ public final class Settings {
SHOW_WEB_SUGGESTIONS,
NOTIFICATION_LIGHT_PULSE,
SIP_CALL_OPTIONS,
- SIP_RECEIVE_CALLS
+ SIP_RECEIVE_CALLS,
+ NFC_ON,
+ NFC_SECURE_ELEMENT_ON,
+ NFC_SECURE_ELEMENT_ID,
+ NFC_LLCP_LTO,
+ NFC_LLCP_MIU,
+ NFC_LLCP_WKS,
+ NFC_LLCP_OPT,
+ NFC_DISCOVERY_A,
+ NFC_DISCOVERY_B,
+ NFC_DISCOVERY_F,
+ NFC_DISCOVERY_15693,
+ NFC_DISCOVERY_NFCIP,
};
// Settings moved to Settings.Secure