时间:2020/09/21
之前公司不允许csdn,笔记写在其它地方。最近整理过来
蓝牙共享文件格式限制
出于安全考虑,Android蓝牙在传输文件时对文件格式有限制,默认情况下,并不是所有文件都能够传输和共享。
在packages/apps/Bluetooth
下面的AndroidManifest.xml中
<activity android:name=".opp.BluetoothOppLauncherActivity"
android:process="@string/process"
android:theme="@android:style/Theme.Dialog" android:label="@string/bt_share_picker_label">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
<data android:mimeType="video/*" />
<data android:mimeType="audio/*" />
<data android:mimeType="text/x-vcard" />
<data android:mimeType="text/plain" />
<data android:mimeType="text/html" />
<data android:mimeType="application/zip" />
<data android:mimeType="application/vnd.ms-excel" />
<data android:mimeType="application/msword" />
<data android:mimeType="application/vnd.ms-powerpoint" />
<data android:mimeType="application/pdf" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
<data android:mimeType="video/*" />
<data android:mimeType="x-mixmedia/*" />
<data android:mimeType="text/x-vcard" />
</intent-filter>
<intent-filter>
<action android:name="android.btopp.intent.action.OPEN" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.android.btopp" />
</intent-filter>
</activity>
发送时的限制:
将AndroidManifest里面对文件类型的限制拿掉,改为
接收时的限制:
接收则是改ACCEPTABLE_SHARE_INBOUND_TYPES这个数组的定义。