History log of /frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d9f3005fc3d3e6544e5e94052d9229413b0181d1 28-Mar-2018 Jerry Zhang <zhangjerry@google.com> Fix Unicode handling.

Change type usages based on changes
in libmtp.

Bug: 70546563
Test: Mtp works, tests pass
Change-Id: Id38c30e3a1311328ec2293792ae0866da2cf90be
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
63f819203de3a029f2397510c48101b343441df3 15-Mar-2018 Chong Zhang <chz@google.com> heif: fix Exif extraction in mtp database

bug: 73978990

Change-Id: I389920a2788f7fc0472691bef271b770d2a82184
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
f9c5c2574d95b6d233ebae8beae110f4e15c52c5 17-Aug-2017 Jerry Zhang <zhangjerry@google.com> Add MtpStorageManager for monitoring filesystem events

MtpStorageManager keeps track of file information and
send notifications for new files. MtpDatabase now uses
this instead of MediaProvider for getting object information,
although some operations are still reflected into MP.

Since MtpStorageManager handles storage ids, remove
that field from StorageVolume and VolumeInfo.

Clean up a lot of the jni code for MtpDatabase.

Bug: 63143623
Test: Test every MtpOperation in a variety of situations on Linux and
Windows. Also use the shell to manipulate files. Verify that the cache
is consistent throughout, and the operations behave as expected. Verify
files created by the shell appear.
Test: adb shell am instrument -w android.mtp /android.support.test.runner.AndroidJUnitRunner
Change-Id: Id4ea810047b0c323399cd833047733e5daafb30a
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
baa1210d255c6bed6236794355af6abf0ef661ea 06-Dec-2017 kyle_tso <kyle_tso@htc.com> Merge "Support scanDirectories with JNI callback function" am: 5747c2b81c
am: 34be883ebd

Change-Id: I57a54d520cd953c7b99e6815e7894421166368d4
34be883ebddfa03de31581e6e9942c47d53cc395 06-Dec-2017 kyle_tso <kyle_tso@htc.com> Merge "Support scanDirectories with JNI callback function"
am: 5747c2b81c

Change-Id: I8996fb568c4024ccf76a5643049de8cee6f811c6
b4aa69fd116d5486f224914350a57b4befddfe26 22-Nov-2017 kyle_tso <kyle_tso@htc.com> Support scanDirectories with JNI callback function

MtpServer needs this function to update the database for directory
copy operation.

Test: Call this function from MtpServer and database is updated in
directory copy scenario.

Change-Id: I9b316f4dbf7f35922292c33ab02f9efebc867aa8
Signed-off-by: kyle_tso <kyle_tso@htc.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
220871a697290529278ed16db508eda8e12f3fc7 14-Nov-2017 Xin Li <delphij@google.com> Merge commit '98e12851336b7db16e583f9afac63ecc97465980' from
oc-mr1-dev-plus-aosp-without-vendor into stage-aosp-master.

Change-Id: Ia7b8da4a00d215160e4a4fa40f6044208d1297b7
Merged-In: I19846d2a3ee27aecbae2367a74ee49082eea154d
c4ac6079169a4050be835e7af910484e36cffc04 31-Oct-2017 Chong Zhang <chz@google.com> Merge "mtp: fix double free of thumbnail data" into nyc-dev am: 914bc14e82 am: f9e16c9899 am: 396487f5aa am: 5330335288 am: db258ebba8 am: e3ac25eb0c am: bd7101937a
am: b48acd86c0

Change-Id: I5aba8558427da76da5bbe331c207f04415990ac1
b48acd86c06deef391735a097d667a31276ff5e8 31-Oct-2017 Chong Zhang <chz@google.com> Merge "mtp: fix double free of thumbnail data" into nyc-dev am: 914bc14e82 am: f9e16c9899 am: 396487f5aa am: 5330335288 am: db258ebba8 am: e3ac25eb0c
am: bd7101937a

Change-Id: I78a26c3abfb72e9b873b719506f869df0aa87da1
e3ac25eb0c984a476c088301d853b6e42d422dfc 31-Oct-2017 Chong Zhang <chz@google.com> Merge "mtp: fix double free of thumbnail data" into nyc-dev am: 914bc14e82 am: f9e16c9899 am: 396487f5aa am: 5330335288
am: db258ebba8

