คำถามติดแท็ก android-fileprovider

30
FileProvider - IllegalArgumentException: ไม่สามารถค้นหารูทที่กำหนดค่าไว้
ฉันพยายามถ่ายภาพด้วยกล้อง แต่ฉันได้รับข้อผิดพลาดต่อไปนี้: FATAL EXCEPTION: main Process: com.example.marek.myapplication, PID: 6747 java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/emulated/0/Android/data/com.example.marek.myapplication/files/Pictures/JPEG_20170228_175633_470124220.jpg at android.support.v4.content.FileProvider$SimplePathStrategy.getUriForFile(FileProvider.java:711) at android.support.v4.content.FileProvider.getUriForFile(FileProvider.java:400) at com.example.marek.myapplication.MainActivity.dispatchTakePictureIntent(MainActivity.java:56) at com.example.marek.myapplication.MainActivity.access$100(MainActivity.java:22) at com.example.marek.myapplication.MainActivity$1.onClick(MainActivity.java:35) AndroidManifest.xml: <provider android:name="android.support.v4.content.FileProvider" android:authorities="com.example.marek.myapplication.fileprovider" android:enabled="true" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" /> </provider> Java: Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); // Ensure that there's a …

9
จะใช้การสนับสนุน FileProvider เพื่อแชร์เนื้อหาไปยังแอพอื่น ๆ ได้อย่างไร?
ฉันกำลังมองหาวิธีการอย่างถูกต้องหุ้น (ไม่เปิด) ไฟล์ภายในกับโปรแกรมภายนอกใช้ห้องสมุดสนับสนุน Android ของFileProvider ทำตามตัวอย่างในเอกสาร <provider android:name="android.support.v4.content.FileProvider" android:authorities="com.example.android.supportv4.my_files" android:grantUriPermissions="true" android:exported="false"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/my_paths" /> </provider> และใช้ ShareCompat เพื่อแชร์ไฟล์ไปยังแอปอื่นดังนี้: ShareCompat.IntentBuilder.from(activity) .setStream(uri) // uri from FileProvider .setType("text/html") .getIntent() .addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION) ไม่ทำงานเนื่องจาก FLAG_GRANT_READ_URI_PERMISSION จะให้สิทธิ์แก่ Uri ที่ระบุไว้ในdataเจตนาเท่านั้นไม่ใช่มูลค่าของส่วนEXTRA_STREAMเสริม (ตามที่กำหนดโดยsetStream) ผมพยายามที่จะรักษาความปลอดภัยการประนีประนอมโดยการตั้งค่าandroid:exportedไปยังtrueผู้ให้บริการ แต่FileProviderภายในตรวจสอบว่าตัวเองจะถูกส่งออกเมื่อเป็นเช่นนั้นก็พ่นยกเว้น
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.