לעתים קרובות אפליקציות צריכות להציע קובץ אחד או יותר שלהן לאפליקציה אחרת. לדוגמה, יכול להיות שגלריית תמונות תרצה להציע קבצים לעורכי תמונות, או שאפליקציית ניהול קבצים תרצה לאפשר למשתמשים להעתיק ולהדביק קבצים בין אזורים באחסון החיצוני. אחת מהדרכים שבהן אפליקציה שולחת יכולה לשתף קובץ היא להגיב לבקשה מאפליקציה מקבלת.
בכל המקרים, הדרך המאובטחת היחידה להציע קובץ מהאפליקציה שלכם לאפליקציה אחרת היא לשלוח לאפליקציה המקבלת את ה-URI של תוכן הקובץ ולהעניק הרשאות גישה זמניות ל-URI הזה.
מזהי URI של תוכן עם הרשאות גישה זמניות ל-URI מאובטחים כי הם חלים רק על האפליקציה שמקבלת את ה-URI, ופג התוקף שלהם באופן אוטומטי. הרכיב FileProvider
ב-Android מספק את השיטה getUriForFile()
ליצירת URI של תוכן של קובץ.
אם רוצים לשתף בין אפליקציות כמויות קטנות של טקסט או נתונים מספריים, צריך לשלוח Intent
שמכיל את הנתונים. במאמר שיתוף נתונים פשוטים מוסבר איך שולחים נתונים פשוטים באמצעות Intent
.
בכיתה הזו מוסבר איך לשתף קבצים מהאפליקציה שלכם לאפליקציה אחרת באופן מאובטח באמצעות URI של תוכן שנוצר על ידי הרכיב FileProvider
של Android והרשאות זמניות שאתם מעניקים לאפליקציה המקבלת עבור URI התוכן.
שיעורי מוזיקה
- הגדרת שיתוף קבצים
- איך מגדירים את האפליקציה לשיתוף קבצים
- שיתוף קובץ
- איך מציעים קובץ לאפליקציה אחרת על ידי יצירת URI תוכן לקובץ, מתן הרשאות גישה ל-URI ושליחת ה-URI לאפליקציה.
- בקשה לקבלת קובץ ששותף
- איך מבקשים קובץ ששותף על ידי אפליקציה אחרת, מקבלים את ה-URI של התוכן של הקובץ ומשתמשים ב-URI של התוכן כדי לפתוח את הקובץ.
- אחזור פרטי הקובץ
-
איך אפליקציה יכולה להשתמש ב-URI של תוכן שנוצר על ידי
FileProvider
כדי לאחזר את פרטי הקובץ, כולל סוג ה-MIME וגודל הקובץ.
מידע נוסף בנושא זמין במאמרים הבאים: