2012-09-04 3 views
1

내부 스토리지 somethings.Open 디렉토리 및 fileoutputstream 쓰기를 시도했습니다. 파일을 쓸 수 있지만이 파일을 사용하려고 할 때 오류가 발생했습니다 (Logcat에서 오류가 발생하지 않습니다. "Startactivity"부분이 실행되면 dialog.Write가 열리고 안드로이드 장치의 대화 상자에 "패킷 파싱 오류가 있습니다."사실 파일이 있지만 파일을 사용하지 않습니다. startactivity와 함께하는 나의 목표 : APK 파일을 Android 기기에로드하는 인 텐트를 엽니 다.안드로이드 내부 저장소 오류

내부 저장소 내 경로 (이 부분은 succesfull입니다) InputStream로부터의 ProgressBar와 파일에

mydir = getDir("mydir", MODE_WORLD_READABLE); 
filewithmydir = new File(mydir,fileName+".apk"); 
fileOutPutStream = new FileOutputStream(filewithmydir); 

쓰기 뭔가

byte[] data = new byte[1024]; 
    long total = 0; 
    int count; 
    while ((count = inputStream.read(data)) != -1) { 

     total += count; 
     publishProgress((int) total * 100/fileLength); 

     fileOutPutStream.write(data, 0, count); 
    } 

파일을 사용하는 부분

  intent.setDataAndType(Uri.fromFile(new File(mydir.getAbsolutePath()+"/incomingplus.apk")), "application/vnd.android.package-archive"); 
      startActivity(intent);// Error is here! 

내 권한

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

+0

어떤 종류의 오류입니까? 예외? 예외를 게시 할 수 있습니까? – sschrass

+0

무엇이 오류입니까? – njzk2

+0

Logcat.When "Startactivity"부분에서 오류가 발생하지 않습니다. 대화 상자를 엽니 다. "대화 상자에"패킷 파싱 오류가 있습니다. " – Serkan

답변

0

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

<uses-permission android:name="android.permission.INTERNET"/>

<uses-permission android:name="android.permission.INSTALL_PACKAGES"/>

경우에는 외부 응용 프로그램에서 파일 열기, 당신의 파일에 액세스하지 않았다. intentintent.setDataAndType(Uri.fromFile(new File(mydir.getAbsolutePath()+"/incomingplus.apk")), "application/vnd.android.package-archive"); startActivity(intentGuncelle);// Error is here!

+0

나는 의도와 intentguncelle 변수를 편집했다. 코드에서 실제로 동일하다. 나는 여기서 글을 쓸 때 실수를한다. – Serkan

0

에서 intentGuncelle 매니페스트의 권한을 포함 유무 : 또한 서로 다른 변수를 사용?

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
+0

내 권한을 편집했습니다. 예이 권한을 이미 추가했습니다. – Serkan

+0

로그를 표시 할 수 있습니까? – JMPergar