Change-Id: Ic9821f05d30a57fad1567e834804cec6ff5dca97
e6b98532ee03d0ac1ca93382699893172454a946 25-Oct-2017 Chong Zhang <chz@google.com> mtp: fix double free of thumbnail data

bug: 67864232
Change-Id: I6eb51be839df12317273830521c70a4ed80f9496
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
3b997d077317f536df7597032bc14d1e18e1fe17 19-Oct-2017 Jerry Zhang <zhangjerry@google.com> Merge "Add storageId to moveObjects" am: 1f4f6d2a18 am: 18abf57e99
am: 59ff05a59f

Change-Id: I024be0c75e20e58152dbe0c81e5548d70f06a925
def7b1930013e31e85bed904ff38cc3af71e75b2 17-Oct-2017 Jerry Zhang <zhangjerry@google.com> Add storageId to moveObjects

When moving between different storages, the storageId
must be changed as well.

Bug: 67028892
Test: Move between storages with virtual sdcard.
Change-Id: Ie82aa8d53686bfffb7c26b46a49524a00f2f0214
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
3a13ab1fd38f02fe341c47336826a597bf02b44d 03-Oct-2017 Jerry Zhang <zhangjerry@google.com> Merge "Add moveObject method to change object's path and parent." am: 33a200e572 am: 0f09ac317d
am: f9696617bd

Change-Id: Ia6ba6d0cf89879914894d35a0dbf110d905966ac
952558d4e5a51b5f69c7c0bc1e3d7fa8da1cbf3c 27-Sep-2017 Jerry Zhang <zhangjerry@google.com> Add moveObject method to change object's path and parent.

This is needed to implement the MTP MOVE_OBJECT operation.

Bug: 66679910
Test: Move objects and folders, verify mediastore is consistent
Change-Id: I2f4f0c43134fb3ff82745166c051712cc1736b7f
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
6e18ccee2afd30a1b0874c5e26b2c8289309b432 16-Aug-2017 Chong Zhang <chz@google.com> heif: add new file and mime types to MediaScanner -- DO NOT MERGE

bug: 64077740
Change-Id: I6d36c2394a5ae527026c98c83786009e70b20958
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
2279b2534272282a5b5152723235da397e49195c 19-Jul-2017 Steven Moreland <smoreland@google.com> frameworks/base: use proper nativehelper headers

libnativehelper exports headers under nativehelper. These were
available before incorrectly as global headers in order to give
access to jni.h.

Test: modules using frameworks/base find headers
Bug: 63762847
Change-Id: I0f9f231acdebe460f279135462f43d3e32eff64d
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
13bb2f4ddadcfee8e82a0eea3cb76a2448bb2ccb 15-Dec-2016 Jerry Zhang <zhangjerry@google.com> 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
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
b3f8a968e27779a0f4cfe0864af4df6f8bdbefe0 20-Apr-2016 Insun Kang <insun@google.com> Merge "ExifInterface: Fix a bug to return only a JPEG-compressed thumbnail" into nyc-dev
am: 801d416

* commit '801d4161dd9e872bec73d855d21d030ba39a8b91':
ExifInterface: Fix a bug to return only a JPEG-compressed thumbnail

Change-Id: I4ab59b2b7ced0cf9449fdc780692cfcb707d8df4
82c2ce1d16f9f2775791c13347a8f5c6759de2e2 19-Apr-2016 Insun Kang <insun@google.com> ExifInterface: Fix a bug to return only a JPEG-compressed thumbnail

Bug: 26923978
Change-Id: I929802ae7ff878a80a43058d3c6fa922c706edf6
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
2129b9cc17a11782e7e438245610dd330b9c2874 15-Apr-2016 Jaesung Chung <jaesung@google.com> Merge "ExifInterface: return only a JPEG-compressed thumbnail of RAW images" into nyc-dev
am: 02f9e23

* commit '02f9e23525bd3ae97528041bc0eaf25d43d8fc53':
ExifInterface: return only a JPEG-compressed thumbnail of RAW images

