0
我想打開一個文件讓我們說xxx.pdf在特定的查看器中。我正在使用查看器的信息使用第三方應用的軟件包名稱打開文件
List<ResolveInfo> resolveInfoList = activity.getPackageManager()
.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
ResolveInfo提供了支持查看器的完整信息。從那裏我得到包名稱,活動等。
現在我想使用包名稱啓動文件。我正在嘗試下面的代碼。
Intent supportedAppIntent = packageManager.getLaunchIntentForPackage(packageName);
supportedAppIntent.setAction(ACTION_VIEW);
supportedAppIntent.setDataAndType(Uri.fromFile(file), contentType);
activity.startActivity(supportedAppIntent);
但它只打開應用程序,而不是文件。
可能問題是意圖 - 過濾器沒有解決。所以首先檢查使用IntentChooser應用程序出現或不在可用的應用程序列表,這是可以打開查看pdf文件類型 –
應用程序可用,因爲我從queryIntentAcitivities(),我可以得到所有的細節,應用程序也啓動。但問題是,它不打開文件。理想情況下應該通過打開文件啓動應用程序。 –