春原様
adachiです。
貴重な情報を頂きありがとうございます。
教えていただいたサイトのAPDFViewerについては、
私も発見することが出来た為、アプリケーションのソースのを元に実現していこうと考えております。
しかし、まだ、pdfファイルの表示にすらこぎつけていません。
現在、APDFViewerのソースの一部で、pdfファイルを渡す手順で、
止まってしまっております。
プロジェクト環境
・res/raw/test.pdfを用意
・assets/test2.pdfを用意
・sampleAppは、APDFViewer起動の為に、付け加えたActivity
Activity。ライブラリメインActivityである、PDFViewerActivityを呼び出す。
・PDFView クラス View を継承
・AssetFileDescriptor m_descriptor;
PDFView.javaソース内
public void openUri(Uri uri) {
// reset
if (m_doc != null) {
// TODO: clean up?
m_doc = null;
}
m_current_page = 1;
// open uri
try {
// ※
//AssetManager as = getResources().getAssets();
//m_descriptor = as.openFd("test2.pdf");
m_descriptor =
getContext().getContentResolver().openAssetFileDescriptor(uri, "r");
if (m_descriptor == null) {
Log.e(TAG, "File desciptor is null.");
}
} catch (FileNotFoundException e) {
Log.e(TAG, "Open file failed.");
return;
} catch (IOException e) {
Log.e(TAG, "Open file failed.");
}
// open document
m_doc = new PDFDocument(m_descriptor.getFileDescriptor(), "", "");
if (!m_doc.isOk()) {
// TODO: report error.
return;
}
pageChanged();
}
このメソッドに渡す、Uriにどういったものを入るのかが分からず、困っております。
試行錯誤して、uriの情報を変えていますが、FileNotFoundExceptionが発生し、
pdfファイルの表示を行うことができていません。
rawにあるリソースを開こうとしたところ以下の例外が発生しています。
Uri uri = Uri.parse("android.resource://com.sample.sampleApp/" +
R.raw.test);
-> java.io.FileNotFoundException: No package found for authority:
android.resource://jp.gendosu.HealingNoise/2130968576
その為、assetにpdfファイルを置き、直接開こうと考え(※コメントアウトしたソース)、
試したところ、以下の例外が発生してしまっています。
-> java.io.FileNotFoundException: This file can not be opened as a
file descriptor; it is probably compressed
私が、AssetFileDescriptor や AssetManager についてしっかり理解できていないということもあり、
もし訳ありません。
春原様
AssetFileDescriptor や AssetManager の使い方について、何かご存知のことがありましたら、
是非一度、返信を頂けないでしょうか。
乱文で申し訳ありません。
On 5月10日, 午前10:46, "K.Haruhara" <
k-h...@amigo2.ne.jp> wrote:
> 春原と申します。
> adachi様
> こちらに同じ問い合わせがあり、Googleコードを紹介しています。
> こちら参考になるのではないでしょうか。
>
http://stackoverflow.com/questions/4646486/reading-pdf-from-within-an...
>
> 記載内容で不明な点あれば又お問い合わせください。
>
> On 5月9日, 午後7:34, adachi <
ak...@profire.co.jp> wrote:
>
>
>
> > 日本Androidの会の皆様
>
> > adachiと申します。
> > いつもここで、勉強させていただいております。
> > 現在、Androidで、pdfを表示させたいと考えているのですが、情報が出て来ず八方塞がりの状態で、
> > 途方にくれています。
> > Androidで、pdfを表示させる方法を存知の方がいらっしゃいましたら、是非ともご教授をお願いいたします。
> > 何かとっかかりになりそうなことでもかまいません。
> > よろしくお願いいたします。
>
> > 私が実現したいことは、pdfを表示させるアプリの作成です。
> > WebViewClientを使って、webブラウザで表示させることを考えましたが、
> > 今回は、クライアントのみでの表示を行いたいと考えております。
>
> > マーケット上には、Android用のPDFビューアーがいくつか存在する為、
> > 実現する方法は有るのかもしれませんが、恥ずかしながら何の手掛かりも掴めていません。
>