PDF 파일을 안드로이드 응용 프로그램의 assets
폴더에 저장하여 운송하고 있습니다. AssetManager
을 사용하여 파일 이름을 다시 읽을 수 있습니다. 화면에 표시해야하고 할 수 있습니다. 하지만 pdfviewer를 사용하여 열 필요가 있습니다.안드로이드 응용 프로그램의 assets 폴더에있는 pdf 파일
각 항목에 onclick()
에 의도를 쓰려면 PDF 파일의 URI를 전달해야합니다. 그리고 AssetManager
을 사용하여 파일의 URI를 가져올 수 없습니다. 이 모든 일을 처리 할 수있는 더 좋은 방법이 있습니까?
URI를 검색 할 수있는 경우에도 PDF 뷰어는 assets 폴더의 PDF 파일을 읽을 수 있습니까?
는 업데이트 :
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=android.resource://com.csg.android.myproject/assets/pdf/csgsample typ=application/pdf flg=0x4000000 }
내가 사용하여 장치를 조회 : 아래의 제안을 바탕으로
, 나는 다음과 같은 코드
try {
Uri path = Uri.parse("android.resource://com.csg.android.myproject/raw/csgsample") ;
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
startActivity(intent);
}
catch (ActivityNotFoundException e){
Toast.makeText(FirstTab.this, "NO Viewer", Toast.LENGTH_SHORT).show();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
그것은 다음과 같은 예외 메세지를 ActivityNotFoundException
를 throw를 썼다 PackageManager
그리고 Adobe Reader가 설치되어 있습니다. 하지만 왜이 오류가 발생하는지 잘 모르겠습니다. 나는 또한 이것을 assets
폴더에 배치하고 대신 URI를 변경하고 프로그램을 실행했지만 여전히 동일한 오류가 발생합니다.
고맙습니다. 내가 URI를 사용하여 노력하고 그것은 ActivityNotFoundException 던지고있다. 내 원래 게시물을 편집하고 위의 코드 블록을 추가했습니다. 가능하면 그것을보고 도와주세요. 감사. – NavinC
CATEGORY_DEFAULT를 추가하거나 플래그를 삭제 해보세요. 귀하의 의도가 옳았 기 때문에 Adobe가 귀하의 자료를 읽을 수 없게 될 수도 있습니다. –