自动接受蓝牙文件传输

时间:2012-11-22 17:20:37

标签: android bluetooth

如果设备配对,是否可以在Android中以编程方式自动接受蓝牙文件传输?

2 个答案:

答案 0 :(得分:2)

您可以创建自己的应用程序,该应用程序侦听传入的文件传输并接受它们。必须将连接创建为不安全的连接,以使配对/传输过程自动化,而无需用户交互。

了解更多here

答案 1 :(得分:0)

创建作为服务器运行的新应用程序并不容易。

所以我设法创建了一个使工作更轻松的应用程序。

如果您具有 ROOTED DEVICE, 请访问此Github repository并使用XPosed Framework安装该应用程序。

了解更多here

修改

从链接中添加了核心。

尝试此代码。

import android.util.*;
import de.robv.android.xposed.*;
import de.robv.android.xposed.callbacks.XC_LoadPackage.*;

import static de.robv.android.xposed.XposedHelpers.findAndHookMethod;

public class Tutorial implements IXposedHookLoadPackage
{

    private String TAG="TUTORIAL";
    public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
        if (!lpparam.packageName.equals("com.android.bluetooth"))
        {
            Log.i(TAG,"Not: "+lpparam.packageName);
            return;
        }
        Log.i(TAG,"Yes "+lpparam.packageName);  

        findAndHookMethod("com.android.bluetooth.opp.BluetoothOppManager", lpparam.classLoader, "isWhitelisted", String.class,new XC_MethodHook() {
                @Override
                protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                    Log.v(TAG,"HOOK DONE");
                    param.setResult(true); /* you can compare the sender address(String) with your computer and determine if you return true or just allow the original method to be called after this returns.*/

                }
            });

    }
}

我已经测试过,并且它工作正常:)

链接

Dropbox link of the auto accepting app

Dropbox link of the project files (zip)

Xposed apk site

Towelroot site to root your phone