如何在android中通过蓝牙发送媒体文件

如何在android中通过蓝牙发送媒体文件,android,bluetooth,media,file-transfer,Android,Bluetooth,Media,File Transfer,我有一个要求。我需要建立一个应用程序,它使用蓝牙发送媒体文件,如歌曲,图像等到另一个设备。我不知道怎么做。谁能从零开始帮助我大致了解如何完成这项工作。示例代码将非常有用 谢谢。我想你应该把这份文件读一遍 在本例中,他们是发送PDF文件格式SD卡路径,但我认为您也可以发送 像音频和视频一样的媒体文件 见此:private void envio(){ 意图=新意图(); intent.setAction(intent.ACTION\u SEND); intent.setType(“文本/普通”);

我有一个要求。我需要建立一个应用程序,它使用蓝牙发送媒体文件,如歌曲,图像等到另一个设备。我不知道怎么做。谁能从零开始帮助我大致了解如何完成这项工作。示例代码将非常有用


谢谢。

我想你应该把这份文件读一遍

在本例中,他们是发送PDF文件格式SD卡路径,但我认为您也可以发送 像音频和视频一样的媒体文件

见此

private void envio(){
意图=新意图();
intent.setAction(intent.ACTION\u SEND);
intent.setType(“文本/普通”);
文件archivo=新文件(_路径);
intent.putExtra(intent.EXTRA_流,Uri.fromFile(archivo));
///////////////////包装经理
PackageManager pm=getPackageManager();
List-appsList=pm.querytentActivities(intent,1);
如果(appsList.size()>0){
//Toast.makeText(这是“su telefono no cuenta con con apliccion de intercambio de datos”,Toast.LENGTH_LONG).show();
}
//蓝牙应用指南
字符串packageName=null;
字符串className=null;
布尔值=false;
//蓝牙适配器。检查蓝牙地址(“”);
用于(ResolveInfo:appsList){
packageName=info.activityInfo.packageName;
if(packageName.equals(“com.android.bluetooth”)){
className=info.activityInfo.name;
发现=真;
break;//找到了
}
}
如果(!找到){
Toast.makeText(此“…”,
吐司。长度(短)。show();
//出口
}
intent.setClassName(packageName,className);
星触觉(意向);
}
private void envio() {
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_SEND);
    intent.setType("text/plain");
    File archivo=new File(_path);
    intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(archivo) );
    ///////////////////pakage manager
    PackageManager pm = getPackageManager();
    List<ResolveInfo> appsList = pm.queryIntentActivities( intent, 1);

    if(appsList.size() > 0) {
        //Toast.makeText(this,"su telefono no cuenta con aplicacion de intercambio de datos",Toast.LENGTH_LONG).show();
    }
    //selleccionar la aplicacion de bluetooth
    String packageName = null;
    String className = null;
    boolean found = false;
    // BluetoothAdapter.checkBluetoothAddress("");
    for(ResolveInfo info: appsList){

      packageName = info.activityInfo.packageName;
      if( packageName.equals("com.android.bluetooth")){
         className = info.activityInfo.name;
         found = true;
         break;// found
      }

    }
    if(! found){
      Toast.makeText(this,"...",
                     Toast.LENGTH_SHORT).show();
      // exit
    }

    intent.setClassName(packageName, className);
    startActivity(intent);


}