Change-Id: If826f5f7612e06d94c0cf17505bf468851d96faa
742e89f67df160475a157af375c5ab72bba0c308 13-Apr-2016 Jaesung Chung <jaesung@google.com> ExifInterface: return only a JPEG-compressed thumbnail of RAW images

Bug: 26923978
Change-Id: I120723c9e28a24d6fb3b7034892e0196484ee5e4
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
288d70f79b395029143b06a742829a695fa2da62 06-Apr-2016 Jaesung Chung <jaesung@google.com> Merge "Fix build" into nyc-dev
am: 5905bf7

* commit '5905bf738c175edfc63bf2e5ee28a43d83977e2d':
Fix build

Change-Id: Icabf911c0eb4a96e88032312fd6fb6785b043932
fd3446e0aa62ff1af3cfd068ed5910575a5907b8 06-Apr-2016 Jaesung Chung <jaesung@google.com> Fix build

Change-Id: I38aa2f70fef3cb5b4a6fe42a3e4aa8e0a16e6fe0
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
7a83ee9a320669c6346a6a634e79cab4dbb5e462 05-Apr-2016 Marco Nelissen <marcone@google.com> Merge "Fix MTP_TYPE_UINT128 data conversion issue" am: ba23e45
am: 287dfa1

* commit '287dfa10cd6d5c6eb7cb39e20e1b6532c320927c':
Fix MTP_TYPE_UINT128 data conversion issue

Change-Id: I72aa6c2bcd009a2e0607832c44dc4b96c5da6b1f
8937f1aa8b7ac50f60bf1f391382d4c4055c449d 02-Mar-2016 Wanwu Peng <wanwu.peng@sonymobile.com> Fix MTP_TYPE_UINT128 data conversion issue

If type is MTP_TYPE_UINT128, use MtpDataPacket.putUInt128()
not MtpDataPacket.putInt128() to write data to the packet.

Change-Id: Icb9994e24ac216f3bb07d0a2b3cd7ccf3f8c6f3f
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
486ad2e73c1c24c0585d414b18bd623c54ac1547 29-Feb-2016 Daichi Hirono <hirono@google.com> Fix argument type in MtpDatabase#getObjectPropertyValue.

In MTP code, we use jint for ID (e.g. object handle) and code (property
code). But getObjectPropertyValue takes jlong and it causes missing
property values in Java code. Previously we passed the long value to
Map<Integer, MtpPropertyGroup>#get(Integer) and the compiler somehow
accepted the code. However it actually takes Long at runtime, so the
properties are never found.

BUG=26437284
Change-Id: I79defd325ea5d20c4dce84d891d984e24abcacc5
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
8409c0691fb128fef6244305977342776bddf919 19-Jan-2016 Jaesung Chung <jaesung@google.com> Enable reading a thumbnail from RAW image files in MtpDatabase

Also introduce new supported RAW image file formats, PEF and SRW.

RAW image file formats are not defined in PTP 1.2 specification except
for DNG. They are mostly built on top of TIFF or TIFF/EP. (Fuji's RAF
is the exception).

In this CL, image file formats are classified newly as below:

DNG: dng
TIFF: cr2, nrw, arw, rw2, orf, pef, srw
TIFF/EP: nef
Unknown Image Formats(FORMAT_DEFINED): wbmap, webp, raf

I referred to the following documents for defining MTP formats of RAW
images:

* http://www.rags-int-inc.com/PhotoTechStuff/RawStandards/RawSummary.html
* https://en.wikipedia.org/wiki/Raw_image_format

Bug: 26552863, Bug: 26626825
Change-Id: Ia218f6320c4c1ff051a23ca0060ceac46134b0d7
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
76f6a86de25e1bf74717e047e55fd44b089673f3 19-Sep-2015 Daniel Micay <danielmicay@gmail.com> constify JNINativeMethod function pointer tables

Change-Id: I4036c924958221cbc644724f8eb01c5de3cd7954
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
2d1e078ac45a646ee55bb9aca022dafd143ff95b 26-Jan-2015 Mike Lockwood <lockwood@google.com> am 5ac22aa6: am 2b144a16: Merge "MTP: Fix partial implementation of 5 new audio specific properties" into lmp-mr1-dev

