發送作爲附件我用下面的代碼創建的SQLite數據庫:文件沒有得到通過電子郵件
context.openOrCreateDatabase(dbName, Context.MODE_WORLD_READABLE, null);
並試圖將其通過電子郵件使用下面的代碼作爲附件發送:
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND)
.setType("message/rfc822")
.putExtra(android.content.Intent.EXTRA_STREAM,
Uri.fromFile(getDatabasePath(dbName)));
startActivity(Intent.createChooser(emailIntent, null));
這會打開附件圖標的GMail撰寫活動。但收件人沒有收到附件。
這已是asked before。但它看起來像沒有解決方案,而不是將數據庫文件複製到SD卡。
那麼我的問題是:如果像GMail這樣的其他應用程序無法讀取文件,MODE_WORLD_READABLE
標誌的用法是什麼?
使用電子郵件發送數據庫似乎並不簡單。使用一些序列化方法..無論如何,在Android應用程序是沙箱,這可能是問題的原因。當使用附件或其他類型的共享方法時,您必須確保該文件位於沙盒之外。 – ApriOri
@Erb如果文件被沙箱化,「MODE_WORLD_READABLE」標誌的用法是什麼? –