2012-05-24 2 views
0

m 지난 2 일 동안 문제가 발생하여 Google에서 50MB가 넘는 크기로 재생하는 .apk 파일을 업로드 한 다음 APK 확장 파일을 사용하여 .apk를 업로드하는 방법을 찾았습니다. http://developer.android.com/guide/market/expansion-files.html 이제 m이 끝납니다.APK 기본 확장 파일의 이미지는 어떻게 사용할 수 있습니까?

AssetFileDescripto assetFileDescriptor = zipResourceFile.getAssetFileDescriptor( 
    "assets/all_types_of_people1.mp3"); 
mediaPlayer = new MediaPlayer(); 
mediaPlayer.setDataSource(assetFileDescriptor.getFileDescriptor(), 
    assetFileDescriptor.getStartOffset(),assetFileDescriptor.getLength()); 

:하지만 지금은 지금처럼 기본 확장 파일에서 .mp3 파일을 사용할 수 .obb 형식

에 있지만처럼 난 내 객체에 그 기본 확장 파일에서 파일을 읽을 수있는 방법을 문제가 있어요 그렇다면 주 확장 파일의 이미지를 WebView에 어떻게 사용할 수 있습니까?

답변

1

zipResourceFile에서 스트림을 얻을 수 있으므로 BitmapFactory를 사용하여 스트림을 만들 수 있습니다.

디코딩에는 다소 시간이 걸릴 수 있으므로 UI ​​스레드에서 처리해야합니다.

+1

webview에서 html에 액세스하는 방법과 같이 OOB 파일에서 html 파일에 액세스하기위한 단서 예 : WebView wv = (WebView) this.findViewById (R.id.splashWebView); wv.loadUrl ("file : ///android_asset/html_no_copy/test.html"); 또는 OBB 파일에서 모든 데이터의 압축을 해제하거나 추출하는 방법은 무엇입니까? –

0

dagalpin에는 이미 InputStream으로 가져 오는 방법이 나와 있습니다.

HTML 파일을 읽고 UTF-8 문자열로 변환하십시오.

다음과 같이로드하십시오.


// you can also load from an HTML string: 
String summary = "<html><body>You scored <b>192</b> points.</body></html>"; 
webview.loadData(summary, "text/html", null); 
// ... although note that there are restrictions on what this HTML can do. 
// See the JavaDocs for loadData() and loadDataWithBaseURL() for more info.

나는 그것을 테스트하지 않았습니다. 그러나 그것은 효과가있는 것으로 보인다. 대신

의 InputStream 이미지 이름 만 사용 expansionfiles/myFilePath.jpg의

0

이다 = zipResourceFile.getInputStream ("expansionfile/myFilePath.jpg");

관련 문제