“ application / vnd.android.package-archive” mime类型在文件管理器中未显示apk文件。
在我的聊天应用程序中,我只想在文件管理器中显示apk文件,以选择其中一个文件以将其发送给另一位用户。我在意图中使用了MIME类型“ application / vnd.android.package-archive”。 在我的设备Galaxy j5“ android 6.0”中运行正常,但是当我在另一台设备Galaxy core“ android 4.1”中尝试时,文件管理器中的所有文件夹均为空,并且不显示任何类型的文件。
public void openFile(String mimeType) {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType(mimeType);
intent.addCategory(Intent.CATEGORY_OPENABLE);
// special intent for Samsung file manager
Intent sIntent = newIntent("com.sec.android.app.myfiles.PICK_DATA");
// if you want any file type, you can skip next line
sIntent.putExtra("CONTENT_TYPE", mimeType);
sIntent.addCategory(Intent.CATEGORY_DEFAULT);
Intent chooserIntent;
if (getActivity().getPackageManager().resolveActivity(sIntent, 0) != null){
// it is device with Samsung file manager
chooserIntent = Intent.createChooser(sIntent, "Open file");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] { intent});
} else {
Toast.makeText(getActivity() , "not samsung" , Toast.LENGTH_SHORT).show();
chooserIntent = Intent.createChooser(intent, "Open file");
}
try {
startActivityForResult(chooserIntent, REQUEST_CODE_APK_FILE);
} catch (ActivityNotFoundException ex) {
Toast.makeText(getActivity(), "No suitable File Manager was found.", Toast.LENGTH_SHORT).show();
}
}
在android 6.0中,一切正常,但在android 4.1中,文件管理器中没有文件。