summaryrefslogtreecommitdiff
authorLu Wang <lu.wang@amlogic.com>2017-11-02 06:13:29 (GMT)
committer Lu Wang <lu.wang@amlogic.com>2017-11-02 06:13:29 (GMT)
commit93b84eaf0198997e6d098a967ed60fb69fe54ed8 (patch)
treec3f0f5ccb8bc9e997f4b709b863ab8801ae4fe13
parent944724b77540a79437d4c3e6c6159ddae24c3da5 (diff)
downloadMboxLauncher2-ref-o-20171115.zip
MboxLauncher2-ref-o-20171115.tar.gz
MboxLauncher2-ref-o-20171115.tar.bz2
MboxLauncher: identify usb icon at home page [1/1]
PD# 152485 identify usb icon at home page when insert ntfs device Change-Id: I66644ea5f4bd581d815ceded5014f8b72805b382
Diffstat
-rw-r--r--src/com/droidlogic/mboxlauncher/Launcher.java13
-rw-r--r--src/com/droidlogic/mboxlauncher/StatusLoader.java23
2 files changed, 29 insertions, 7 deletions
diff --git a/src/com/droidlogic/mboxlauncher/Launcher.java b/src/com/droidlogic/mboxlauncher/Launcher.java
index 375857a..542b7c6 100644
--- a/src/com/droidlogic/mboxlauncher/Launcher.java
+++ b/src/com/droidlogic/mboxlauncher/Launcher.java
@@ -69,6 +69,9 @@ public class Launcher extends Activity{
private final String net_change_action = "android.net.conn.CONNECTIVITY_CHANGE";
private final String wifi_signal_action = "android.net.wifi.RSSI_CHANGED";
private final String outputmode_change_action = "android.amlogic.settings.CHANGE_OUTPUT_MODE";
+ private final String DROIDVOLD_MEDIA_UNMOUNTED_ACTION = "com.droidvold.action.MEDIA_UNMOUNTED";
+ private final String DROIDVOLD_MEDIA_EJECT_ACTION = "com.droidvold.action.MEDIA_EJECT";
+ private final String DROIDVOLD_MEDIA_MOUNTED_ACTION = "com.droidvold.action.MEDIA_MOUNTED";
public static String COMPONENT_TV_APP = "com.droidlogic.tvsource/com.droidlogic.tvsource.DroidLogicTv";
public static String COMPONENT_LIVE_TV = "com.android.tv/com.android.tv.TvActivity";
@@ -208,6 +211,9 @@ public class Launcher extends Activity{
filter.addAction(Intent.ACTION_MEDIA_EJECT);
filter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
filter.addAction(Intent.ACTION_MEDIA_MOUNTED);
+ filter.addAction (DROIDVOLD_MEDIA_UNMOUNTED_ACTION);
+ filter.addAction (DROIDVOLD_MEDIA_MOUNTED_ACTION);
+ filter.addAction (DROIDVOLD_MEDIA_EJECT_ACTION);
filter.addDataScheme("file");
registerReceiver(mediaReceiver, filter);
@@ -668,7 +674,12 @@ public class Launcher extends Activity{
return;
if (Intent.ACTION_MEDIA_EJECT.equals(action)
- || Intent.ACTION_MEDIA_UNMOUNTED.equals(action) || Intent.ACTION_MEDIA_MOUNTED.equals(action)) {
+ || Intent.ACTION_MEDIA_UNMOUNTED.equals(action)
+ || Intent.ACTION_MEDIA_MOUNTED.equals(action)
+ || action.equals ("com.droidvold.action.MEDIA_UNMOUNTED")
+ || action.equals ("com.droidvold.action.MEDIA_EJECT")
+ || action.equals ("com.droidvold.action.MEDIA_MOUNTED")
+ ) {
displayStatus();
updateStatus();
}
diff --git a/src/com/droidlogic/mboxlauncher/StatusLoader.java b/src/com/droidlogic/mboxlauncher/StatusLoader.java
index 1d89982..27b2d6d 100644
--- a/src/com/droidlogic/mboxlauncher/StatusLoader.java
+++ b/src/com/droidlogic/mboxlauncher/StatusLoader.java
@@ -31,6 +31,9 @@ import java.util.Locale;
import java.util.List;
import java.util.Calendar;
import java.util.Collections;
+import java.util.Map;
+
+import com.droidlogic.app.FileListManager;
public class StatusLoader {
private final static String TAG = "StatusLoader";
@@ -38,13 +41,20 @@ public class StatusLoader {
private final String SDCARD_FILE_NAME ="sdcard";
private final String UDISK_FILE_NAME ="udisk";
public static final String ICON ="item_icon";
+ public static final String KEY_TYPE = "key_type";
+ public static final String TYPE_UDISK = "type_udisk";
private Context mContext;
private ConnectivityManager mConnectivityManager;
private WifiManager mWifiManager;
private StorageManager mStorageManager;
+ private FileListManager mFileListManager;
+
+ private int devCnt = 0;
+ private List<Map<String, Object>> listFiles = null;
public StatusLoader (Context context) {
+ mFileListManager = new FileListManager(context);
mContext = context;
mConnectivityManager = (ConnectivityManager)mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
mWifiManager = (WifiManager)mContext.getSystemService(Context.WIFI_SERVICE);
@@ -113,12 +123,13 @@ public class StatusLoader {
}
private boolean isUdiskExist() {
- List<VolumeInfo> volumes = mStorageManager.getVolumes();
- Collections.sort(volumes, VolumeInfo.getDescriptionComparator());
- for (VolumeInfo vol : volumes) {
- if (vol != null && vol.isMountedReadable() && vol.getType() == VolumeInfo.TYPE_PUBLIC) {
- DiskInfo disk = vol.getDisk();
- if (disk.isUsb()) {
+ listFiles = mFileListManager.getDevices();
+ devCnt = listFiles.size();
+ for (int j = 0; j < devCnt; j++) {
+ Map<String, Object> map = listFiles.get(j);
+ String keyType = (String)map.get(KEY_TYPE);
+ if (keyType != null) {
+ if (keyType.equals(TYPE_UDISK)) {
return true;
}
}