1)设备选择界面:com.android.settings/.bluetooth.DevicePickerActivity;
2)停止、隐藏传输界面:com.android.bluetooth/.opp.BluetoothOppTransferActivity
2.1)停止传输的代码:
// "Stop" buttonthis.getContentResolver().delete(mUri, null, null); BluetoothTransferContentObserver Intent intent = getIntent(); 136 mUri = intent.getData(); 137 138 mTransInfo = new BluetoothOppTransferInfo(); 139 mTransInfo = BluetoothOppUtility.queryRecord(this, mUri); public class BluetoothOppTransferInfo { 40 int mID; 41 42 int mDirection; 43 44 long mTotalBytes; 45 46 long mCurrentBytes; 47 48 int mStatus; 49 50 Long mTimeStamp; 51 52 String mDestAddr; // bt address 53 54 String mFileName; 55 56 String mFileType; 57 58 String mFileUri; // the uri of the transferring file, related to the URI 59 60 String mDeviceName; // bt device name 61 62 boolean mHandoverInitiated; // the transfer was initiated by connection handover (eg. NFC) 63 // int mScanned; 64} 65
mObserver = new BluetoothTransferContentObserver(); 153 getContentResolver().registerContentObserver(BluetoothShare.CONTENT_URI, true, 154 mObserver);
public static final Uri CONTENT_URI = Uri.parse("content://com.android.bluetooth.opp/btopp");
mDirection:0,是传;1,是收;
BluetoothOppTransferInfo{mID=26, mDirection=0, mTotalBytes=10976720, mCurrentBytes=1353282, mStatus=192, mTimeStamp=1528275677830, mDestAddr='8C:25:05:E9:9E:40', mFileName='370', mFileType='application/vnd.android.package-archive', mFileUri='content://media/external/file/370', mDeviceName='MAIMANG 6', mHandoverInitiated=false}
{mID=27, mDirection=1, mTotalBytes=293837, mCurrentBytes=293837, mStatus=200, mTimeStamp=1528275867985, mDestAddr='90:F0:52:00:6F:03', mFileName='/storage/emulated/0/bluetooth/S80605-193537.jpg', mFileType='image/jpeg', mFileUri='content://media/external/images/media/994', mDeviceName='MEIZU PRO 6 Plus', mHandoverInitiated=false}

这篇博客主要介绍了蓝牙文件传输的相关操作,包括设备选择界面的入口以及如何停止和隐藏传输界面。在停止传输的代码中,详细展示了传收状态、文件信息以及目标设备详情。
2277





