android:permission="com.android.permission.WHITELIST_BLUETOOTH_DEVICE">
<intent-filter>
<action android:name="android.btopp.intent.action.WHITELIST_DEVICE" />
+ <action android:name="android.btopp.intent.action.STOP_HANDOVER_TRANSFER" />
</intent-filter>
</receiver>
<activity android:name=".opp.BluetoothOppLauncherActivity"
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
+import android.net.Uri;
import android.util.Log;
public class BluetoothOppHandoverReceiver extends BroadcastReceiver {
if (D) Log.d(TAG, "Adding " + device + " to whitelist");
if (device == null) return;
BluetoothOppManager.getInstance(context).addToWhitelist(device.getAddress());
+ } else if (action.equals(Constants.ACTION_STOP_HANDOVER)) {
+ int id = intent.getIntExtra(Constants.EXTRA_BT_OPP_TRANSFER_ID, -1);
+ if (id != -1) {
+ Uri contentUri = Uri.parse(BluetoothShare.CONTENT_URI + "/" + id);
+
+ if (D) Log.d(TAG, "Stopping handover transfer with Uri " + contentUri);
+ context.getContentResolver().delete(contentUri, null, null);
+ }
} else {
if (D) Log.d(TAG, "Unknown action: " + action);
}
/** the intent that whitelists a remote bluetooth device for auto-receive confirmation (NFC) */
public static final String ACTION_WHITELIST_DEVICE = "android.btopp.intent.action.WHITELIST_DEVICE";
+ /** the intent that can be sent by handover requesters to stop a BTOPP transfer */
+ public static final String ACTION_STOP_HANDOVER = "android.btopp.intent.action.STOP_HANDOVER_TRANSFER";
+
/** the intent extra to show all received files in the transfer history */
public static final String EXTRA_SHOW_ALL_FILES = "android.btopp.intent.extra.SHOW_ALL";