나는 현재 안드로이드에 sqlite 데이터베이스에서 (아파치 poi와 함께) 엑셀 파일을 만드는 응용 프로그램을 개발하고 있습니다. 파일을 다른 앱으로 보낼 수 없다는 것을 제외하면 모든 것이 잘 작동합니다.excel 파일을 보관 용 계정 또는 Google 드라이브에 업로드 하시겠습니까?
의 AndroidManifest.xml :
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.example.ria.masterdetailnoten"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths"></meta-data>
</provider>
file_paths.xml :
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<files-path name="backup" path="backup/"/>
</paths>
ExcelFile.java :
Uri uriFile = FileProvider.getUriForFile(ct, "com.example.ria.masterdetailnoten", backupFile);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setDataAndType(uriFile, "application/vnd.ms-excel");
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.createChooser(intent, "Choose");
ct.startActivity(intent);
나는 다른 응용 프로그램 내 파일에 대한 권한을 가질 수 있도록 나는 fileprovider를 구현
확실히 내 파일이 만들어지고 다시 읽을 수 있음을 알고 있습니다. th 아파치 POI. 따라서 작동하지 않는 유일한 방법은 다른 앱으로 인 텐트를 보내는 것입니다. 그때 오류가 다음과 같은 의도 츄 Google 드라이브를 선택하는 경우 예를 들어
가 나타납니다 은 "업로드에 실패했습니다. 요청이 데이터를 포함하지 않습니다" , 난 당신이 나에게 사람들을 도울 수 있기를 바랍니다
"사서함 선택한 파일을 읽을 수 없습니다"나는 당신의 도움을 주셔서 감사합니다 : I 사서함 앱 다음과 같은 오류를 열면
나타납니다!