summaryrefslogtreecommitdiffstats
path: root/nci
diff options
context:
space:
mode:
authorAndres Morales <anmorales@google.com>2014-11-25 17:36:31 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-25 17:36:31 +0000
commitf5f07661a013b8fc411d20894f7823d993d164b5 (patch)
treeba45700efadf22450f44ad396f0b810a727994a5 /nci
parent733b05f316c23839d05656c100839511ae3060d4 (diff)
parent10e647dd5d8c476537d14844775c8baa961b4f9f (diff)
downloadandroid_packages_apps_Nfc-f5f07661a013b8fc411d20894f7823d993d164b5.tar.gz
android_packages_apps_Nfc-f5f07661a013b8fc411d20894f7823d993d164b5.tar.bz2
android_packages_apps_Nfc-f5f07661a013b8fc411d20894f7823d993d164b5.zip
am 10e647dd: am 8a80bc7b: Merge "Prevent Beam at the lockscreen and during provisioning" into lmp-mr1-dev
* commit '10e647dd5d8c476537d14844775c8baa961b4f9f': Prevent Beam at the lockscreen and during provisioning
Diffstat (limited to 'nci')
-rwxr-xr-xnci/jni/NativeNfcManager.cpp20
-rwxr-xr-xnci/src/com/android/nfc/dhimpl/NativeNfcManager.java4
2 files changed, 17 insertions, 7 deletions
diff --git a/nci/jni/NativeNfcManager.cpp b/nci/jni/NativeNfcManager.cpp
index 5001ee7e..98e243a1 100755
--- a/nci/jni/NativeNfcManager.cpp
+++ b/nci/jni/NativeNfcManager.cpp
@@ -122,6 +122,7 @@ static bool sIsDisabling = false;
static bool sRfEnabled = false; // whether RF discovery is enabled
static bool sSeRfActive = false; // whether RF with SE is likely active
static bool sReaderModeEnabled = false; // whether we're only reading tags, not allowing P2p/card emu
+static bool sP2pEnabled = false;
static bool sP2pActive = false; // whether p2p was last active
static bool sAbortConnlessWait = false;
#define CONFIG_UPDATE_TECH_MASK (1 << 1)
@@ -930,7 +931,7 @@ TheEnd:
**
*******************************************************************************/
static void nfcManager_enableDiscovery (JNIEnv* e, jobject o, jint technologies_mask, \
- jboolean enable_lptd, jboolean reader_mode, jboolean enable_host_routing,
+ jboolean enable_lptd, jboolean reader_mode, jboolean enable_host_routing, jboolean enable_p2p,
jboolean restart)
{
tNFA_TECHNOLOGY_MASK tech_mask = DEFAULT_TECH_MASK;
@@ -968,20 +969,27 @@ static void nfcManager_enableDiscovery (JNIEnv* e, jobject o, jint technologies_
if (sPollingEnabled)
{
ALOGD ("%s: Enable p2pListening", __FUNCTION__);
- PeerToPeer::getInstance().enableP2pListening (!reader_mode);
+
+ if (enable_p2p && !sP2pEnabled) {
+ sP2pEnabled = true;
+ PeerToPeer::getInstance().enableP2pListening (true);
+ NFA_ResumeP2p();
+ } else if (!enable_p2p && sP2pEnabled) {
+ sP2pEnabled = false;
+ PeerToPeer::getInstance().enableP2pListening (false);
+ NFA_PauseP2p();
+ }
if (reader_mode && !sReaderModeEnabled)
{
sReaderModeEnabled = true;
- NFA_PauseP2p();
NFA_DisableListening();
NFA_SetRfDiscoveryDuration(READER_MODE_DISCOVERY_DURATION);
}
- else if (sReaderModeEnabled)
+ else if (!reader_mode && sReaderModeEnabled)
{
struct nfc_jni_native_data *nat = getNative(e, o);
sReaderModeEnabled = false;
- NFA_ResumeP2p();
NFA_EnableListening();
NFA_SetRfDiscoveryDuration(nat->discovery_duration);
}
@@ -1616,7 +1624,7 @@ static JNINativeMethod gMethods[] =
{"commitRouting", "()Z",
(void*) nfcManager_commitRouting},
- {"doEnableDiscovery", "(IZZZZ)V",
+ {"doEnableDiscovery", "(IZZZZZ)V",
(void*) nfcManager_enableDiscovery},
{"doCheckLlcp", "()Z",
diff --git a/nci/src/com/android/nfc/dhimpl/NativeNfcManager.java b/nci/src/com/android/nfc/dhimpl/NativeNfcManager.java
index d327f62a..99ee5d52 100755
--- a/nci/src/com/android/nfc/dhimpl/NativeNfcManager.java
+++ b/nci/src/com/android/nfc/dhimpl/NativeNfcManager.java
@@ -102,11 +102,13 @@ public class NativeNfcManager implements DeviceHost {
boolean enableLowPowerPolling,
boolean enableReaderMode,
boolean enableHostRouting,
+ boolean enableP2p,
boolean restart);
@Override
public void enableDiscovery(NfcDiscoveryParameters params, boolean restart) {
doEnableDiscovery(params.getTechMask(), params.shouldEnableLowPowerDiscovery(),
- params.shouldEnableReaderMode(), params.shouldEnableHostRouting(), restart);
+ params.shouldEnableReaderMode(), params.shouldEnableHostRouting(),
+ params.shouldEnableP2p(), restart);
}
@Override