* commit '5ac22aa60f773917981f42e64fbc28615871fd3e':
MTP: Fix partial implementation of 5 new audio specific properties
71827748105252791854b87da8e0e0c66ff0d2cb 23-Jan-2015 Mike Lockwood <lockwood@google.com> MTP: Fix partial implementation of 5 new audio specific properties

In change Ic5b3fb75309893caae1a4f4b56068a543847f1f7, we added partial
support for the MTP properties:

MTP_PROPERTY_AUDIO_WAVE_CODE,
MTP_PROPERTY_BITRATE_TYPE
MTP_PROPERTY_AUDIO_BITRATE
MTP_PROPERTY_NUMBER_OF_CHANNELS
MTP_PROPERTY_SAMPLE_RATE

However we were not returning any values for these properties in the result
of the MTP GetObjectPropList command. Strangely, this triggers a nasty bug
in Windows 7 that results in data loss. When copying a directory containing
several MP3 files from one location on the device to another, Windows will
copy only some of the files to the new location, but delete all of the originals.
Finishing the implementation of these new object properties for some unknown
reason stops this bad behavior in Windows 7.

Bug: 19018427
Change-Id: I5fd3b91a89b31827d3100686445cef6795fe0f3f
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
d7572b84efdb694618fca550a3fb5ccc4a7ccd5f 25-Nov-2014 chh <chh@google.com> am 3ec380d3: am fc545733: Merge "Remove unused variables and functions, don\'t warn about unused parameters"

* commit '3ec380d365cbe5fac23ff19897512cf492a7a8a4':
Remove unused variables and functions, don't warn about unused parameters
4048a4bcb1ea709ddb83a4fde3ff5c53e642f7d0 23-Nov-2014 Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org> Remove unused variables and functions, don't warn about unused parameters

Remove unused variables and static functions clang complains about,
disable warnings about unused parameters (needed for clang and for gcc
with -Wextra enabled)

Change-Id: I76a22cd0158b3c7375c54e3d4d15bc1ac448591e
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
582bdf9a5961a32de27556832e23e0611c4d1cbb 21-Nov-2014 Dan Albert <danalbert@google.com> am d8c169fe: am 0c437fd3: Merge "Add appropriate casts for char16_t."

* commit 'd8c169fedf883491e46b354484909694fd52cfaf':
Add appropriate casts for char16_t.
6698749dd4d4d6513b26aa9071af290b956b68a7 20-Nov-2014 Dan Albert <danalbert@google.com> Add appropriate casts for char16_t.

C++11 defines a real char16_t, which is not implicitly convertible to
uint16_t (and by extension jchar). Add casts as needed.

Bug: 18300613
Change-Id: I00752002ef2e938bdb57f70947e8fd53ec103293
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
b8cb45fddf5618ca0e8e9b36368a729785599e7c 13-Nov-2014 Mike Lockwood <lockwood@google.com> am 01816640: am eb205b88: Merge "MTP: Update JNI for new packet getters" into lmp-mr1-dev

* commit '0181664081db2149aa465332c33c5cb413a4348c':
MTP: Update JNI for new packet getters
9c803fa52606aeb27d4d098161722fb111dd1b23 13-Nov-2014 Mike Lockwood <lockwood@google.com> MTP: Update JNI for new packet getters

Bug:18113092
Change-Id: I5d7473af1b57235fbc078c297a309e4a301c9fbd
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
cba06c2272c8bce7d10b2a7ee762d12043f3252a 11-Nov-2014 Andreas Gampe <agampe@google.com> resolved conflicts for merge of 6957369d to lmp-mr1-dev-plus-aosp

Change-Id: Ie3bd0e24c69c0c7ae500b8eb4a1198650e993a19
5a15d0d31b877ef512b3379eac033c6bb041c86a 11-Nov-2014 Andreas Gampe <agampe@google.com> Frameworks/base: Wall Werror in media/jni

Turn on -Wall -Werror in media/jni. Fix warnings.

Change-Id: I9da54ad379d8172ee535b52ee2b0637a2533f4e3
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
63ffd78aaab0b0d04012312f0378b0c73b737a2a 24-Sep-2014 Mike Lockwood <lockwood@google.com> MtpDatabase: Increase size of string buffer in JNI code

