ورود

View Full Version : استفاده از کتابخانه جهت نمایش فایل PDF از فایل موجود در دایرکتوری



ghasem110deh
سه شنبه 28 فروردین 1397, 18:47 عصر
سلام
دوستان من میخوام فایل pdf رو توی برنامه نمایش بدم
با این کتابخونه : PDE Viewer (https://github.com/barteksc/AndroidPdfViewer)

اما این خطا رو میده :

Error:Execution failed for task ':app:transformNativeLibsWithStripDebugSymbolForDe bug'.
java.lang.NullPointerException (no error message)

و وقتی که کتابخونه حذف میکنم (از گریدل) برنامه بدون مشکل اجرا میشه !

راه دیگه ای واسه نمایش pdf وجود نداره (یا کتابخونه دیگه ای)

golbafan
چهارشنبه 29 فروردین 1397, 23:24 عصر
سلام دوست عزیز.
نیاز به کتابخانه خاصی ندارید.
اگر از یک pdf.reader استفاده کنید و فایلتون رو بهش ارجا بدید مشکل حل میشه و البته این روش حرفه ای تر هم هست.
فایل رو در پوشه assets قرار بدید و سپس:

Uri file = Uri.parse("file:///android_asset/mypdf.pdf");
String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtensio n(MimeTypeMap.getFileExtensionFromUrl(file.toStrin g()));

try {
Intent i;
i = new Intent(Intent.ACTION_VIEW);
i.setDataAndType(file, mimeType);
startActivity(i);

} catch (ActivityNotFoundException e) {
Toast.makeText(this, "No Application Available to fiew this file type",
Toast.LENGTH_SHORT).show();
}

ghasem110deh
چهارشنبه 29 فروردین 1397, 23:51 عصر
سلام دوست عزیز.
نیاز به کتابخانه خاصی ندارید.
اگر از یک pdf.reader استفاده کنید و فایلتون رو بهش ارجا بدید مشکل حل میشه و البته این روش حرفه ای تر هم هست.
فایل رو در پوشه assets قرار بدید و سپس:

Uri file = Uri.parse("file:///android_asset/mypdf.pdf");
String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtensio n(MimeTypeMap.getFileExtensionFromUrl(file.toStrin g()));

try {
Intent i;
i = new Intent(Intent.ACTION_VIEW);
i.setDataAndType(file, mimeType);
startActivity(i);

} catch (ActivityNotFoundException e) {
Toast.makeText(this, "No Application Available to fiew this file type",
Toast.LENGTH_SHORT).show();
}

درسته اما میبایست داخل برنامه بازش میکردم و اینکه فایل ها در یه پوشه خارجی (توی حافظه اصلی ذخیره میشن) / که خدا روشکر رفع شد :لبخندساده: