初めに:
はい、StackOverflow には多くのソリューションがありますが、私の場合はどれも機能しません。
- SmartGWT.mobile でアプリケーションをビルドしました
- このビルドに構成ファイルと必要なすべてのファイルを添付して、PhoneGap 用に準備しました。
- アプリケーションは、build.phonegap.com サイト経由でビルドされます。
- Android 4.1.1では問題なく動作します
したい:
ファイルをローカル ファイル システムにダウンロードします。これは PDF ファイルです。以下を使用して正常に動作しています。
var fileTransfer = new FileTransfer(); fileTransfer.download(.....
PDF用にAndroidにインストールされているネイティブアプリ(Adobe Readerなど)でPDFを開きます-動作していません:
私は試した:
(1)
cordova.exec("ChildBrowserCommand.showWebPage", encodeURI(theFile.toURL()) );
(2)
window.plugins.childBrowser.showWebPage(encodeURI(theFile.toURL()));
(3)
window.open(encodeURI(theFile.toURL()), '_blank', 'location=yes');
(4) Firefox で開く PDF 用の HTML5 プラグインも
前に「./」がない「file://」などのすべてのバリエーション。
childBrowser は白い画面のみを表示し、毎回「http://」を前に追加します。window.open - 同じです。
最終的に WebIntent のような興味深いものを見つけたので、次のようにしました。
window.plugins.webintent.startActivity({
action: window.plugins.webintent.ACTION_VIEW,
type: "application/pdf",
url: encodeURI(theFile.toURL().substring(7))},
function() {},
function() {alert('Failed to open URL via Android Intent')}
);
しかし、phonegap-buildがクラスファイルを添付していないため機能せず、WebIntentクラスが見つかりません
このプラグインを config.xml で使用して宣言します。
<gap:plugin name="com.borismus.webintent.WebIntent" />
なぜ機能しないのか、または私が何をしているのか知っていますか ネイティブアプリで同じようにファイルを開く別の方法を知っているかもしれませんが、それは簡単だと思います
私は自分のアプリがユーザーのためにPDFをダウンロードして(ネイティブアプリで)表示したいだけです。