2016-09-08 19 views
1

Android 6からは、デフォルトのファイルエクスプローラを使用できます。エクスプローラボタンを使用してストレージ設定で開くことができます。私はアプリからそれを開きたいが、私は意図、任意のヒントを見つけることができないのですか?私は、設定アプリで使用されているコードを発見したデフォルトのエクスプローラを開くアクティビティ

fileManagerButton.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     Intent fileManagerIntent = new Intent(); 
     fileManagerIntent.setAction(Intent.ACTION_GET_CONTENT); 
     fileManagerIntent.setType("file/*"); 
     startActivity(fileManagerIntent); 
    } 
} 

答えて

0

をしてみてください。 VolumeInfoクラスのメソッドbuildBrowseIntent()を呼び出す新しいアクティビティを開始します。このように、手動で

public Intent buildBrowseIntent() { 
     final Uri uri; 
     if (type == VolumeInfo.TYPE_PUBLIC) { 
      uri = DocumentsContract.buildRootUri(DOCUMENT_AUTHORITY, fsUuid); 
     } else if (type == VolumeInfo.TYPE_EMULATED && isPrimary()) { 
      uri = DocumentsContract.buildRootUri(DOCUMENT_AUTHORITY, 
        DOCUMENT_ROOT_PRIMARY_EMULATED); 
     } else { 
      return null; 
     } 
     final Intent intent = new Intent(DocumentsContract.ACTION_BROWSE); 
     intent.addCategory(Intent.CATEGORY_DEFAULT); 
     intent.setData(uri); 
     // note that docsui treats this as *force* show advanced. So sending 
     // false permits advanced to be shown based on user preferences. 
     intent.putExtra(DocumentsContract.EXTRA_SHOW_ADVANCED, isPrimary()); 
     intent.putExtra(DocumentsContract.EXTRA_FANCY_FEATURES, true); 
     intent.putExtra(DocumentsContract.EXTRA_SHOW_FILESIZE, true); 
     return intent; 
    } 
+0

それは同じことではないですが、私はファイルを開くことができません:VolumeInfoクラスは、意図を構築するためにこのコードを使用します – greywolf82

関連する問題