2
我打算開發一個支持PDF閱讀功能的超鏈接支持的android應用程序。手段我想要顯示嵌入超鏈接在pdf和用戶點擊超鏈接我的應用程序需要重定向到瀏覽器。 我不想使用谷歌文檔。我已經找到了一些開源的PDF格式的SDK,但我無法提供對超鏈接的支持。請告訴我,如果任何開源的SDK可用,其中也提供超鏈接支持。android pdf查看器sdk嵌入式超鏈接支持
我打算開發一個支持PDF閱讀功能的超鏈接支持的android應用程序。手段我想要顯示嵌入超鏈接在pdf和用戶點擊超鏈接我的應用程序需要重定向到瀏覽器。 我不想使用谷歌文檔。我已經找到了一些開源的PDF格式的SDK,但我無法提供對超鏈接的支持。請告訴我,如果任何開源的SDK可用,其中也提供超鏈接支持。android pdf查看器sdk嵌入式超鏈接支持
這可以通過WebView或下載PDF並打開已安裝應用程序的Intent來完成。但是,我正在使用第三方API,無法打開超鏈接的PDF。我上面介紹的兩種方式可以通過
if (!canDisplayPdf()) {
Intent i = new Intent(getBaseContext(), WebActivity.class);
i.putExtra("url", alist.get(position).toString());
//alist.get(position).toString() is hyperlinked pdf url
startActivity(i);
}
else
{
try
{
Toast.makeText(getBaseContext(), "Opening PDF... ", Toast.LENGTH_SHORT).show();
Intent inte = new Intent(Intent.ACTION_VIEW, Uri.parse(alist.get(position).toString()));
//inte.setDataAndType(Uri.parse(alist.get(position).toString()), "application/pdf");
startActivity(inte);
}
catch (ActivityNotFoundException e)
{
Log.e("Activity Not Found", e.getMessage());
}
// If canDisplayPDF function() will ensure whether device has PDF application or not.
public boolean canDisplayPdf() {
PackageManager packageManager = getApplication().getPackageManager();
Intent testIntent = new Intent(Intent.ACTION_VIEW);
testIntent.setType("application/pdf");
if (packageManager.queryIntentActivities(testIntent, PackageManager.MATCH_DEFAULT_ONLY).size() > 0) {
return true;
}
else
{
return false;
}
}