Fixes problems handling files that have full path length > 255 characters

Bug: 17383223
Change-Id: I2a1ebedee8dd86b3060f14c2d1af636fc9bc95cb
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
9dc96cf0fc6261606495e5e56c0be7bee77d8895 02-Jun-2014 Mike Lockwood <lockwood@google.com> am a0183b02: am 8868d129: am 1c725866: Merge "MtpDatabase JNI: Fixed incorrect method name in ALOGE."

* commit 'a0183b02e4c6f53587519b445a546192b4a20146':
MtpDatabase JNI: Fixed incorrect method name in ALOGE.
307a37c2afc30190151285eb96ebd6a6940a96ec 02-Jun-2014 Mike Lockwood <lockwood@google.com> am 1ac54ec6: am 750e78bb: am 27eb205e: Merge "MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue()."

* commit '1ac54ec69bfcda2638b05c7daa4300ec5749e7b8':
MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue().
a0183b02e4c6f53587519b445a546192b4a20146 02-Jun-2014 Mike Lockwood <lockwood@google.com> am 8868d129: am 1c725866: Merge "MtpDatabase JNI: Fixed incorrect method name in ALOGE."

* commit '8868d1290afd96997fef671f4a7a4c7bbf94fa1a':
MtpDatabase JNI: Fixed incorrect method name in ALOGE.
1ac54ec69bfcda2638b05c7daa4300ec5749e7b8 02-Jun-2014 Mike Lockwood <lockwood@google.com> am 750e78bb: am 27eb205e: Merge "MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue()."

* commit '750e78bb7626e2e0d5c8feed4a6e4fbe7fe9b5da':
MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue().
8868d1290afd96997fef671f4a7a4c7bbf94fa1a 02-Jun-2014 Mike Lockwood <lockwood@google.com> am 1c725866: Merge "MtpDatabase JNI: Fixed incorrect method name in ALOGE."

* commit '1c725866da02c3e1f62fb416ea3450caed406f2a':
MtpDatabase JNI: Fixed incorrect method name in ALOGE.
750e78bb7626e2e0d5c8feed4a6e4fbe7fe9b5da 02-Jun-2014 Mike Lockwood <lockwood@google.com> am 27eb205e: Merge "MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue()."

* commit '27eb205e21e7715764084085f382d690e0406c63':
MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue().
986b46d17974f37b82a106094aa258fd707a4596 31-May-2014 Martin Blumenstingl <martin.blumenstingl@googlemail.com> MtpDatabase JNI: Fixed incorrect method name in ALOGE.

Change-Id: I46688cf79f1e7554b28162df2347c4dcb571b8a9
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
17a24c58bb2e86719f003c80f682beb66803f24d 31-May-2014 Martin Blumenstingl <martin.blumenstingl@googlemail.com> MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue().

The jstring "stringValue" was not never freed.
In the case where "str" was NULL the whole cleanup part (see "goto out")
was even skipped.
This patch makes getObjectPropertyValue() behave like
getObjectPropertyList().

Change-Id: I5a7ec3611036f5253a054b00064999bcd1d1c29e
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
293513a59d36cd96a3e474dde5981380d372d8c9 30-Apr-2014 Bill Yi <byi@google.com> Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD
3fafb4ebf2572578c6d7df742593ee5ed17748a8 21-Apr-2014 Mike Lockwood <lockwood@google.com> am f82c83a8: am eaabdce0: am ca1f8f6d: am c4367721: MTP: Fix getThumbnail

* commit 'f82c83a8debb468027921e4b479bf80fe7f04ee1':
MTP: Fix getThumbnail
f82c83a8debb468027921e4b479bf80fe7f04ee1 21-Apr-2014 Mike Lockwood <lockwood@google.com> am eaabdce0: am ca1f8f6d: am c4367721: MTP: Fix getThumbnail

* commit 'eaabdce0ad556a91ccf731d042edfd9c5f249f5e':
MTP: Fix getThumbnail
eaabdce0ad556a91ccf731d042edfd9c5f249f5e 21-Apr-2014 Mike Lockwood <lockwood@google.com> am ca1f8f6d: am c4367721: MTP: Fix getThumbnail

