2012-06-03 130 views
0

我一直在嘗試編寫一個程序來傳輸用戶從我提供給用戶的ListView中選擇的文件。一旦用戶選擇他打算傳輸文件(「我實現了使用onLongClickListener)的代碼則該特定塊被觸發:Android上的藍牙文件傳輸

String mimeType = fileAction.getMimeType(rowHolder.get(position).getLabel()); 
      Intent playFile = new Intent(); 
      playFile.setAction(android.content.Intent.ACTION_SEND); 
      Uri pathUri = Uri.parse("file://" + currentPath +  rowHolder.get(position).getLabel()); 
     playFile.setDataAndType(pathUri, mimeType); 
     startActivity(playFile); 

麻煩的是,當我選擇藍牙選項從應用程序的選項列表中可以處理這種類型的意圖[「這部分是自動」]沒有任何反應。只有當我點擊藍牙時纔會出現此問題。所有其他選項如GMail,Bump等都可以完美運行。任何幫助/指導將不勝感激。提前致謝。此外,這是我的Manifest文件,以防萬一它的權限集小於要求。 AndroidManifest文件:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="org.sample.test" 
    android:versionCode="2" 
    android:versionName="1.1"> 

<uses-sdk android:minSdkVersion="3" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.BLUETOOTH" /> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> 

<application 
    android:icon="@drawable/app_icon" 
    android:label="@string/app_name" 
    android:debuggable="false" 
    android:theme="@android:style/Theme.NoTitleBar" > 
    <activity android:name=".Main" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity 
     android:name=".Preferences" 
     android:label="@string/preferences" > 
    </activity> 
    <activity 
     android:name=".SearchFileSystem" 
     android:label="@string/search" > 
     <intent-filter> 
      <action android:name="android.intent.action.SEARCH" /> 
     </intent-filter> 
     <meta-data 
      android:name="android.app.searchable" 
      android:resource="@xml/searchable" /> 
    </activity> 

</application> 
</manifest> 

回答

1

試試這個代碼::請參閱本LINK

String mimeType = fileAction.getMimeType(rowHolder.get(position).getLabel()); 
Intent intent = new Intent(); 
intent.setAction(android.content.Intent.ACTION_SEND); 
intent.setType(mimeType); 
Uri pathUri = Uri.parse("file://" + currentPath + rowHolder.get(position).getLabel()); 
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(pathUri)); 
startActivity(intent); 

更新::

File file = new File(Path.toString()); 
intent.setDataAndType(Uri.fromFile(file), mimeType); 
+0

其要求改變 「pathUri」 類型文件 –

+0

不用擔心它了。謝謝。 :-)。我被困在這個相當長的一段時間。 –