Loading res/values/inspector_strings.xml +7 −1 Original line number Diff line number Diff line Loading @@ -63,7 +63,7 @@ <string name="metadata_aperture">Aperture</string> <!-- The value of a photos shutter speed. Note that this is probably camera EXIF data.--> <string name="metadata_shutter_speed">Shutter speed</string> <!-- When a photo was taken. Note that this is probably camera EXIF data.--> <!-- How long a video/audio file is.--> <string name="metadata_duration">Duration</string> <!-- When a photo was taken. Note that this is probably camera EXIF data.--> <string name="metadata_date_time">Taken on</string> Loading @@ -77,6 +77,12 @@ <string name="metadata_iso_speed_ratings">ISO equivalent</string> <!--The format for displaying ISO speed. Note that this is probably camera EXIF data--> <string name="metadata_iso_format">ISO <xliff:g id="iso_speed" example="35">%1$d</xliff:g></string> <!--The title of the audio file, Note this is probably MP3 ID3 tags.--> <string name="metadata_artist">Artist</string> <!--The composer for the audio file, Note this is probably MP3 ID3 tags--> <string name="metadata_composer">Composer</string> <!--The album the file is in, Note this is probably MP3 ID3 tags--> <string name="metadata_album">Album</string> <!-- String label for developer/debug file details, specifying which stream types are available. --> <string name="debug_stream_types">Stream types</string> Loading src/com/android/documentsui/inspector/MediaView.java +27 −0 Original line number Diff line number Diff line Loading @@ -69,9 +69,36 @@ public class MediaView extends TableView implements MediaDisplay { showVideoData(this, mResources, doc, video, geoClickListener); } Bundle audio = metadata.getBundle(Shared.METADATA_KEY_AUDIO); if (audio != null) { showAudioData(this, audio); } setVisible(!isEmpty()); } @VisibleForTesting public static void showAudioData(TableDisplay table, Bundle tags) { if (tags.containsKey(MediaMetadata.METADATA_KEY_ARTIST)) { table.put(R.string.metadata_artist, tags.getString(MediaMetadata.METADATA_KEY_ARTIST)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_COMPOSER)) { table.put(R.string.metadata_composer, tags.getString(MediaMetadata.METADATA_KEY_COMPOSER)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_ALBUM)) { table.put(R.string.metadata_album, tags.getString(MediaMetadata.METADATA_KEY_ALBUM)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_DURATION)) { int millis = tags.getInt(MediaMetadata.METADATA_KEY_DURATION); table.put(R.string.metadata_duration, DateUtils.formatElapsedTime(millis / 1000)); } } @VisibleForTesting public static void showVideoData( TableDisplay table, Loading tests/unit/com/android/documentsui/inspector/MediaViewTest.java +12 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ public class MediaViewTest { mMetadata = new Bundle(); TestMetadata.populateExifData(mMetadata); TestMetadata.populateVideoData(mMetadata); TestMetadata.populateAudioData(mMetadata); } /** Loading Loading @@ -118,6 +119,17 @@ public class MediaViewTest { mTable.assertHasRow(R.string.metadata_dimensions, "1920 x 1080, 2.1MP"); } @Test public void testShowAudioData() throws Exception { Bundle data = mMetadata.getBundle(Shared.METADATA_KEY_AUDIO); MediaView.showAudioData(mTable, data); mTable.assertHasRow(R.string.metadata_duration, "01:12"); mTable.assertHasRow(R.string.metadata_artist, "artist"); mTable.assertHasRow(R.string.metadata_composer, "composer"); mTable.assertHasRow(R.string.metadata_album, "album"); } /** * Test that the updateMetadata method is printing metadata for selected items found in the * bundle. Loading tests/unit/com/android/documentsui/inspector/TestMetadata.java +10 −0 Original line number Diff line number Diff line Loading @@ -54,4 +54,14 @@ final class TestMetadata { data.putInt(ExifInterface.TAG_IMAGE_LENGTH, 1080); data.putInt(MediaMetadata.METADATA_KEY_DURATION, 72000); } static void populateAudioData(Bundle container) { Bundle data = new Bundle(); container.putBundle(Shared.METADATA_KEY_AUDIO, data); data.putInt(MediaMetadata.METADATA_KEY_DURATION, 72000); data.putString(MediaMetadata.METADATA_KEY_ARTIST, "artist"); data.putString(MediaMetadata.METADATA_KEY_COMPOSER, "composer"); data.putString(MediaMetadata.METADATA_KEY_ALBUM, "album"); } } Loading
res/values/inspector_strings.xml +7 −1 Original line number Diff line number Diff line Loading @@ -63,7 +63,7 @@ <string name="metadata_aperture">Aperture</string> <!-- The value of a photos shutter speed. Note that this is probably camera EXIF data.--> <string name="metadata_shutter_speed">Shutter speed</string> <!-- When a photo was taken. Note that this is probably camera EXIF data.--> <!-- How long a video/audio file is.--> <string name="metadata_duration">Duration</string> <!-- When a photo was taken. Note that this is probably camera EXIF data.--> <string name="metadata_date_time">Taken on</string> Loading @@ -77,6 +77,12 @@ <string name="metadata_iso_speed_ratings">ISO equivalent</string> <!--The format for displaying ISO speed. Note that this is probably camera EXIF data--> <string name="metadata_iso_format">ISO <xliff:g id="iso_speed" example="35">%1$d</xliff:g></string> <!--The title of the audio file, Note this is probably MP3 ID3 tags.--> <string name="metadata_artist">Artist</string> <!--The composer for the audio file, Note this is probably MP3 ID3 tags--> <string name="metadata_composer">Composer</string> <!--The album the file is in, Note this is probably MP3 ID3 tags--> <string name="metadata_album">Album</string> <!-- String label for developer/debug file details, specifying which stream types are available. --> <string name="debug_stream_types">Stream types</string> Loading
src/com/android/documentsui/inspector/MediaView.java +27 −0 Original line number Diff line number Diff line Loading @@ -69,9 +69,36 @@ public class MediaView extends TableView implements MediaDisplay { showVideoData(this, mResources, doc, video, geoClickListener); } Bundle audio = metadata.getBundle(Shared.METADATA_KEY_AUDIO); if (audio != null) { showAudioData(this, audio); } setVisible(!isEmpty()); } @VisibleForTesting public static void showAudioData(TableDisplay table, Bundle tags) { if (tags.containsKey(MediaMetadata.METADATA_KEY_ARTIST)) { table.put(R.string.metadata_artist, tags.getString(MediaMetadata.METADATA_KEY_ARTIST)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_COMPOSER)) { table.put(R.string.metadata_composer, tags.getString(MediaMetadata.METADATA_KEY_COMPOSER)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_ALBUM)) { table.put(R.string.metadata_album, tags.getString(MediaMetadata.METADATA_KEY_ALBUM)); } if (tags.containsKey(MediaMetadata.METADATA_KEY_DURATION)) { int millis = tags.getInt(MediaMetadata.METADATA_KEY_DURATION); table.put(R.string.metadata_duration, DateUtils.formatElapsedTime(millis / 1000)); } } @VisibleForTesting public static void showVideoData( TableDisplay table, Loading
tests/unit/com/android/documentsui/inspector/MediaViewTest.java +12 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ public class MediaViewTest { mMetadata = new Bundle(); TestMetadata.populateExifData(mMetadata); TestMetadata.populateVideoData(mMetadata); TestMetadata.populateAudioData(mMetadata); } /** Loading Loading @@ -118,6 +119,17 @@ public class MediaViewTest { mTable.assertHasRow(R.string.metadata_dimensions, "1920 x 1080, 2.1MP"); } @Test public void testShowAudioData() throws Exception { Bundle data = mMetadata.getBundle(Shared.METADATA_KEY_AUDIO); MediaView.showAudioData(mTable, data); mTable.assertHasRow(R.string.metadata_duration, "01:12"); mTable.assertHasRow(R.string.metadata_artist, "artist"); mTable.assertHasRow(R.string.metadata_composer, "composer"); mTable.assertHasRow(R.string.metadata_album, "album"); } /** * Test that the updateMetadata method is printing metadata for selected items found in the * bundle. Loading
tests/unit/com/android/documentsui/inspector/TestMetadata.java +10 −0 Original line number Diff line number Diff line Loading @@ -54,4 +54,14 @@ final class TestMetadata { data.putInt(ExifInterface.TAG_IMAGE_LENGTH, 1080); data.putInt(MediaMetadata.METADATA_KEY_DURATION, 72000); } static void populateAudioData(Bundle container) { Bundle data = new Bundle(); container.putBundle(Shared.METADATA_KEY_AUDIO, data); data.putInt(MediaMetadata.METADATA_KEY_DURATION, 72000); data.putString(MediaMetadata.METADATA_KEY_ARTIST, "artist"); data.putString(MediaMetadata.METADATA_KEY_COMPOSER, "composer"); data.putString(MediaMetadata.METADATA_KEY_ALBUM, "album"); } }