Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7ee88289 authored by Martijn Coenen's avatar Martijn Coenen Committed by Android Git Automerger
Browse files

am c5f3fd6e: Merge "Revert "Remove deprecated (hidden)...

am c5f3fd6e: Merge "Revert "Remove deprecated (hidden) enableForegroundNdefPush API\'s." (DO NOT MERGE)." into ics-mr1

* commit 'c5f3fd6e':
  Revert "Remove deprecated (hidden) enableForegroundNdefPush API's." (DO NOT MERGE).
parents 68a15583 c5f3fd6e
Loading
Loading
Loading
Loading
+55 −0
Original line number Diff line number Diff line
@@ -767,6 +767,61 @@ public final class NfcAdapter {
        mNfcActivityManager.setOnNdefPushCompleteCallback(activity, null);
    }

    /**
     * TODO: Remove this once pre-built apk's (Maps, Youtube etc) are updated
     * @deprecated use {@link CreateNdefMessageCallback} or {@link OnNdefPushCompleteCallback}
     * @hide
     */
    @Deprecated
    public interface NdefPushCallback {
        /**
         * @deprecated use {@link CreateNdefMessageCallback} instead
         */
        @Deprecated
        NdefMessage createMessage();
        /**
         * @deprecated use{@link OnNdefPushCompleteCallback} instead
         */
        @Deprecated
        void onMessagePushed();
    }

    /**
     * TODO: Remove this
     * Converts new callbacks to old callbacks.
     */
    static final class LegacyCallbackWrapper implements CreateNdefMessageCallback,
            OnNdefPushCompleteCallback {
        final NdefPushCallback mLegacyCallback;
        LegacyCallbackWrapper(NdefPushCallback legacyCallback) {
            mLegacyCallback = legacyCallback;
        }
        @Override
        public void onNdefPushComplete(NfcEvent event) {
            mLegacyCallback.onMessagePushed();
        }
        @Override
        public NdefMessage createNdefMessage(NfcEvent event) {
            return mLegacyCallback.createMessage();
        }
    }

    /**
     * TODO: Remove this once pre-built apk's (Maps, Youtube etc) are updated
     * @deprecated use {@link #setNdefPushMessageCallback} instead
     * @hide
     */
    @Deprecated
    public void enableForegroundNdefPush(Activity activity, final NdefPushCallback callback) {
        if (activity == null || callback == null) {
            throw new NullPointerException();
        }
        enforceResumed(activity);
        LegacyCallbackWrapper callbackWrapper = new LegacyCallbackWrapper(callback);
        mNfcActivityManager.setNdefPushMessageCallback(activity, callbackWrapper);
        mNfcActivityManager.setOnNdefPushCompleteCallback(activity, callbackWrapper);
    }

    /**
     * Enable NDEF Push feature.
     * <p>This API is for the Settings application.