2017-11-22 9 views
0

사진을 저장하기 위해 XML 경로 파일을 사용하는 이 폴더를 기본 폴더로 만드는 방법을 모르겠습니다. 나는 폴더를 파일 경로로 쓰려고했지만 그 폴더가 아직 존재하지 않는 것 같기 때문에 IllegalArgumentException을 던졌습니다.어떻게이 같은 XML 파일을 만든

답변

0

먼저 다른 사람에게 실제 경로를 숨기려면 목적을 공유하는 데 사용합니다.

FileProvider는 file : /// Uri 대신 파일에 대한 content : // Uri를 작성하여 앱과 관련된 파일의 안전한 공유를 용이하게하는 ContentProvider의 특수 하위 클래스입니다.

이 파일은 xml 디렉토리에 보관해야합니다. 는 당신의 AndroidManifest.xml에 메타 데이터를 추가 할 RES-> XML-yourXmlName 필요

이제
<application> 
    ... 
    <provider 
     android:name="android.support.v4.content.FileProvider" 
     android:authorities="com.mydomain.fileprovider"//(your projcet package name) 
     android:exported="false" 
     android:grantUriPermissions="true"> 
     <meta-data 
      android:name="android.support.FILE_PROVIDER_PATHS" 
      android:resource="@xml/yourXmlName" /> 
    </provider> 
    ... 
</application> 

이 같은 경로를 사용할 수 있습니다 ..

File imagePath = new File(Context.getFilesDir(), "Android/data/myApp/files/Pictures"); 
File newFile = new File(imagePath, "default_image.jpg"); 
Uri contentUri = getUriForFile(getContext(), "your_project_package_name", newFile); 

출력은 다음과 같습니다

content://your_project_package_name/my_images/default_image.jpg 

구멍 경로가 숨겨집니다. For Details about it.

+0

고마워! 우리는 무엇을 어떻게 사용해야합니까? –