* commit 'ca1f8f6d14a144dde64112cd471df5e9539ad521':
MTP: Fix getThumbnail
c436772120ceea1d6e3f5b388ef068c99c8bb7d6 21-Apr-2014 Mike Lockwood <lockwood@google.com> MTP: Fix getThumbnail

The thumbnail size was not being passed to the MTP stack so getThumbnail
was returning zero length data.

Bug: 13747419

Change-Id: I309d35b5c46ab5f631c0dcb5981f7896bb5a2ed5
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
0046b16ec7af940049344803afbb52953f100df3 26-Mar-2014 Mark Salyzyn <salyzyn@google.com> am 959bce3e: am 4e3abafc: am 5daf51c0: Merge "jni: 64-bit compile issue"

* commit '959bce3e69b4eb5dcba9ec48d92f21002f9c13b3':
jni: 64-bit compile issue
959bce3e69b4eb5dcba9ec48d92f21002f9c13b3 26-Mar-2014 Mark Salyzyn <salyzyn@google.com> am 4e3abafc: am 5daf51c0: Merge "jni: 64-bit compile issue"

* commit '4e3abafc9400eed38a1e76897b79e923acfaf8ed':
jni: 64-bit compile issue
aeb75fc5a3dc51bf9d5220647a68c48644c66ea8 20-Mar-2014 Mark Salyzyn <salyzyn@google.com> jni: 64-bit compile issue

- switch to PRId64
- some unused parameter warning suppression

Change-Id: Ia36bd1a247bb6e866a6b1050ab1362ebc9d31786
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
92b53bc2dd42a3c1d2d7708145099da2a5fe541e 13-Mar-2014 Mike Lockwood <lockwood@google.com> MTP: Add support for some audio specific object properties

This stops Windows 7 from putting up the
"Your device might not be able to play or view this file" dialog
when copying MP3 files to the device.

Bug: 3195286
Change-Id: Ic5b3fb75309893caae1a4f4b56068a543847f1f7
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
56c85244b9be0fc6f6c2baf5f9a53f2364d5ec5e 07-Mar-2014 Mike Lockwood <lockwood@google.com> MTP: Add support for battery level device property

Bug: 7342482

Change-Id: I810e55fe9695e2206816f57334ad14f65e9c641d
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
efae1ff25d51d3c7ff2def472e8eb0c56b1be33f 08-Mar-2014 Marco Nelissen <marcone@google.com> am ac875878: am 9823a170: Merge "Make MtpDatabase use libexif instead of libjhead" into klp-dev

* commit 'ac87587875f1dfade5e06a82ccc009d0f0170569':
Make MtpDatabase use libexif instead of libjhead
344251969929dcb37a33a3e3910121458f7dc38f 07-Mar-2014 Marco Nelissen <marcone@google.com> am ac875878: am 9823a170: Merge "Make MtpDatabase use libexif instead of libjhead" into klp-dev

* commit 'ac87587875f1dfade5e06a82ccc009d0f0170569':
Make MtpDatabase use libexif instead of libjhead
aefa427c27396bef64ee37d5c4d94e0a63cf7b05 10-Jan-2014 Marco Nelissen <marcone@google.com> Make MtpDatabase use libexif instead of libjhead

b/12203995

Change-Id: I0e0e6209be7a9d3e493abdcee8619cae6d4b9501
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
0937eed32fbe780182cb0349ac29680add7e492c 23-Jan-2014 Marco Nelissen <marcone@google.com> Check that the exif bits are actually there

b/12663599

Change-Id: If2af0ab20f29ab3264a8c6c8c4abf0ebeff6616c
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
3cd393c5051ce26c8030736f5524962d98abe849 10-Jan-2014 Marco Nelissen <marcone@google.com> Make MtpDatabase use libexif instead of libjhead

b/12203995

Change-Id: I0e0e6209be7a9d3e493abdcee8619cae6d4b9501
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
e2e59326f13cf291bf5b37989390fd2a55a94f0c 17-Dec-2013 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in MTP classes

For storing pointers, long is used in MTP classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I67805547251722e7b77611d47d0bb632a64d3e6d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
87eac99a21772ae56018cb81db6966557b459554 10-Sep-2013 Ruben Brunk <rubenbrunk@google.com> Remove dependency on JNIHelp header side effects.

