簡體   English   中英

使用 Android 存儲訪問框架編寫包含數據的文件的最佳方法是什么?

[英]what is the best way to write a file with data using Android Storage Access Framework?

我想使用 Android Storage Access Framework 編寫一個包含數據的文件,但我遇到了一些問題。 在下面的代碼中,我可以創建一個文件,但該文件是空白的。

 Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
                       intent.setType("application/vnd.ms-excel");
                       intent.putExtra(Intent.EXTRA_TITLE,DATABASE_NAME+"_"+AppUtils.getCurrentDate()+".xls");
                       startActivityForResult(intent,CREATE_FILE);

如果我使用下面的代碼,那么我可以獲得從onActivityResult拋出Uri的寫入權限

  Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
                        intent.addCategory(Intent.CATEGORY_OPENABLE);
                        intent.setType("application/vnd.ms-excel");
                        startActivityForResult(intent,WRITE_FILE);

它使我的應用程序較少用戶友好,因為用戶必須先創建一個文件,然后他們必須再次選擇它以在其上寫入數據。 我期待直接創建文件並將其寫入 Android 存儲訪問框架。 有什么好的方法可以做到這一點。 請幫忙。

嗨兄弟不要通過搜索以前的權限等方式浪費時間。 在 SDK 29 之后,Google 更改了外部文件存儲訪問的策略。現在 SAF 意圖和 onActivityResult 的獨特方式正如你和 ian 所寫。 更多細節https://github.com/emozgun/delphi-android-SAF

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM