diff options
author | Jerry Zhang <zhangjerry@google.com> | 2016-12-14 15:39:29 -0800 |
---|---|---|
committer | Jerry Zhang <zhangjerry@google.com> | 2017-01-19 11:26:35 -0800 |
commit | 13bb2f4ddadcfee8e82a0eea3cb76a2448bb2ccb (patch) | |
tree | e309bc94651c0aca31242dcf8efc41853549fdaa /media/java/android/mtp/MtpDatabase.java | |
parent | a83222e4fbdc5eef936eb3834cbf02be05bfc19c (diff) |
Add support for MTP perceived device type property.
Property value is based on the particular device.
This allows some hosts (windows) to apply a device
specific icon in file explorer.
Test: Connect device to windows, verify new icon
Bug: 25360563
Change-Id: I9d3468ca8c01a6f0d42ad543aef11ed265b6c825
Diffstat (limited to 'media/java/android/mtp/MtpDatabase.java')
-rwxr-xr-x | media/java/android/mtp/MtpDatabase.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/media/java/android/mtp/MtpDatabase.java b/media/java/android/mtp/MtpDatabase.java index 760a2d13eecb..56a573736c31 100755 --- a/media/java/android/mtp/MtpDatabase.java +++ b/media/java/android/mtp/MtpDatabase.java @@ -29,6 +29,7 @@ import android.media.MediaScanner; import android.net.Uri; import android.os.BatteryManager; import android.os.RemoteException; +import android.os.SystemProperties; import android.provider.MediaStore; import android.provider.MediaStore.Audio; import android.provider.MediaStore.Files; @@ -133,6 +134,8 @@ public class MtpDatabase implements AutoCloseable { private int mBatteryLevel; private int mBatteryScale; + private int mDeviceType; + static { System.loadLibrary("media_jni"); } @@ -195,6 +198,7 @@ public class MtpDatabase implements AutoCloseable { } initDeviceProperties(context); + mDeviceType = SystemProperties.getInt("sys.usb.mtp.device_type", 0); mCloseGuard.open("close"); } @@ -710,6 +714,7 @@ public class MtpDatabase implements AutoCloseable { MtpConstants.DEVICE_PROPERTY_DEVICE_FRIENDLY_NAME, MtpConstants.DEVICE_PROPERTY_IMAGE_SIZE, MtpConstants.DEVICE_PROPERTY_BATTERY_LEVEL, + MtpConstants.DEVICE_PROPERTY_PERCEIVED_DEVICE_TYPE, }; } @@ -869,6 +874,10 @@ public class MtpDatabase implements AutoCloseable { outStringValue[imageSize.length()] = 0; return MtpConstants.RESPONSE_OK; + case MtpConstants.DEVICE_PROPERTY_PERCEIVED_DEVICE_TYPE: + outIntValue[0] = mDeviceType; + return MtpConstants.RESPONSE_OK; + // DEVICE_PROPERTY_BATTERY_LEVEL is implemented in the JNI code default: |