2016-10-22 121 views
0

我目前正在使用存儲訪問框架,以允許我的用戶創建/刪除文件。存儲訪問框架沒有顯示外部存儲設備

https://developer.android.com/guide/topics/providers/document-provider.html

我的一些用戶(一個很小的比例)的抱怨,雖然他們的外部存儲設備不會在對話屏幕顯示。

我已經設置了隱藏的EXTRA。

intent.putExtra(「android.content.extra.SHOW_ADVANCED」,true);

這就是爲什麼我的其他用戶(大多數)可以看到外部存儲。我只是想知道是否有其他額外的我需要設置爲其他用戶看到他們的外部存儲。

編輯:

以下是我創造我使用的存儲訪問架構的意圖。

private static final String MIME_TYPE = "*/*"; 
private static final String EXTRA_SHOW_ADVANCED = "android.content.extra.SHOW_ADVANCED"; 

private static Intent buildIntent() { 
    final Intent intent = new Intent(ACTION_OPEN_DOCUMENT); 
    intent.addCategory(CATEGORY_OPENABLE); 
    intent.setType(MIME_TYPE); 
    intent.putExtra(EXTRA_LOCAL_ONLY, true); 
    intent.putExtra(EXTRA_SHOW_ADVANCED, true); 
    return intent; 
} 
+0

您知道在大多數設備上,用戶首先必須轉到菜單以啓用顯示設備?你爲什麼不提這個選項? – greenapps

+0

請顯示所用意圖的完整代碼。 – greenapps

回答

0

請不要依賴隱藏的常量值。這是一個最好的努力。如果它不總是工作,不要感到驚訝。

供應商保留修改Android代碼庫的權利,只要其修改不會破壞任何CTS測試,或者GTS測試是否需要預加載Google Service Framework。隱藏的常量和API通常不受任何CTS測試的保護,因此供應商可能會選擇將其刪除。

谷歌還保留在未來版本中刪除任何隱藏API的權利。