安卓12 蓝牙接收文件默认保存到downloads目录
修改为bluetooth
主要修改BluetoothOppObexServerSession.java
BluetoothOppReceiveFileInfo.java
.../opp/BluetoothOppObexServerSession.java | 37 ++--
.../opp/BluetoothOppReceiveFileInfo.java | 165 ++++++++++++++----
2 files changed, 149 insertions(+), 53 deletions(-)
mode change 100644 => 100755 vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
mode change 100644 => 100755 vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppReceiveFileInfo.java
diff --git a/vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java b/vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
old mode 100644
new mode 100755
index 6a8013dd59..a74789cc7f
--- a/vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
+++ b/vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppObexServerSession.java
@@ -48,10 +48,10 @@ import com.android.bluetooth.BluetoothMetricsProto;
import com.android.bluetooth.BluetoothObexTransport;
import com.android.bluetooth.btservice.MetricsLogger;
-import java.io.FileNotFoundException;
+import java.io.BufferedOutputStream;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
-import java.io.OutputStream;
import java.util.Arrays;
import javax.obex.HeaderSet;
@@ -109,7 +109,7 @@ public class BluetoothOppObexServerSession extends ServerRequestHandler
private String destination;
public BluetoothOppObexServerSession(Context context, ObexTransport transport,
- BluetoothOppService service) {
+ BluetoothOppService service) {
mContext = context;
mTransport = transport;
mBluetoothOppService = service;
@@ -368,16 +368,14 @@ public class BluetoothOppObexServerSession extends ServerRequestHandler
}
- if (mFileInfo.mFileName != null && mFileInfo.mInsertUri != null) {
+ if (mFileInfo.mFileName != null) {
ContentValues updateValues = new ContentValues();
contentUri = Uri.parse(BluetoothShare.CONTENT_URI + "/" + mInfo.mId);
updateValues.put(BluetoothShare._DATA, mFileInfo.mFileName);
updateValues.put(BluetoothShare.STATUS, BluetoothShare.STATUS_RUNNING);
- updateValues.put(BluetoothShare.URI, mFileInfo.mInsertUri.toString());
mContext.getContentResolver().update(contentUri, updateValues, null, null);
- mInfo.mUri = mFileInfo.mInsertUri;
status = receiveFile(mFileInfo, op);
/*
* TODO map status to obex response code
@@ -414,8 +412,13 @@ public class BluetoothOppObexServerSession extends ServerRequestHandler
*/
Log.i(TAG, "Rejected incoming request");
- if (mFileInfo.mInsertUri != null) {
- mContext.getContentResolver().delete(mFileInfo.mInsertUri, null, null);
+ if (mFileInfo.mFileName != null) {
+ try {

这篇博客详细记录了如何修改安卓12中蓝牙接收文件的默认保存路径,从'downloads'目录更改为'bluetooth'。主要涉及修改了BluetoothOppObexServerSession.java和BluetoothOppReceiveFileInfo.java两个文件,包括文件流处理、文件名生成和保存路径设置等关键代码。通过此次修改,当设备通过蓝牙接收文件时,文件将直接保存在'bluetooth'目录下。
最低0.47元/天 解锁文章
2927

被折叠的 条评论
为什么被折叠?



