实际上,我正在开发一个免费的应用程序,当按下某个按钮时,它需要通过蓝牙共享自身,并且我使用了以下代码(我尝试从sd卡中获取文件):
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter == null) { // Device does not support Bluetooth } if (!mBluetoothAdapter.isEnabled()) { Toast.makeText(getApplicationContext(), "Bluetooth is turned off, please enable it to proceed!", Toast.LENGTH_LONG).show(); } else { file sourcefile = findfile(Environment.getExternalStorageDirectory(),"E-charge.apk"); Intent intent = new Intent(); intent.setAction(Intent.ACTION_SEND); intent.setType("application/vnd.androID.package-archive"); intent.putExtra(Intent.EXTRA_STREAM, Uri.fromfile(sourcefile) ); startActivity(intent); }
这是与此按钮所在的活动相关的清单:
<activity androID:name=".main.MainActivity" androID:label="@string/app_name" > <intent-filter> <action androID:name="androID.intent.action.SEND" /> <data androID:mimeType="*/*" /> <data androID:host="*"/> <data androID:pathPattern="*.*\.apk" /> </intent-filter> </activity>
但是,当我按下按钮(在androID 2.3.5中)时,它为我提供了仅通过电子邮件发送而不是通过蓝牙发送的选项,因此,请问您需要帮助以使其工作吗?
我还为蓝牙家伙添加了权限,事实并非如此!
解决方法:
您只需要更改以下行:
intent.setType(“application/vnd.androID.package-archive”);
至
intent.setType("application/zip");
总结 以上是内存溢出为你收集整理的android-通过蓝牙发送文件全部内容,希望文章能够帮你解决android-通过蓝牙发送文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)