Bug: 10680559
Change-Id: I47870d6c48906e0a420c52b7bc5945ffe29c68a2
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
1341f1eee3493fc5e263494acb8adebb6f0180b6 01-Apr-2013 Mike Lockwood <lockwood@google.com> MTP: Implement date created field in GetObjectInfo

Bug: 8293874

Change-Id: I3e50ea1049f63e2ed3a1f849fef74a2fbf206fe8
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
f6f16614574767263fcd0073f72c099edaca0607 13-Sep-2012 Mike Lockwood <lockwood@google.com> MtpDatabase: Use actual file size instead of media database size column

Fixes problems with file transfer from device to host that can occur
if the database size value is wrong.

Bug: 6954446

Change-Id: I03c3dd4b75267d1f4613f0b588c8899ded9a70be
Signed-off-by: Mike Lockwood <lockwood@google.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
3762c311729fe9f3af085c14c5c1fb471d994c03 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
c1b9bbb21c8ad5109978a4e9e770cd18b0257434 13-Jul-2011 Mike Lockwood <lockwood@android.com> Remove some #ifdef HAVE_ANDROID_OS that were needed for the simulator build

Change-Id: I13d9f251f86c05ae5405f37adbf6b8e9660935ba
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
c89f22242b955ae748765b3465b819b40f70ee5f 25-Apr-2011 Mike Lockwood <lockwood@android.com> MTP: Implement GetThumb command

This allows the PC to access thumbnails in JPEG files over MTP/PTP

Bug: 3219495

Change-Id: I4964f8b4826dffb7f0f77464ec91bd2e97a2f007
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
9df53fae3afd1c6b5278216be2fd33a255602aef 22-Apr-2011 Mike Lockwood <lockwood@android.com> MTP: Add extended operations to support in-place editing of files

MTP does not support partial writes of files (the entire file must be transferred at once).
This makes it impossible to implement a FUSE file system for MTP
with acceptable performance.
To fix this problem, this change adds extended MTP operations to allow
partial writes to files:

SendPartialObject - allows writing a subset of a file, or appending to the end of a file

TruncateObject - allows changing the size of a file

BeginEditObject - must be called before using SendPartialObject and TruncateObject

EndEditObject - commits changes to a file after it has been edited with SendPartialObject or TruncateObject

We also add GetPartialObject64, which is the same as GetPartialObject
but has a 64 bit offset rather than 32.

Change-Id: I4b110748b97ae05cdc8aab02ecdbbbeb263f7840
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
15dd15fd572df6b6f785dff75f66e9b99f40322a 09-Apr-2011 Elliott Hughes <enh@google.com> Tidy up exception throwing in the media native code.

(I'm going through all of frameworks/base in multiple passes. This pass is just
for exception throwing.)

Change-Id: Ia14a5c720edae86ac780023be88e676aa1b3315d
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
3977472d9f3380a8323156dbc7d0090cf2f2d310 06-Apr-2011 James Dong <jdong@google.com> Handle the failure from GetStringUTFChars()

Change-Id: I9eb0f9f0fd2fa5116e7be80b1fa2ed4a95521b9d
related-to-bug: 4139926
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
f26a586c86b097f975e26fe526ead564ad011bd0 22-Jan-2011 Mike Lockwood <lockwood@android.com> Remove MTP related log spam

Change-Id: I9de1792cbeec07fa5ab42ff9a10813f0c3d30fc1
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
7a0bd17bceaf3efc3732e30c538fae420d3b742c 18-Jan-2011 Mike Lockwood <lockwood@android.com> MTP: Fix problems with modification dates for folders and non-media files

Also removed an unnecessary parameter to MtpDatabase.endSendobject()

BUG: 3352142

Change-Id: I6fd812dcba4814956bc8bc1cbd6bd5c868197790
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp
0cd0136d440cf6ad9d5fab430269116786e671ec 30-Dec-2010 Mike Lockwood <lockwood@android.com> Move MTP Java classes to android.mtp.* package.

Change-Id: Ib18bcaabf314241a95e517d0b93be5845d988e2c
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/jni/android_mtp_MtpDatabase.cpp