Extracting MediaCompat classes into a new module
Change-Id: I46d0bbceba9b94828eb94aa3728e4ec61a1f2269
diff --git a/buildSrc/studioCompat.gradle b/buildSrc/studioCompat.gradle
index 70ad319..ea6741b 100644
--- a/buildSrc/studioCompat.gradle
+++ b/buildSrc/studioCompat.gradle
@@ -49,6 +49,21 @@
folder : "compat",
moduleName : "support-compat"
],
+ mediacompat : [
+ apiTargets : [
+ new ApiModule("froyo",8),
+ new ApiModule("ics",14),
+ new ApiModule("jellybean-mr2",18),
+ new ApiModule("kitkat",19),
+ new ApiModule("api21",21),
+ new ApiModule("api22",22),
+ new ApiModule("api23",23),
+ new ApiModule("api24", ApiModule.CURRENT)
+ ],
+ dependencies : [":support-annotations", ":support-compat"],
+ folder : "media-compat",
+ moduleName : "support-media-compat"
+ ],
core : [
apiTargets : [
new ApiModule("donut",4),
diff --git a/v4/java/android/support/v4/os/IResultReceiver.aidl b/compat/java/android/support/v4/os/IResultReceiver.aidl
similarity index 100%
rename from v4/java/android/support/v4/os/IResultReceiver.aidl
rename to compat/java/android/support/v4/os/IResultReceiver.aidl
diff --git a/v4/java/android/support/v4/os/ResultReceiver.aidl b/compat/java/android/support/v4/os/ResultReceiver.aidl
similarity index 100%
rename from v4/java/android/support/v4/os/ResultReceiver.aidl
rename to compat/java/android/support/v4/os/ResultReceiver.aidl
diff --git a/v4/java/android/support/v4/os/ResultReceiver.java b/compat/java/android/support/v4/os/ResultReceiver.java
similarity index 97%
rename from v4/java/android/support/v4/os/ResultReceiver.java
rename to compat/java/android/support/v4/os/ResultReceiver.java
index f0dc001..f34d43d 100644
--- a/v4/java/android/support/v4/os/ResultReceiver.java
+++ b/compat/java/android/support/v4/os/ResultReceiver.java
@@ -131,8 +131,8 @@
mReceiver = IResultReceiver.Stub.asInterface(in.readStrongBinder());
}
- public static final Parcelable.Creator<ResultReceiver> CREATOR
- = new Parcelable.Creator<ResultReceiver>() {
+ public static final Creator<ResultReceiver> CREATOR
+ = new Creator<ResultReceiver>() {
public ResultReceiver createFromParcel(Parcel in) {
return new ResultReceiver(in);
}
diff --git a/core-combined/Android.mk b/core-combined/Android.mk
index a267f85..7287bdc 100644
--- a/core-combined/Android.mk
+++ b/core-combined/Android.mk
@@ -27,6 +27,7 @@
LOCAL_SDK_VERSION := $(SUPPORT_CURRENT_SDK_VERSION)
LOCAL_STATIC_JAVA_LIBRARIES := \
android-support-compat \
+ android-support-media-compat \
android-support-core
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_JAR_EXCLUDE_FILES := none
diff --git a/core-combined/build.gradle b/core-combined/build.gradle
index 0e1ac7d..811c56d 100644
--- a/core-combined/build.gradle
+++ b/core-combined/build.gradle
@@ -3,6 +3,7 @@
archivesBaseName = 'support-v4'
dependencies {
compile project(':support-compat')
+ compile project(':support-media-compat')
compile project(':support-core')
}
diff --git a/media-compat/Android.mk b/media-compat/Android.mk
new file mode 100644
index 0000000..f019a74
--- /dev/null
+++ b/media-compat/Android.mk
@@ -0,0 +1,161 @@
+# Copyright (C) 2011 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+LOCAL_PATH := $(call my-dir)
+
+# A helper sub-library that makes direct use of Froyo APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-froyo
+LOCAL_SDK_VERSION := 8
+LOCAL_SRC_FILES := $(call all-java-files-under, froyo)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-annotations android-support-compat
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files := $(LOCAL_SRC_FILES)
+support_module_java_libraries := android-support-annotations android-support-compat
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of Ice Cream Sandwich APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-ics
+LOCAL_SDK_VERSION := 14
+LOCAL_SRC_FILES := $(call all-java-files-under, ics)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-froyo
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of JellyBean MR2 APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-jellybean-mr2
+LOCAL_SDK_VERSION := 18
+LOCAL_SRC_FILES := $(call all-java-files-under, jellybean-mr2)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-ics
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of KitKat APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-kitkat
+LOCAL_SDK_VERSION := 19
+LOCAL_SRC_FILES := $(call all-java-files-under, kitkat)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-jellybean-mr2
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of V20 APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-api20
+LOCAL_SDK_VERSION := 20
+LOCAL_SRC_FILES := $(call all-java-files-under, api20)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-kitkat
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of Lollipop APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-api21
+LOCAL_SDK_VERSION := 21
+LOCAL_SRC_FILES := $(call all-java-files-under, api21)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-api20
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of V22 APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-api22
+LOCAL_SDK_VERSION := 22
+LOCAL_SRC_FILES := $(call all-java-files-under, api22)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-api21
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of V23 APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-api23
+LOCAL_SDK_VERSION := 23
+LOCAL_SRC_FILES := $(call all-java-files-under, api23)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-api22
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# A helper sub-library that makes direct use of V24 APIs.
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-media-compat-api24
+LOCAL_SDK_VERSION := $(SUPPORT_CURRENT_SDK_VERSION)
+LOCAL_SRC_FILES := $(call all-java-files-under, api24)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-media-compat-api23
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+
+# -----------------------------------------------------------------------
+
+# Here is the final static library that apps can link against.
+include $(CLEAR_VARS)
+LOCAL_USE_AAPT2 := true
+LOCAL_MODULE := android-support-media-compat
+LOCAL_SDK_VERSION := 9
+LOCAL_AIDL_INCLUDES := frameworks/support/media-compat/java
+LOCAL_SRC_FILES := $(call all-java-files-under, java) \
+ $(call all-Iaidl-files-under, java)
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
+LOCAL_STATIC_JAVA_LIBRARIES += android-support-media-compat-api24
+LOCAL_SHARED_ANDROID_LIBRARIES := \
+ android-support-compat \
+ android-support-annotations
+LOCAL_JAR_EXCLUDE_FILES := none
+LOCAL_JAVA_LANGUAGE_VERSION := 1.7
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+support_module_src_files += $(LOCAL_SRC_FILES)
+support_module_aidl_includes := $(LOCAL_AIDL_INCLUDES)
+
+# API Check
+# ---------------------------------------------
+support_module := $(LOCAL_MODULE)
+support_module_api_dir := $(LOCAL_PATH)/api
+support_module_java_libraries := $(LOCAL_JAVA_LIBRARIES)
+support_module_java_packages := android.support.v4.*
+include $(SUPPORT_API_CHECK)
diff --git a/media-compat/AndroidManifest.xml b/media-compat/AndroidManifest.xml
new file mode 100644
index 0000000..c971549
--- /dev/null
+++ b/media-compat/AndroidManifest.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2014 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ package="android.support.mediacompat">
+ <uses-sdk android:minSdkVersion="9" tools:overrideLibrary="android.support.mediacompat"/>
+ <application />
+</manifest>
diff --git a/media-compat/api/current.txt b/media-compat/api/current.txt
new file mode 100644
index 0000000..bf6f31e
--- /dev/null
+++ b/media-compat/api/current.txt
@@ -0,0 +1,540 @@
+package android.support.v4.media {
+
+ public final class MediaBrowserCompat {
+ ctor public MediaBrowserCompat(android.content.Context, android.content.ComponentName, android.support.v4.media.MediaBrowserCompat.ConnectionCallback, android.os.Bundle);
+ method public void connect();
+ method public void disconnect();
+ method public android.os.Bundle getExtras();
+ method public void getItem(java.lang.String, android.support.v4.media.MediaBrowserCompat.ItemCallback);
+ method public java.lang.String getRoot();
+ method public android.content.ComponentName getServiceComponent();
+ method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
+ method public boolean isConnected();
+ method public void subscribe(java.lang.String, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
+ method public void subscribe(java.lang.String, android.os.Bundle, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
+ method public void unsubscribe(java.lang.String);
+ method public void unsubscribe(java.lang.String, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
+ field public static final java.lang.String EXTRA_PAGE = "android.media.browse.extra.PAGE";
+ field public static final java.lang.String EXTRA_PAGE_SIZE = "android.media.browse.extra.PAGE_SIZE";
+ }
+
+ public static class MediaBrowserCompat.ConnectionCallback {
+ ctor public MediaBrowserCompat.ConnectionCallback();
+ method public void onConnected();
+ method public void onConnectionFailed();
+ method public void onConnectionSuspended();
+ }
+
+ public static abstract class MediaBrowserCompat.ItemCallback {
+ ctor public MediaBrowserCompat.ItemCallback();
+ method public void onError(java.lang.String);
+ method public void onItemLoaded(android.support.v4.media.MediaBrowserCompat.MediaItem);
+ }
+
+ public static class MediaBrowserCompat.MediaItem implements android.os.Parcelable {
+ ctor public MediaBrowserCompat.MediaItem(android.support.v4.media.MediaDescriptionCompat, int);
+ method public int describeContents();
+ method public android.support.v4.media.MediaDescriptionCompat getDescription();
+ method public int getFlags();
+ method public java.lang.String getMediaId();
+ method public boolean isBrowsable();
+ method public boolean isPlayable();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaBrowserCompat.MediaItem> CREATOR;
+ field public static final int FLAG_BROWSABLE = 1; // 0x1
+ field public static final int FLAG_PLAYABLE = 2; // 0x2
+ }
+
+ public static abstract class MediaBrowserCompat.SubscriptionCallback {
+ ctor public MediaBrowserCompat.SubscriptionCallback();
+ method public void onChildrenLoaded(java.lang.String, java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>);
+ method public void onChildrenLoaded(java.lang.String, java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>, android.os.Bundle);
+ method public void onError(java.lang.String);
+ method public void onError(java.lang.String, android.os.Bundle);
+ }
+
+ public abstract class MediaBrowserServiceCompat extends android.app.Service {
+ ctor public MediaBrowserServiceCompat();
+ method public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
+ method public final android.os.Bundle getBrowserRootHints();
+ method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
+ method public void notifyChildrenChanged(java.lang.String);
+ method public void notifyChildrenChanged(java.lang.String, android.os.Bundle);
+ method public android.os.IBinder onBind(android.content.Intent);
+ method public abstract android.support.v4.media.MediaBrowserServiceCompat.BrowserRoot onGetRoot(java.lang.String, int, android.os.Bundle);
+ method public abstract void onLoadChildren(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>>);
+ method public void onLoadChildren(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>>, android.os.Bundle);
+ method public void onLoadItem(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<android.support.v4.media.MediaBrowserCompat.MediaItem>);
+ method public void setSessionToken(android.support.v4.media.session.MediaSessionCompat.Token);
+ field public static final java.lang.String SERVICE_INTERFACE = "android.media.browse.MediaBrowserService";
+ }
+
+ public static final class MediaBrowserServiceCompat.BrowserRoot {
+ ctor public MediaBrowserServiceCompat.BrowserRoot(java.lang.String, android.os.Bundle);
+ method public android.os.Bundle getExtras();
+ method public java.lang.String getRootId();
+ field public static final java.lang.String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE";
+ field public static final java.lang.String EXTRA_RECENT = "android.service.media.extra.RECENT";
+ field public static final java.lang.String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED";
+ }
+
+ public static class MediaBrowserServiceCompat.Result {
+ method public void detach();
+ method public void sendResult(T);
+ }
+
+ public final class MediaDescriptionCompat implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.support.v4.media.MediaDescriptionCompat fromMediaDescription(java.lang.Object);
+ method public java.lang.CharSequence getDescription();
+ method public android.os.Bundle getExtras();
+ method public android.graphics.Bitmap getIconBitmap();
+ method public android.net.Uri getIconUri();
+ method public java.lang.Object getMediaDescription();
+ method public java.lang.String getMediaId();
+ method public android.net.Uri getMediaUri();
+ method public java.lang.CharSequence getSubtitle();
+ method public java.lang.CharSequence getTitle();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaDescriptionCompat> CREATOR;
+ }
+
+ public static final class MediaDescriptionCompat.Builder {
+ ctor public MediaDescriptionCompat.Builder();
+ method public android.support.v4.media.MediaDescriptionCompat build();
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setDescription(java.lang.CharSequence);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setExtras(android.os.Bundle);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setIconBitmap(android.graphics.Bitmap);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setIconUri(android.net.Uri);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setMediaId(java.lang.String);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setMediaUri(android.net.Uri);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setSubtitle(java.lang.CharSequence);
+ method public android.support.v4.media.MediaDescriptionCompat.Builder setTitle(java.lang.CharSequence);
+ }
+
+ public final class MediaMetadataCompat implements android.os.Parcelable {
+ method public boolean containsKey(java.lang.String);
+ method public int describeContents();
+ method public static android.support.v4.media.MediaMetadataCompat fromMediaMetadata(java.lang.Object);
+ method public android.graphics.Bitmap getBitmap(java.lang.String);
+ method public android.os.Bundle getBundle();
+ method public android.support.v4.media.MediaDescriptionCompat getDescription();
+ method public long getLong(java.lang.String);
+ method public java.lang.Object getMediaMetadata();
+ method public android.support.v4.media.RatingCompat getRating(java.lang.String);
+ method public java.lang.String getString(java.lang.String);
+ method public java.lang.CharSequence getText(java.lang.String);
+ method public java.util.Set<java.lang.String> keySet();
+ method public int size();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaMetadataCompat> CREATOR;
+ field public static final java.lang.String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM";
+ field public static final java.lang.String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART";
+ field public static final java.lang.String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST";
+ field public static final java.lang.String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI";
+ field public static final java.lang.String METADATA_KEY_ART = "android.media.metadata.ART";
+ field public static final java.lang.String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST";
+ field public static final java.lang.String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI";
+ field public static final java.lang.String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR";
+ field public static final java.lang.String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION";
+ field public static final java.lang.String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER";
+ field public static final java.lang.String METADATA_KEY_DATE = "android.media.metadata.DATE";
+ field public static final java.lang.String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER";
+ field public static final java.lang.String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION";
+ field public static final java.lang.String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON";
+ field public static final java.lang.String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI";
+ field public static final java.lang.String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE";
+ field public static final java.lang.String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE";
+ field public static final java.lang.String METADATA_KEY_DURATION = "android.media.metadata.DURATION";
+ field public static final java.lang.String METADATA_KEY_GENRE = "android.media.metadata.GENRE";
+ field public static final java.lang.String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID";
+ field public static final java.lang.String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS";
+ field public static final java.lang.String METADATA_KEY_RATING = "android.media.metadata.RATING";
+ field public static final java.lang.String METADATA_KEY_TITLE = "android.media.metadata.TITLE";
+ field public static final java.lang.String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER";
+ field public static final java.lang.String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING";
+ field public static final java.lang.String METADATA_KEY_WRITER = "android.media.metadata.WRITER";
+ field public static final java.lang.String METADATA_KEY_YEAR = "android.media.metadata.YEAR";
+ }
+
+ public static final class MediaMetadataCompat.Builder {
+ ctor public MediaMetadataCompat.Builder();
+ ctor public MediaMetadataCompat.Builder(android.support.v4.media.MediaMetadataCompat);
+ method public android.support.v4.media.MediaMetadataCompat build();
+ method public android.support.v4.media.MediaMetadataCompat.Builder putBitmap(java.lang.String, android.graphics.Bitmap);
+ method public android.support.v4.media.MediaMetadataCompat.Builder putLong(java.lang.String, long);
+ method public android.support.v4.media.MediaMetadataCompat.Builder putRating(java.lang.String, android.support.v4.media.RatingCompat);
+ method public android.support.v4.media.MediaMetadataCompat.Builder putString(java.lang.String, java.lang.String);
+ method public android.support.v4.media.MediaMetadataCompat.Builder putText(java.lang.String, java.lang.CharSequence);
+ }
+
+ public final class RatingCompat implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.support.v4.media.RatingCompat fromRating(java.lang.Object);
+ method public float getPercentRating();
+ method public java.lang.Object getRating();
+ method public int getRatingStyle();
+ method public float getStarRating();
+ method public boolean hasHeart();
+ method public boolean isRated();
+ method public boolean isThumbUp();
+ method public static android.support.v4.media.RatingCompat newHeartRating(boolean);
+ method public static android.support.v4.media.RatingCompat newPercentageRating(float);
+ method public static android.support.v4.media.RatingCompat newStarRating(int, float);
+ method public static android.support.v4.media.RatingCompat newThumbRating(boolean);
+ method public static android.support.v4.media.RatingCompat newUnratedRating(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.RatingCompat> CREATOR;
+ field public static final int RATING_3_STARS = 3; // 0x3
+ field public static final int RATING_4_STARS = 4; // 0x4
+ field public static final int RATING_5_STARS = 5; // 0x5
+ field public static final int RATING_HEART = 1; // 0x1
+ field public static final int RATING_NONE = 0; // 0x0
+ field public static final int RATING_PERCENTAGE = 6; // 0x6
+ field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
+ }
+
+ public abstract class TransportController {
+ ctor public TransportController();
+ method public abstract int getBufferPercentage();
+ method public abstract long getCurrentPosition();
+ method public abstract long getDuration();
+ method public abstract int getTransportControlFlags();
+ method public abstract boolean isPlaying();
+ method public abstract void pausePlaying();
+ method public abstract void registerStateListener(android.support.v4.media.TransportStateListener);
+ method public abstract void seekTo(long);
+ method public abstract void startPlaying();
+ method public abstract void stopPlaying();
+ method public abstract void unregisterStateListener(android.support.v4.media.TransportStateListener);
+ }
+
+ public class TransportMediator extends android.support.v4.media.TransportController {
+ ctor public TransportMediator(android.app.Activity, android.support.v4.media.TransportPerformer);
+ ctor public TransportMediator(android.view.View, android.support.v4.media.TransportPerformer);
+ method public void destroy();
+ method public boolean dispatchKeyEvent(android.view.KeyEvent);
+ method public int getBufferPercentage();
+ method public long getCurrentPosition();
+ method public long getDuration();
+ method public java.lang.Object getRemoteControlClient();
+ method public int getTransportControlFlags();
+ method public boolean isPlaying();
+ method public void pausePlaying();
+ method public void refreshState();
+ method public void registerStateListener(android.support.v4.media.TransportStateListener);
+ method public void seekTo(long);
+ method public void startPlaying();
+ method public void stopPlaying();
+ method public void unregisterStateListener(android.support.v4.media.TransportStateListener);
+ field public static final int FLAG_KEY_MEDIA_FAST_FORWARD = 64; // 0x40
+ field public static final int FLAG_KEY_MEDIA_NEXT = 128; // 0x80
+ field public static final int FLAG_KEY_MEDIA_PAUSE = 16; // 0x10
+ field public static final int FLAG_KEY_MEDIA_PLAY = 4; // 0x4
+ field public static final int FLAG_KEY_MEDIA_PLAY_PAUSE = 8; // 0x8
+ field public static final int FLAG_KEY_MEDIA_PREVIOUS = 1; // 0x1
+ field public static final int FLAG_KEY_MEDIA_REWIND = 2; // 0x2
+ field public static final int FLAG_KEY_MEDIA_STOP = 32; // 0x20
+ field public static final int KEYCODE_MEDIA_PAUSE = 127; // 0x7f
+ field public static final int KEYCODE_MEDIA_PLAY = 126; // 0x7e
+ field public static final int KEYCODE_MEDIA_RECORD = 130; // 0x82
+ }
+
+ public abstract class TransportPerformer {
+ ctor public TransportPerformer();
+ method public void onAudioFocusChange(int);
+ method public int onGetBufferPercentage();
+ method public abstract long onGetCurrentPosition();
+ method public abstract long onGetDuration();
+ method public int onGetTransportControlFlags();
+ method public abstract boolean onIsPlaying();
+ method public boolean onMediaButtonDown(int, android.view.KeyEvent);
+ method public boolean onMediaButtonUp(int, android.view.KeyEvent);
+ method public abstract void onPause();
+ method public abstract void onSeekTo(long);
+ method public abstract void onStart();
+ method public abstract void onStop();
+ }
+
+ public class TransportStateListener {
+ ctor public TransportStateListener();
+ method public void onPlayingChanged(android.support.v4.media.TransportController);
+ method public void onTransportControlsChanged(android.support.v4.media.TransportController);
+ }
+
+ public abstract class VolumeProviderCompat {
+ ctor public VolumeProviderCompat(int, int, int);
+ method public final int getCurrentVolume();
+ method public final int getMaxVolume();
+ method public final int getVolumeControl();
+ method public java.lang.Object getVolumeProvider();
+ method public void onAdjustVolume(int);
+ method public void onSetVolumeTo(int);
+ method public void setCallback(android.support.v4.media.VolumeProviderCompat.Callback);
+ method public final void setCurrentVolume(int);
+ field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2
+ field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0
+ field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1
+ }
+
+ public static abstract class VolumeProviderCompat.Callback {
+ ctor public VolumeProviderCompat.Callback();
+ method public abstract void onVolumeChanged(android.support.v4.media.VolumeProviderCompat);
+ }
+
+}
+
+package android.support.v4.media.session {
+
+ public class MediaButtonReceiver extends android.content.BroadcastReceiver {
+ ctor public MediaButtonReceiver();
+ method public static android.view.KeyEvent handleIntent(android.support.v4.media.session.MediaSessionCompat, android.content.Intent);
+ method public void onReceive(android.content.Context, android.content.Intent);
+ }
+
+ public final class MediaControllerCompat {
+ ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat);
+ ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat.Token) throws android.os.RemoteException;
+ method public void adjustVolume(int, int);
+ method public boolean dispatchMediaButtonEvent(android.view.KeyEvent);
+ method public android.os.Bundle getExtras();
+ method public long getFlags();
+ method public java.lang.Object getMediaController();
+ method public android.support.v4.media.MediaMetadataCompat getMetadata();
+ method public java.lang.String getPackageName();
+ method public android.support.v4.media.session.MediaControllerCompat.PlaybackInfo getPlaybackInfo();
+ method public android.support.v4.media.session.PlaybackStateCompat getPlaybackState();
+ method public java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem> getQueue();
+ method public java.lang.CharSequence getQueueTitle();
+ method public int getRatingType();
+ method public android.app.PendingIntent getSessionActivity();
+ method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
+ method public android.support.v4.media.session.MediaControllerCompat.TransportControls getTransportControls();
+ method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
+ method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback, android.os.Handler);
+ method public void sendCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
+ method public void setVolumeTo(int, int);
+ method public void unregisterCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
+ }
+
+ public static abstract class MediaControllerCompat.Callback implements android.os.IBinder.DeathRecipient {
+ ctor public MediaControllerCompat.Callback();
+ method public void binderDied();
+ method public void onAudioInfoChanged(android.support.v4.media.session.MediaControllerCompat.PlaybackInfo);
+ method public void onExtrasChanged(android.os.Bundle);
+ method public void onMetadataChanged(android.support.v4.media.MediaMetadataCompat);
+ method public void onPlaybackStateChanged(android.support.v4.media.session.PlaybackStateCompat);
+ method public void onQueueChanged(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
+ method public void onQueueTitleChanged(java.lang.CharSequence);
+ method public void onSessionDestroyed();
+ method public void onSessionEvent(java.lang.String, android.os.Bundle);
+ }
+
+ public static final class MediaControllerCompat.PlaybackInfo {
+ method public int getAudioStream();
+ method public int getCurrentVolume();
+ method public int getMaxVolume();
+ method public int getPlaybackType();
+ method public int getVolumeControl();
+ field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1
+ field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2
+ }
+
+ public static abstract class MediaControllerCompat.TransportControls {
+ method public abstract void fastForward();
+ method public abstract void pause();
+ method public abstract void play();
+ method public abstract void playFromMediaId(java.lang.String, android.os.Bundle);
+ method public abstract void playFromSearch(java.lang.String, android.os.Bundle);
+ method public abstract void playFromUri(android.net.Uri, android.os.Bundle);
+ method public abstract void prepare();
+ method public abstract void prepareFromMediaId(java.lang.String, android.os.Bundle);
+ method public abstract void prepareFromSearch(java.lang.String, android.os.Bundle);
+ method public abstract void prepareFromUri(android.net.Uri, android.os.Bundle);
+ method public abstract void rewind();
+ method public abstract void seekTo(long);
+ method public abstract void sendCustomAction(android.support.v4.media.session.PlaybackStateCompat.CustomAction, android.os.Bundle);
+ method public abstract void sendCustomAction(java.lang.String, android.os.Bundle);
+ method public abstract void setRating(android.support.v4.media.RatingCompat);
+ method public abstract void skipToNext();
+ method public abstract void skipToPrevious();
+ method public abstract void skipToQueueItem(long);
+ method public abstract void stop();
+ }
+
+ public class MediaSessionCompat {
+ ctor public MediaSessionCompat(android.content.Context, java.lang.String);
+ ctor public MediaSessionCompat(android.content.Context, java.lang.String, android.content.ComponentName, android.app.PendingIntent);
+ method public void addOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
+ method public android.support.v4.media.session.MediaControllerCompat getController();
+ method public java.lang.Object getMediaSession();
+ method public java.lang.Object getRemoteControlClient();
+ method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
+ method public boolean isActive();
+ method public static android.support.v4.media.session.MediaSessionCompat obtain(android.content.Context, java.lang.Object);
+ method public void release();
+ method public void removeOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
+ method public void sendSessionEvent(java.lang.String, android.os.Bundle);
+ method public void setActive(boolean);
+ method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback);
+ method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback, android.os.Handler);
+ method public void setExtras(android.os.Bundle);
+ method public void setFlags(int);
+ method public void setMediaButtonReceiver(android.app.PendingIntent);
+ method public void setMetadata(android.support.v4.media.MediaMetadataCompat);
+ method public void setPlaybackState(android.support.v4.media.session.PlaybackStateCompat);
+ method public void setPlaybackToLocal(int);
+ method public void setPlaybackToRemote(android.support.v4.media.VolumeProviderCompat);
+ method public void setQueue(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
+ method public void setQueueTitle(java.lang.CharSequence);
+ method public void setRatingType(int);
+ method public void setSessionActivity(android.app.PendingIntent);
+ field public static final int FLAG_HANDLES_MEDIA_BUTTONS = 1; // 0x1
+ field public static final int FLAG_HANDLES_TRANSPORT_CONTROLS = 2; // 0x2
+ }
+
+ public static abstract class MediaSessionCompat.Callback {
+ ctor public MediaSessionCompat.Callback();
+ method public void onCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
+ method public void onCustomAction(java.lang.String, android.os.Bundle);
+ method public void onFastForward();
+ method public boolean onMediaButtonEvent(android.content.Intent);
+ method public void onPause();
+ method public void onPlay();
+ method public void onPlayFromMediaId(java.lang.String, android.os.Bundle);
+ method public void onPlayFromSearch(java.lang.String, android.os.Bundle);
+ method public void onPlayFromUri(android.net.Uri, android.os.Bundle);
+ method public void onPrepare();
+ method public void onPrepareFromMediaId(java.lang.String, android.os.Bundle);
+ method public void onPrepareFromSearch(java.lang.String, android.os.Bundle);
+ method public void onPrepareFromUri(android.net.Uri, android.os.Bundle);
+ method public void onRewind();
+ method public void onSeekTo(long);
+ method public void onSetRating(android.support.v4.media.RatingCompat);
+ method public void onSkipToNext();
+ method public void onSkipToPrevious();
+ method public void onSkipToQueueItem(long);
+ method public void onStop();
+ }
+
+ public static abstract interface MediaSessionCompat.OnActiveChangeListener {
+ method public abstract void onActiveChanged();
+ }
+
+ public static final class MediaSessionCompat.QueueItem implements android.os.Parcelable {
+ ctor public MediaSessionCompat.QueueItem(android.support.v4.media.MediaDescriptionCompat, long);
+ method public int describeContents();
+ method public android.support.v4.media.MediaDescriptionCompat getDescription();
+ method public long getQueueId();
+ method public java.lang.Object getQueueItem();
+ method public static android.support.v4.media.session.MediaSessionCompat.QueueItem obtain(java.lang.Object);
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.QueueItem> CREATOR;
+ field public static final int UNKNOWN_ID = -1; // 0xffffffff
+ }
+
+ public static final class MediaSessionCompat.Token implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.support.v4.media.session.MediaSessionCompat.Token fromToken(java.lang.Object);
+ method public java.lang.Object getToken();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.Token> CREATOR;
+ }
+
+ public class ParcelableVolumeInfo implements android.os.Parcelable {
+ ctor public ParcelableVolumeInfo(int, int, int, int, int);
+ ctor public ParcelableVolumeInfo(android.os.Parcel);
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.session.ParcelableVolumeInfo> CREATOR;
+ field public int audioStream;
+ field public int controlType;
+ field public int currentVolume;
+ field public int maxVolume;
+ field public int volumeType;
+ }
+
+ public final class PlaybackStateCompat implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.support.v4.media.session.PlaybackStateCompat fromPlaybackState(java.lang.Object);
+ method public long getActions();
+ method public long getActiveQueueItemId();
+ method public long getBufferedPosition();
+ method public java.util.List<android.support.v4.media.session.PlaybackStateCompat.CustomAction> getCustomActions();
+ method public java.lang.CharSequence getErrorMessage();
+ method public android.os.Bundle getExtras();
+ method public long getLastPositionUpdateTime();
+ method public float getPlaybackSpeed();
+ method public java.lang.Object getPlaybackState();
+ method public long getPosition();
+ method public int getState();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
+ field public static final long ACTION_PAUSE = 2L; // 0x2L
+ field public static final long ACTION_PLAY = 4L; // 0x4L
+ field public static final long ACTION_PLAY_FROM_MEDIA_ID = 1024L; // 0x400L
+ field public static final long ACTION_PLAY_FROM_SEARCH = 2048L; // 0x800L
+ field public static final long ACTION_PLAY_FROM_URI = 8192L; // 0x2000L
+ field public static final long ACTION_PLAY_PAUSE = 512L; // 0x200L
+ field public static final long ACTION_PREPARE = 16384L; // 0x4000L
+ field public static final long ACTION_PREPARE_FROM_MEDIA_ID = 32768L; // 0x8000L
+ field public static final long ACTION_PREPARE_FROM_SEARCH = 65536L; // 0x10000L
+ field public static final long ACTION_PREPARE_FROM_URI = 131072L; // 0x20000L
+ field public static final long ACTION_REWIND = 8L; // 0x8L
+ field public static final long ACTION_SEEK_TO = 256L; // 0x100L
+ field public static final long ACTION_SET_RATING = 128L; // 0x80L
+ field public static final long ACTION_SKIP_TO_NEXT = 32L; // 0x20L
+ field public static final long ACTION_SKIP_TO_PREVIOUS = 16L; // 0x10L
+ field public static final long ACTION_SKIP_TO_QUEUE_ITEM = 4096L; // 0x1000L
+ field public static final long ACTION_STOP = 1L; // 0x1L
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat> CREATOR;
+ field public static final long PLAYBACK_POSITION_UNKNOWN = -1L; // 0xffffffffffffffffL
+ field public static final int STATE_BUFFERING = 6; // 0x6
+ field public static final int STATE_CONNECTING = 8; // 0x8
+ field public static final int STATE_ERROR = 7; // 0x7
+ field public static final int STATE_FAST_FORWARDING = 4; // 0x4
+ field public static final int STATE_NONE = 0; // 0x0
+ field public static final int STATE_PAUSED = 2; // 0x2
+ field public static final int STATE_PLAYING = 3; // 0x3
+ field public static final int STATE_REWINDING = 5; // 0x5
+ field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa
+ field public static final int STATE_SKIPPING_TO_PREVIOUS = 9; // 0x9
+ field public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; // 0xb
+ field public static final int STATE_STOPPED = 1; // 0x1
+ }
+
+ public static final class PlaybackStateCompat.Builder {
+ ctor public PlaybackStateCompat.Builder();
+ ctor public PlaybackStateCompat.Builder(android.support.v4.media.session.PlaybackStateCompat);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder addCustomAction(java.lang.String, java.lang.String, int);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder addCustomAction(android.support.v4.media.session.PlaybackStateCompat.CustomAction);
+ method public android.support.v4.media.session.PlaybackStateCompat build();
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setActions(long);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setActiveQueueItemId(long);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setBufferedPosition(long);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setErrorMessage(java.lang.CharSequence);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setExtras(android.os.Bundle);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float);
+ method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float, long);
+ }
+
+ public static final class PlaybackStateCompat.CustomAction implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.support.v4.media.session.PlaybackStateCompat.CustomAction fromCustomAction(java.lang.Object);
+ method public java.lang.String getAction();
+ method public java.lang.Object getCustomAction();
+ method public android.os.Bundle getExtras();
+ method public int getIcon();
+ method public java.lang.CharSequence getName();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat.CustomAction> CREATOR;
+ }
+
+ public static final class PlaybackStateCompat.CustomAction.Builder {
+ ctor public PlaybackStateCompat.CustomAction.Builder(java.lang.String, java.lang.CharSequence, int);
+ method public android.support.v4.media.session.PlaybackStateCompat.CustomAction build();
+ method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder setExtras(android.os.Bundle);
+ }
+
+}
+
diff --git a/media-compat/api/removed.txt b/media-compat/api/removed.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/media-compat/api/removed.txt
diff --git a/v4/api21/android/support/v4/media/MediaBrowserCompatApi21.java b/media-compat/api21/android/support/v4/media/MediaBrowserCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/MediaBrowserCompatApi21.java
rename to media-compat/api21/android/support/v4/media/MediaBrowserCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/MediaBrowserServiceCompatApi21.java b/media-compat/api21/android/support/v4/media/MediaBrowserServiceCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/MediaBrowserServiceCompatApi21.java
rename to media-compat/api21/android/support/v4/media/MediaBrowserServiceCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/MediaDescriptionCompatApi21.java b/media-compat/api21/android/support/v4/media/MediaDescriptionCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/MediaDescriptionCompatApi21.java
rename to media-compat/api21/android/support/v4/media/MediaDescriptionCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/MediaMetadataCompatApi21.java b/media-compat/api21/android/support/v4/media/MediaMetadataCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/MediaMetadataCompatApi21.java
rename to media-compat/api21/android/support/v4/media/MediaMetadataCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/ParceledListSliceAdapterApi21.java b/media-compat/api21/android/support/v4/media/ParceledListSliceAdapterApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/ParceledListSliceAdapterApi21.java
rename to media-compat/api21/android/support/v4/media/ParceledListSliceAdapterApi21.java
diff --git a/v4/api21/android/support/v4/media/RatingCompatApi21.java b/media-compat/api21/android/support/v4/media/RatingCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/RatingCompatApi21.java
rename to media-compat/api21/android/support/v4/media/RatingCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/VolumeProviderCompatApi21.java b/media-compat/api21/android/support/v4/media/VolumeProviderCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/VolumeProviderCompatApi21.java
rename to media-compat/api21/android/support/v4/media/VolumeProviderCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/session/MediaControllerCompatApi21.java b/media-compat/api21/android/support/v4/media/session/MediaControllerCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/session/MediaControllerCompatApi21.java
rename to media-compat/api21/android/support/v4/media/session/MediaControllerCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/session/MediaSessionCompatApi21.java b/media-compat/api21/android/support/v4/media/session/MediaSessionCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/session/MediaSessionCompatApi21.java
rename to media-compat/api21/android/support/v4/media/session/MediaSessionCompatApi21.java
diff --git a/v4/api21/android/support/v4/media/session/PlaybackStateCompatApi21.java b/media-compat/api21/android/support/v4/media/session/PlaybackStateCompatApi21.java
similarity index 100%
rename from v4/api21/android/support/v4/media/session/PlaybackStateCompatApi21.java
rename to media-compat/api21/android/support/v4/media/session/PlaybackStateCompatApi21.java
diff --git a/v4/api22/android/support/v4/media/session/MediaSessionCompatApi22.java b/media-compat/api22/android/support/v4/media/session/MediaSessionCompatApi22.java
similarity index 100%
rename from v4/api22/android/support/v4/media/session/MediaSessionCompatApi22.java
rename to media-compat/api22/android/support/v4/media/session/MediaSessionCompatApi22.java
diff --git a/v4/api22/android/support/v4/media/session/PlaybackStateCompatApi22.java b/media-compat/api22/android/support/v4/media/session/PlaybackStateCompatApi22.java
similarity index 100%
rename from v4/api22/android/support/v4/media/session/PlaybackStateCompatApi22.java
rename to media-compat/api22/android/support/v4/media/session/PlaybackStateCompatApi22.java
diff --git a/v4/api23/android/support/v4/media/MediaBrowserCompatApi23.java b/media-compat/api23/android/support/v4/media/MediaBrowserCompatApi23.java
similarity index 100%
rename from v4/api23/android/support/v4/media/MediaBrowserCompatApi23.java
rename to media-compat/api23/android/support/v4/media/MediaBrowserCompatApi23.java
diff --git a/v4/api23/android/support/v4/media/MediaBrowserServiceCompatApi23.java b/media-compat/api23/android/support/v4/media/MediaBrowserServiceCompatApi23.java
similarity index 100%
rename from v4/api23/android/support/v4/media/MediaBrowserServiceCompatApi23.java
rename to media-compat/api23/android/support/v4/media/MediaBrowserServiceCompatApi23.java
diff --git a/v4/api23/android/support/v4/media/MediaDescriptionCompatApi23.java b/media-compat/api23/android/support/v4/media/MediaDescriptionCompatApi23.java
similarity index 100%
rename from v4/api23/android/support/v4/media/MediaDescriptionCompatApi23.java
rename to media-compat/api23/android/support/v4/media/MediaDescriptionCompatApi23.java
diff --git a/v4/api23/android/support/v4/media/session/MediaControllerCompatApi23.java b/media-compat/api23/android/support/v4/media/session/MediaControllerCompatApi23.java
similarity index 100%
rename from v4/api23/android/support/v4/media/session/MediaControllerCompatApi23.java
rename to media-compat/api23/android/support/v4/media/session/MediaControllerCompatApi23.java
diff --git a/v4/api23/android/support/v4/media/session/MediaSessionCompatApi23.java b/media-compat/api23/android/support/v4/media/session/MediaSessionCompatApi23.java
similarity index 100%
rename from v4/api23/android/support/v4/media/session/MediaSessionCompatApi23.java
rename to media-compat/api23/android/support/v4/media/session/MediaSessionCompatApi23.java
diff --git a/v4/api24/android/support/v4/media/MediaBrowserCompatApi24.java b/media-compat/api24/android/support/v4/media/MediaBrowserCompatApi24.java
similarity index 100%
rename from v4/api24/android/support/v4/media/MediaBrowserCompatApi24.java
rename to media-compat/api24/android/support/v4/media/MediaBrowserCompatApi24.java
diff --git a/v4/api24/android/support/v4/media/MediaBrowserServiceCompatApi24.java b/media-compat/api24/android/support/v4/media/MediaBrowserServiceCompatApi24.java
similarity index 100%
rename from v4/api24/android/support/v4/media/MediaBrowserServiceCompatApi24.java
rename to media-compat/api24/android/support/v4/media/MediaBrowserServiceCompatApi24.java
diff --git a/v4/api24/android/support/v4/media/session/MediaControllerCompatApi24.java b/media-compat/api24/android/support/v4/media/session/MediaControllerCompatApi24.java
similarity index 100%
rename from v4/api24/android/support/v4/media/session/MediaControllerCompatApi24.java
rename to media-compat/api24/android/support/v4/media/session/MediaControllerCompatApi24.java
diff --git a/v4/api24/android/support/v4/media/session/MediaSessionCompatApi24.java b/media-compat/api24/android/support/v4/media/session/MediaSessionCompatApi24.java
similarity index 100%
rename from v4/api24/android/support/v4/media/session/MediaSessionCompatApi24.java
rename to media-compat/api24/android/support/v4/media/session/MediaSessionCompatApi24.java
diff --git a/media-compat/build.gradle b/media-compat/build.gradle
new file mode 100644
index 0000000..8bd6a62
--- /dev/null
+++ b/media-compat/build.gradle
@@ -0,0 +1,121 @@
+apply plugin: 'com.android.library'
+archivesBaseName = 'support-media-compat'
+
+
+createApiSourceSets(project, gradle.ext.studioCompat.modules.core.apiTargets)
+dependencies {
+ compile project(':support-compat')
+ androidTestCompile ('com.android.support.test:runner:0.4.1') {
+ exclude module: 'support-annotations'
+ }
+ androidTestCompile ('com.android.support.test.espresso:espresso-core:2.2.1') {
+ exclude module: 'support-annotations'
+ }
+ androidTestCompile 'org.mockito:mockito-core:1.9.5'
+ androidTestCompile 'com.google.dexmaker:dexmaker:1.2'
+ androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'
+}
+
+sourceCompatibility = JavaVersion.VERSION_1_7
+targetCompatibility = JavaVersion.VERSION_1_7
+setApiModuleDependencies(project, dependencies, gradle.ext.studioCompat.modules.core.dependencies)
+
+android {
+ compileSdkVersion 9
+
+ defaultConfig {
+ minSdkVersion 9
+ // TODO: get target from branch
+ //targetSdkVersion 19
+ }
+
+ sourceSets {
+ main.manifest.srcFile 'AndroidManifest.xml'
+ main.java.srcDirs = ['java']
+ main.aidl.srcDirs = ['java']
+ }
+
+ lintOptions {
+ // TODO: fix errors and reenable.
+ abortOnError false
+ }
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_7
+ targetCompatibility JavaVersion.VERSION_1_7
+ }
+}
+
+android.libraryVariants.all { variant ->
+ def name = variant.buildType.name
+
+ if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) {
+ return; // Skip debug builds.
+ }
+ def suffix = name.capitalize()
+
+ def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){
+ dependsOn variant.javaCompile
+ from variant.javaCompile.destinationDir
+ from 'LICENSE.txt'
+ }
+ def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) {
+ source android.sourceSets.main.java
+ classpath = files(variant.javaCompile.classpath.files) + files(
+ "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar")
+ }
+
+ def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) {
+ classifier = 'javadoc'
+ from 'build/docs/javadoc'
+ }
+
+ def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) {
+ classifier = 'sources'
+ from android.sourceSets.main.java.srcDirs
+ exclude('android/content/pm/**')
+ exclude('android/service/media/**')
+ }
+
+ project.ext.allSS.each { ss ->
+ javadocTask.source ss.java
+ sourcesJarTask.from ss.java.srcDirs
+ }
+
+ artifacts.add('archives', javadocJarTask);
+ artifacts.add('archives', sourcesJarTask);
+}
+
+uploadArchives {
+ repositories {
+ mavenDeployer {
+ repository(url: uri(rootProject.ext.supportRepoOut)) {
+ }
+
+ pom.project {
+ name 'Android Support Library v4'
+ description "The Support Library is a static library that you can add to your Android application in order to use APIs that are either not available for older platform versions or utility APIs that aren't a part of the framework APIs. Compatible on devices running API 4 or later."
+ url 'http://developer.android.com/tools/extras/support-library.html'
+ inceptionYear '2011'
+
+ licenses {
+ license {
+ name 'The Apache Software License, Version 2.0'
+ url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
+ distribution 'repo'
+ }
+ }
+
+ scm {
+ url "http://source.android.com"
+ connection "scm:git:https://android.googlesource.com/platform/frameworks/support"
+ }
+ developers {
+ developer {
+ name 'The Android Open Source Project'
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/v4/froyo/android/support/v4/media/session/MediaSessionCompatApi8.java b/media-compat/froyo/android/support/v4/media/session/MediaSessionCompatApi8.java
similarity index 100%
rename from v4/froyo/android/support/v4/media/session/MediaSessionCompatApi8.java
rename to media-compat/froyo/android/support/v4/media/session/MediaSessionCompatApi8.java
diff --git a/v4/ics/android/support/v4/media/session/MediaSessionCompatApi14.java b/media-compat/ics/android/support/v4/media/session/MediaSessionCompatApi14.java
similarity index 100%
rename from v4/ics/android/support/v4/media/session/MediaSessionCompatApi14.java
rename to media-compat/ics/android/support/v4/media/session/MediaSessionCompatApi14.java
diff --git a/v4/java/android/support/v4/media/MediaBrowserCompat.java b/media-compat/java/android/support/v4/media/MediaBrowserCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaBrowserCompat.java
rename to media-compat/java/android/support/v4/media/MediaBrowserCompat.java
diff --git a/v4/java/android/support/v4/media/MediaBrowserCompatUtils.java b/media-compat/java/android/support/v4/media/MediaBrowserCompatUtils.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaBrowserCompatUtils.java
rename to media-compat/java/android/support/v4/media/MediaBrowserCompatUtils.java
diff --git a/v4/java/android/support/v4/media/MediaBrowserProtocol.java b/media-compat/java/android/support/v4/media/MediaBrowserProtocol.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaBrowserProtocol.java
rename to media-compat/java/android/support/v4/media/MediaBrowserProtocol.java
diff --git a/v4/java/android/support/v4/media/MediaBrowserServiceCompat.java b/media-compat/java/android/support/v4/media/MediaBrowserServiceCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaBrowserServiceCompat.java
rename to media-compat/java/android/support/v4/media/MediaBrowserServiceCompat.java
diff --git a/v4/java/android/support/v4/media/MediaDescriptionCompat.java b/media-compat/java/android/support/v4/media/MediaDescriptionCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaDescriptionCompat.java
rename to media-compat/java/android/support/v4/media/MediaDescriptionCompat.java
diff --git a/v4/java/android/support/v4/media/MediaMetadataCompat.aidl b/media-compat/java/android/support/v4/media/MediaMetadataCompat.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/MediaMetadataCompat.aidl
rename to media-compat/java/android/support/v4/media/MediaMetadataCompat.aidl
diff --git a/v4/java/android/support/v4/media/MediaMetadataCompat.java b/media-compat/java/android/support/v4/media/MediaMetadataCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/MediaMetadataCompat.java
rename to media-compat/java/android/support/v4/media/MediaMetadataCompat.java
diff --git a/v4/java/android/support/v4/media/RatingCompat.aidl b/media-compat/java/android/support/v4/media/RatingCompat.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/RatingCompat.aidl
rename to media-compat/java/android/support/v4/media/RatingCompat.aidl
diff --git a/v4/java/android/support/v4/media/RatingCompat.java b/media-compat/java/android/support/v4/media/RatingCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/RatingCompat.java
rename to media-compat/java/android/support/v4/media/RatingCompat.java
diff --git a/v4/java/android/support/v4/media/TransportController.java b/media-compat/java/android/support/v4/media/TransportController.java
similarity index 100%
rename from v4/java/android/support/v4/media/TransportController.java
rename to media-compat/java/android/support/v4/media/TransportController.java
diff --git a/v4/java/android/support/v4/media/TransportMediator.java b/media-compat/java/android/support/v4/media/TransportMediator.java
similarity index 100%
rename from v4/java/android/support/v4/media/TransportMediator.java
rename to media-compat/java/android/support/v4/media/TransportMediator.java
diff --git a/v4/java/android/support/v4/media/TransportPerformer.java b/media-compat/java/android/support/v4/media/TransportPerformer.java
similarity index 100%
rename from v4/java/android/support/v4/media/TransportPerformer.java
rename to media-compat/java/android/support/v4/media/TransportPerformer.java
diff --git a/v4/java/android/support/v4/media/TransportStateListener.java b/media-compat/java/android/support/v4/media/TransportStateListener.java
similarity index 100%
rename from v4/java/android/support/v4/media/TransportStateListener.java
rename to media-compat/java/android/support/v4/media/TransportStateListener.java
diff --git a/v4/java/android/support/v4/media/VolumeProviderCompat.java b/media-compat/java/android/support/v4/media/VolumeProviderCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/VolumeProviderCompat.java
rename to media-compat/java/android/support/v4/media/VolumeProviderCompat.java
diff --git a/v4/java/android/support/v4/media/session/IMediaControllerCallback.aidl b/media-compat/java/android/support/v4/media/session/IMediaControllerCallback.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/session/IMediaControllerCallback.aidl
rename to media-compat/java/android/support/v4/media/session/IMediaControllerCallback.aidl
diff --git a/v4/java/android/support/v4/media/session/IMediaSession.aidl b/media-compat/java/android/support/v4/media/session/IMediaSession.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/session/IMediaSession.aidl
rename to media-compat/java/android/support/v4/media/session/IMediaSession.aidl
diff --git a/v4/java/android/support/v4/media/session/MediaButtonReceiver.java b/media-compat/java/android/support/v4/media/session/MediaButtonReceiver.java
similarity index 100%
rename from v4/java/android/support/v4/media/session/MediaButtonReceiver.java
rename to media-compat/java/android/support/v4/media/session/MediaButtonReceiver.java
diff --git a/v4/java/android/support/v4/media/session/MediaControllerCompat.java b/media-compat/java/android/support/v4/media/session/MediaControllerCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/session/MediaControllerCompat.java
rename to media-compat/java/android/support/v4/media/session/MediaControllerCompat.java
diff --git a/v4/java/android/support/v4/media/session/MediaSessionCompat.aidl b/media-compat/java/android/support/v4/media/session/MediaSessionCompat.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/session/MediaSessionCompat.aidl
rename to media-compat/java/android/support/v4/media/session/MediaSessionCompat.aidl
diff --git a/v4/java/android/support/v4/media/session/MediaSessionCompat.java b/media-compat/java/android/support/v4/media/session/MediaSessionCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/session/MediaSessionCompat.java
rename to media-compat/java/android/support/v4/media/session/MediaSessionCompat.java
diff --git a/v4/java/android/support/v4/media/session/ParcelableVolumeInfo.aidl b/media-compat/java/android/support/v4/media/session/ParcelableVolumeInfo.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/session/ParcelableVolumeInfo.aidl
rename to media-compat/java/android/support/v4/media/session/ParcelableVolumeInfo.aidl
diff --git a/v4/java/android/support/v4/media/session/ParcelableVolumeInfo.java b/media-compat/java/android/support/v4/media/session/ParcelableVolumeInfo.java
similarity index 100%
rename from v4/java/android/support/v4/media/session/ParcelableVolumeInfo.java
rename to media-compat/java/android/support/v4/media/session/ParcelableVolumeInfo.java
diff --git a/v4/java/android/support/v4/media/session/PlaybackStateCompat.aidl b/media-compat/java/android/support/v4/media/session/PlaybackStateCompat.aidl
similarity index 100%
rename from v4/java/android/support/v4/media/session/PlaybackStateCompat.aidl
rename to media-compat/java/android/support/v4/media/session/PlaybackStateCompat.aidl
diff --git a/v4/java/android/support/v4/media/session/PlaybackStateCompat.java b/media-compat/java/android/support/v4/media/session/PlaybackStateCompat.java
similarity index 100%
rename from v4/java/android/support/v4/media/session/PlaybackStateCompat.java
rename to media-compat/java/android/support/v4/media/session/PlaybackStateCompat.java
diff --git a/v4/jellybean-mr2/android/support/v4/media/TransportMediatorCallback.java b/media-compat/jellybean-mr2/android/support/v4/media/TransportMediatorCallback.java
similarity index 100%
rename from v4/jellybean-mr2/android/support/v4/media/TransportMediatorCallback.java
rename to media-compat/jellybean-mr2/android/support/v4/media/TransportMediatorCallback.java
diff --git a/v4/jellybean-mr2/android/support/v4/media/TransportMediatorJellybeanMR2.java b/media-compat/jellybean-mr2/android/support/v4/media/TransportMediatorJellybeanMR2.java
similarity index 100%
rename from v4/jellybean-mr2/android/support/v4/media/TransportMediatorJellybeanMR2.java
rename to media-compat/jellybean-mr2/android/support/v4/media/TransportMediatorJellybeanMR2.java
diff --git a/v4/jellybean-mr2/android/support/v4/media/session/MediaSessionCompatApi18.java b/media-compat/jellybean-mr2/android/support/v4/media/session/MediaSessionCompatApi18.java
similarity index 100%
rename from v4/jellybean-mr2/android/support/v4/media/session/MediaSessionCompatApi18.java
rename to media-compat/jellybean-mr2/android/support/v4/media/session/MediaSessionCompatApi18.java
diff --git a/v4/kitkat/android/support/v4/media/session/MediaSessionCompatApi19.java b/media-compat/kitkat/android/support/v4/media/session/MediaSessionCompatApi19.java
similarity index 100%
rename from v4/kitkat/android/support/v4/media/session/MediaSessionCompatApi19.java
rename to media-compat/kitkat/android/support/v4/media/session/MediaSessionCompatApi19.java
diff --git a/settings.gradle b/settings.gradle
index 9770023..efc7ca9 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -5,6 +5,9 @@
include ':support-compat'
project(':support-compat').projectDir = new File(rootDir, 'compat')
+include ':support-media-compat'
+project(':support-media-compat').projectDir = new File(rootDir, 'media-compat')
+
include ':support-core'
project(':support-core').projectDir = new File(rootDir, 'v4')
diff --git a/v4/Android.mk b/v4/Android.mk
index bab6f8e..83c86b1 100644
--- a/v4/Android.mk
+++ b/v4/Android.mk
@@ -19,12 +19,18 @@
LOCAL_MODULE := android-support-v4-donut
LOCAL_SDK_VERSION := 4
LOCAL_SRC_FILES := $(call all-java-files-under, donut)
-LOCAL_STATIC_JAVA_LIBRARIES := android-support-annotations android-support-compat
+LOCAL_STATIC_JAVA_LIBRARIES := \
+ android-support-annotations \
+ android-support-media-compat \
+ android-support-compat
LOCAL_JAVA_LANGUAGE_VERSION := 1.7
include $(BUILD_STATIC_JAVA_LIBRARY)
support_module_src_files := $(LOCAL_SRC_FILES)
-support_module_java_libraries := android-support-annotations android-support-compat
+support_module_java_libraries := \
+ android-support-annotations \
+ android-support-media-compat \
+ android-support-compat
# -----------------------------------------------------------------------
diff --git a/v4/api/current.txt b/v4/api/current.txt
index 99517b7..cff2dc7 100644
--- a/v4/api/current.txt
+++ b/v4/api/current.txt
@@ -260,14 +260,14 @@
method public java.lang.Object getLastCustomNonConfigurationInstance();
method public android.support.v4.app.FragmentManager getSupportFragmentManager();
method public android.support.v4.app.LoaderManager getSupportLoaderManager();
- method public final android.support.v4.media.session.MediaControllerCompat getSupportMediaController();
+ method public final MediaControllerCompat getSupportMediaController();
method public void onAttachFragment(android.support.v4.app.Fragment);
method protected void onResumeFragments();
method public java.lang.Object onRetainCustomNonConfigurationInstance();
method public final java.lang.Object onRetainNonConfigurationInstance();
method public void setEnterSharedElementCallback(android.support.v4.app.SharedElementCallback);
method public void setExitSharedElementCallback(android.support.v4.app.SharedElementCallback);
- method public final void setSupportMediaController(android.support.v4.media.session.MediaControllerCompat);
+ method public final void setSupportMediaController(MediaControllerCompat);
method public void startActivityFromFragment(android.support.v4.app.Fragment, android.content.Intent, int);
method public void startActivityFromFragment(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle);
method public void startIntentSenderFromFragment(android.support.v4.app.Fragment, android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException;
@@ -1297,546 +1297,6 @@
}
-package android.support.v4.media {
-
- public final class MediaBrowserCompat {
- ctor public MediaBrowserCompat(android.content.Context, android.content.ComponentName, android.support.v4.media.MediaBrowserCompat.ConnectionCallback, android.os.Bundle);
- method public void connect();
- method public void disconnect();
- method public android.os.Bundle getExtras();
- method public void getItem(java.lang.String, android.support.v4.media.MediaBrowserCompat.ItemCallback);
- method public java.lang.String getRoot();
- method public android.content.ComponentName getServiceComponent();
- method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
- method public boolean isConnected();
- method public void subscribe(java.lang.String, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
- method public void subscribe(java.lang.String, android.os.Bundle, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
- method public void unsubscribe(java.lang.String);
- method public void unsubscribe(java.lang.String, android.support.v4.media.MediaBrowserCompat.SubscriptionCallback);
- field public static final java.lang.String EXTRA_PAGE = "android.media.browse.extra.PAGE";
- field public static final java.lang.String EXTRA_PAGE_SIZE = "android.media.browse.extra.PAGE_SIZE";
- }
-
- public static class MediaBrowserCompat.ConnectionCallback {
- ctor public MediaBrowserCompat.ConnectionCallback();
- method public void onConnected();
- method public void onConnectionFailed();
- method public void onConnectionSuspended();
- }
-
- public static abstract class MediaBrowserCompat.ItemCallback {
- ctor public MediaBrowserCompat.ItemCallback();
- method public void onError(java.lang.String);
- method public void onItemLoaded(android.support.v4.media.MediaBrowserCompat.MediaItem);
- }
-
- public static class MediaBrowserCompat.MediaItem implements android.os.Parcelable {
- ctor public MediaBrowserCompat.MediaItem(android.support.v4.media.MediaDescriptionCompat, int);
- method public int describeContents();
- method public android.support.v4.media.MediaDescriptionCompat getDescription();
- method public int getFlags();
- method public java.lang.String getMediaId();
- method public boolean isBrowsable();
- method public boolean isPlayable();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaBrowserCompat.MediaItem> CREATOR;
- field public static final int FLAG_BROWSABLE = 1; // 0x1
- field public static final int FLAG_PLAYABLE = 2; // 0x2
- }
-
- public static abstract class MediaBrowserCompat.SubscriptionCallback {
- ctor public MediaBrowserCompat.SubscriptionCallback();
- method public void onChildrenLoaded(java.lang.String, java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>);
- method public void onChildrenLoaded(java.lang.String, java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>, android.os.Bundle);
- method public void onError(java.lang.String);
- method public void onError(java.lang.String, android.os.Bundle);
- }
-
- public abstract class MediaBrowserServiceCompat extends android.app.Service {
- ctor public MediaBrowserServiceCompat();
- method public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
- method public final android.os.Bundle getBrowserRootHints();
- method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
- method public void notifyChildrenChanged(java.lang.String);
- method public void notifyChildrenChanged(java.lang.String, android.os.Bundle);
- method public android.os.IBinder onBind(android.content.Intent);
- method public abstract android.support.v4.media.MediaBrowserServiceCompat.BrowserRoot onGetRoot(java.lang.String, int, android.os.Bundle);
- method public abstract void onLoadChildren(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>>);
- method public void onLoadChildren(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<java.util.List<android.support.v4.media.MediaBrowserCompat.MediaItem>>, android.os.Bundle);
- method public void onLoadItem(java.lang.String, android.support.v4.media.MediaBrowserServiceCompat.Result<android.support.v4.media.MediaBrowserCompat.MediaItem>);
- method public void setSessionToken(android.support.v4.media.session.MediaSessionCompat.Token);
- field public static final java.lang.String SERVICE_INTERFACE = "android.media.browse.MediaBrowserService";
- }
-
- public static final class MediaBrowserServiceCompat.BrowserRoot {
- ctor public MediaBrowserServiceCompat.BrowserRoot(java.lang.String, android.os.Bundle);
- method public android.os.Bundle getExtras();
- method public java.lang.String getRootId();
- field public static final java.lang.String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE";
- field public static final java.lang.String EXTRA_RECENT = "android.service.media.extra.RECENT";
- field public static final java.lang.String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED";
- }
-
- public static class MediaBrowserServiceCompat.Result {
- method public void detach();
- method public void sendResult(T);
- }
-
- public final class MediaDescriptionCompat implements android.os.Parcelable {
- method public int describeContents();
- method public static android.support.v4.media.MediaDescriptionCompat fromMediaDescription(java.lang.Object);
- method public java.lang.CharSequence getDescription();
- method public android.os.Bundle getExtras();
- method public android.graphics.Bitmap getIconBitmap();
- method public android.net.Uri getIconUri();
- method public java.lang.Object getMediaDescription();
- method public java.lang.String getMediaId();
- method public android.net.Uri getMediaUri();
- method public java.lang.CharSequence getSubtitle();
- method public java.lang.CharSequence getTitle();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaDescriptionCompat> CREATOR;
- }
-
- public static final class MediaDescriptionCompat.Builder {
- ctor public MediaDescriptionCompat.Builder();
- method public android.support.v4.media.MediaDescriptionCompat build();
- method public android.support.v4.media.MediaDescriptionCompat.Builder setDescription(java.lang.CharSequence);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setExtras(android.os.Bundle);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setIconBitmap(android.graphics.Bitmap);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setIconUri(android.net.Uri);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setMediaId(java.lang.String);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setMediaUri(android.net.Uri);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setSubtitle(java.lang.CharSequence);
- method public android.support.v4.media.MediaDescriptionCompat.Builder setTitle(java.lang.CharSequence);
- }
-
- public final class MediaMetadataCompat implements android.os.Parcelable {
- method public boolean containsKey(java.lang.String);
- method public int describeContents();
- method public static android.support.v4.media.MediaMetadataCompat fromMediaMetadata(java.lang.Object);
- method public android.graphics.Bitmap getBitmap(java.lang.String);
- method public android.os.Bundle getBundle();
- method public android.support.v4.media.MediaDescriptionCompat getDescription();
- method public long getLong(java.lang.String);
- method public java.lang.Object getMediaMetadata();
- method public android.support.v4.media.RatingCompat getRating(java.lang.String);
- method public java.lang.String getString(java.lang.String);
- method public java.lang.CharSequence getText(java.lang.String);
- method public java.util.Set<java.lang.String> keySet();
- method public int size();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaMetadataCompat> CREATOR;
- field public static final java.lang.String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM";
- field public static final java.lang.String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART";
- field public static final java.lang.String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST";
- field public static final java.lang.String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI";
- field public static final java.lang.String METADATA_KEY_ART = "android.media.metadata.ART";
- field public static final java.lang.String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST";
- field public static final java.lang.String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI";
- field public static final java.lang.String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR";
- field public static final java.lang.String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION";
- field public static final java.lang.String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER";
- field public static final java.lang.String METADATA_KEY_DATE = "android.media.metadata.DATE";
- field public static final java.lang.String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER";
- field public static final java.lang.String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION";
- field public static final java.lang.String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON";
- field public static final java.lang.String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI";
- field public static final java.lang.String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE";
- field public static final java.lang.String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE";
- field public static final java.lang.String METADATA_KEY_DURATION = "android.media.metadata.DURATION";
- field public static final java.lang.String METADATA_KEY_GENRE = "android.media.metadata.GENRE";
- field public static final java.lang.String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID";
- field public static final java.lang.String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS";
- field public static final java.lang.String METADATA_KEY_RATING = "android.media.metadata.RATING";
- field public static final java.lang.String METADATA_KEY_TITLE = "android.media.metadata.TITLE";
- field public static final java.lang.String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER";
- field public static final java.lang.String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING";
- field public static final java.lang.String METADATA_KEY_WRITER = "android.media.metadata.WRITER";
- field public static final java.lang.String METADATA_KEY_YEAR = "android.media.metadata.YEAR";
- }
-
- public static final class MediaMetadataCompat.Builder {
- ctor public MediaMetadataCompat.Builder();
- ctor public MediaMetadataCompat.Builder(android.support.v4.media.MediaMetadataCompat);
- method public android.support.v4.media.MediaMetadataCompat build();
- method public android.support.v4.media.MediaMetadataCompat.Builder putBitmap(java.lang.String, android.graphics.Bitmap);
- method public android.support.v4.media.MediaMetadataCompat.Builder putLong(java.lang.String, long);
- method public android.support.v4.media.MediaMetadataCompat.Builder putRating(java.lang.String, android.support.v4.media.RatingCompat);
- method public android.support.v4.media.MediaMetadataCompat.Builder putString(java.lang.String, java.lang.String);
- method public android.support.v4.media.MediaMetadataCompat.Builder putText(java.lang.String, java.lang.CharSequence);
- }
-
- public final class RatingCompat implements android.os.Parcelable {
- method public int describeContents();
- method public static android.support.v4.media.RatingCompat fromRating(java.lang.Object);
- method public float getPercentRating();
- method public java.lang.Object getRating();
- method public int getRatingStyle();
- method public float getStarRating();
- method public boolean hasHeart();
- method public boolean isRated();
- method public boolean isThumbUp();
- method public static android.support.v4.media.RatingCompat newHeartRating(boolean);
- method public static android.support.v4.media.RatingCompat newPercentageRating(float);
- method public static android.support.v4.media.RatingCompat newStarRating(int, float);
- method public static android.support.v4.media.RatingCompat newThumbRating(boolean);
- method public static android.support.v4.media.RatingCompat newUnratedRating(int);
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.RatingCompat> CREATOR;
- field public static final int RATING_3_STARS = 3; // 0x3
- field public static final int RATING_4_STARS = 4; // 0x4
- field public static final int RATING_5_STARS = 5; // 0x5
- field public static final int RATING_HEART = 1; // 0x1
- field public static final int RATING_NONE = 0; // 0x0
- field public static final int RATING_PERCENTAGE = 6; // 0x6
- field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
- }
-
- public abstract class TransportController {
- ctor public TransportController();
- method public abstract int getBufferPercentage();
- method public abstract long getCurrentPosition();
- method public abstract long getDuration();
- method public abstract int getTransportControlFlags();
- method public abstract boolean isPlaying();
- method public abstract void pausePlaying();
- method public abstract void registerStateListener(android.support.v4.media.TransportStateListener);
- method public abstract void seekTo(long);
- method public abstract void startPlaying();
- method public abstract void stopPlaying();
- method public abstract void unregisterStateListener(android.support.v4.media.TransportStateListener);
- }
-
- public class TransportMediator extends android.support.v4.media.TransportController {
- ctor public TransportMediator(android.app.Activity, android.support.v4.media.TransportPerformer);
- ctor public TransportMediator(android.view.View, android.support.v4.media.TransportPerformer);
- method public void destroy();
- method public boolean dispatchKeyEvent(android.view.KeyEvent);
- method public int getBufferPercentage();
- method public long getCurrentPosition();
- method public long getDuration();
- method public java.lang.Object getRemoteControlClient();
- method public int getTransportControlFlags();
- method public boolean isPlaying();
- method public void pausePlaying();
- method public void refreshState();
- method public void registerStateListener(android.support.v4.media.TransportStateListener);
- method public void seekTo(long);
- method public void startPlaying();
- method public void stopPlaying();
- method public void unregisterStateListener(android.support.v4.media.TransportStateListener);
- field public static final int FLAG_KEY_MEDIA_FAST_FORWARD = 64; // 0x40
- field public static final int FLAG_KEY_MEDIA_NEXT = 128; // 0x80
- field public static final int FLAG_KEY_MEDIA_PAUSE = 16; // 0x10
- field public static final int FLAG_KEY_MEDIA_PLAY = 4; // 0x4
- field public static final int FLAG_KEY_MEDIA_PLAY_PAUSE = 8; // 0x8
- field public static final int FLAG_KEY_MEDIA_PREVIOUS = 1; // 0x1
- field public static final int FLAG_KEY_MEDIA_REWIND = 2; // 0x2
- field public static final int FLAG_KEY_MEDIA_STOP = 32; // 0x20
- field public static final int KEYCODE_MEDIA_PAUSE = 127; // 0x7f
- field public static final int KEYCODE_MEDIA_PLAY = 126; // 0x7e
- field public static final int KEYCODE_MEDIA_RECORD = 130; // 0x82
- }
-
- public abstract class TransportPerformer {
- ctor public TransportPerformer();
- method public void onAudioFocusChange(int);
- method public int onGetBufferPercentage();
- method public abstract long onGetCurrentPosition();
- method public abstract long onGetDuration();
- method public int onGetTransportControlFlags();
- method public abstract boolean onIsPlaying();
- method public boolean onMediaButtonDown(int, android.view.KeyEvent);
- method public boolean onMediaButtonUp(int, android.view.KeyEvent);
- method public abstract void onPause();
- method public abstract void onSeekTo(long);
- method public abstract void onStart();
- method public abstract void onStop();
- }
-
- public class TransportStateListener {
- ctor public TransportStateListener();
- method public void onPlayingChanged(android.support.v4.media.TransportController);
- method public void onTransportControlsChanged(android.support.v4.media.TransportController);
- }
-
- public abstract class VolumeProviderCompat {
- ctor public VolumeProviderCompat(int, int, int);
- method public final int getCurrentVolume();
- method public final int getMaxVolume();
- method public final int getVolumeControl();
- method public java.lang.Object getVolumeProvider();
- method public void onAdjustVolume(int);
- method public void onSetVolumeTo(int);
- method public void setCallback(android.support.v4.media.VolumeProviderCompat.Callback);
- method public final void setCurrentVolume(int);
- field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2
- field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0
- field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1
- }
-
- public static abstract class VolumeProviderCompat.Callback {
- ctor public VolumeProviderCompat.Callback();
- method public abstract void onVolumeChanged(android.support.v4.media.VolumeProviderCompat);
- }
-
-}
-
-package android.support.v4.media.session {
-
- public class MediaButtonReceiver extends android.content.BroadcastReceiver {
- ctor public MediaButtonReceiver();
- method public static android.view.KeyEvent handleIntent(android.support.v4.media.session.MediaSessionCompat, android.content.Intent);
- method public void onReceive(android.content.Context, android.content.Intent);
- }
-
- public final class MediaControllerCompat {
- ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat);
- ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat.Token) throws android.os.RemoteException;
- method public void adjustVolume(int, int);
- method public boolean dispatchMediaButtonEvent(android.view.KeyEvent);
- method public android.os.Bundle getExtras();
- method public long getFlags();
- method public java.lang.Object getMediaController();
- method public android.support.v4.media.MediaMetadataCompat getMetadata();
- method public java.lang.String getPackageName();
- method public android.support.v4.media.session.MediaControllerCompat.PlaybackInfo getPlaybackInfo();
- method public android.support.v4.media.session.PlaybackStateCompat getPlaybackState();
- method public java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem> getQueue();
- method public java.lang.CharSequence getQueueTitle();
- method public int getRatingType();
- method public android.app.PendingIntent getSessionActivity();
- method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
- method public android.support.v4.media.session.MediaControllerCompat.TransportControls getTransportControls();
- method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
- method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback, android.os.Handler);
- method public void sendCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
- method public void setVolumeTo(int, int);
- method public void unregisterCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
- }
-
- public static abstract class MediaControllerCompat.Callback implements android.os.IBinder.DeathRecipient {
- ctor public MediaControllerCompat.Callback();
- method public void binderDied();
- method public void onAudioInfoChanged(android.support.v4.media.session.MediaControllerCompat.PlaybackInfo);
- method public void onExtrasChanged(android.os.Bundle);
- method public void onMetadataChanged(android.support.v4.media.MediaMetadataCompat);
- method public void onPlaybackStateChanged(android.support.v4.media.session.PlaybackStateCompat);
- method public void onQueueChanged(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
- method public void onQueueTitleChanged(java.lang.CharSequence);
- method public void onSessionDestroyed();
- method public void onSessionEvent(java.lang.String, android.os.Bundle);
- }
-
- public static final class MediaControllerCompat.PlaybackInfo {
- method public int getAudioStream();
- method public int getCurrentVolume();
- method public int getMaxVolume();
- method public int getPlaybackType();
- method public int getVolumeControl();
- field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1
- field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2
- }
-
- public static abstract class MediaControllerCompat.TransportControls {
- method public abstract void fastForward();
- method public abstract void pause();
- method public abstract void play();
- method public abstract void playFromMediaId(java.lang.String, android.os.Bundle);
- method public abstract void playFromSearch(java.lang.String, android.os.Bundle);
- method public abstract void playFromUri(android.net.Uri, android.os.Bundle);
- method public abstract void prepare();
- method public abstract void prepareFromMediaId(java.lang.String, android.os.Bundle);
- method public abstract void prepareFromSearch(java.lang.String, android.os.Bundle);
- method public abstract void prepareFromUri(android.net.Uri, android.os.Bundle);
- method public abstract void rewind();
- method public abstract void seekTo(long);
- method public abstract void sendCustomAction(android.support.v4.media.session.PlaybackStateCompat.CustomAction, android.os.Bundle);
- method public abstract void sendCustomAction(java.lang.String, android.os.Bundle);
- method public abstract void setRating(android.support.v4.media.RatingCompat);
- method public abstract void skipToNext();
- method public abstract void skipToPrevious();
- method public abstract void skipToQueueItem(long);
- method public abstract void stop();
- }
-
- public class MediaSessionCompat {
- ctor public MediaSessionCompat(android.content.Context, java.lang.String);
- ctor public MediaSessionCompat(android.content.Context, java.lang.String, android.content.ComponentName, android.app.PendingIntent);
- method public void addOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
- method public android.support.v4.media.session.MediaControllerCompat getController();
- method public java.lang.Object getMediaSession();
- method public java.lang.Object getRemoteControlClient();
- method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
- method public boolean isActive();
- method public static android.support.v4.media.session.MediaSessionCompat obtain(android.content.Context, java.lang.Object);
- method public void release();
- method public void removeOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
- method public void sendSessionEvent(java.lang.String, android.os.Bundle);
- method public void setActive(boolean);
- method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback);
- method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback, android.os.Handler);
- method public void setExtras(android.os.Bundle);
- method public void setFlags(int);
- method public void setMediaButtonReceiver(android.app.PendingIntent);
- method public void setMetadata(android.support.v4.media.MediaMetadataCompat);
- method public void setPlaybackState(android.support.v4.media.session.PlaybackStateCompat);
- method public void setPlaybackToLocal(int);
- method public void setPlaybackToRemote(android.support.v4.media.VolumeProviderCompat);
- method public void setQueue(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
- method public void setQueueTitle(java.lang.CharSequence);
- method public void setRatingType(int);
- method public void setSessionActivity(android.app.PendingIntent);
- field public static final int FLAG_HANDLES_MEDIA_BUTTONS = 1; // 0x1
- field public static final int FLAG_HANDLES_TRANSPORT_CONTROLS = 2; // 0x2
- }
-
- public static abstract class MediaSessionCompat.Callback {
- ctor public MediaSessionCompat.Callback();
- method public void onCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
- method public void onCustomAction(java.lang.String, android.os.Bundle);
- method public void onFastForward();
- method public boolean onMediaButtonEvent(android.content.Intent);
- method public void onPause();
- method public void onPlay();
- method public void onPlayFromMediaId(java.lang.String, android.os.Bundle);
- method public void onPlayFromSearch(java.lang.String, android.os.Bundle);
- method public void onPlayFromUri(android.net.Uri, android.os.Bundle);
- method public void onPrepare();
- method public void onPrepareFromMediaId(java.lang.String, android.os.Bundle);
- method public void onPrepareFromSearch(java.lang.String, android.os.Bundle);
- method public void onPrepareFromUri(android.net.Uri, android.os.Bundle);
- method public void onRewind();
- method public void onSeekTo(long);
- method public void onSetRating(android.support.v4.media.RatingCompat);
- method public void onSkipToNext();
- method public void onSkipToPrevious();
- method public void onSkipToQueueItem(long);
- method public void onStop();
- }
-
- public static abstract interface MediaSessionCompat.OnActiveChangeListener {
- method public abstract void onActiveChanged();
- }
-
- public static final class MediaSessionCompat.QueueItem implements android.os.Parcelable {
- ctor public MediaSessionCompat.QueueItem(android.support.v4.media.MediaDescriptionCompat, long);
- method public int describeContents();
- method public android.support.v4.media.MediaDescriptionCompat getDescription();
- method public long getQueueId();
- method public java.lang.Object getQueueItem();
- method public static android.support.v4.media.session.MediaSessionCompat.QueueItem obtain(java.lang.Object);
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.QueueItem> CREATOR;
- field public static final int UNKNOWN_ID = -1; // 0xffffffff
- }
-
- public static final class MediaSessionCompat.Token implements android.os.Parcelable {
- method public int describeContents();
- method public static android.support.v4.media.session.MediaSessionCompat.Token fromToken(java.lang.Object);
- method public java.lang.Object getToken();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.Token> CREATOR;
- }
-
- public class ParcelableVolumeInfo implements android.os.Parcelable {
- ctor public ParcelableVolumeInfo(int, int, int, int, int);
- ctor public ParcelableVolumeInfo(android.os.Parcel);
- method public int describeContents();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.session.ParcelableVolumeInfo> CREATOR;
- field public int audioStream;
- field public int controlType;
- field public int currentVolume;
- field public int maxVolume;
- field public int volumeType;
- }
-
- public final class PlaybackStateCompat implements android.os.Parcelable {
- method public int describeContents();
- method public static android.support.v4.media.session.PlaybackStateCompat fromPlaybackState(java.lang.Object);
- method public long getActions();
- method public long getActiveQueueItemId();
- method public long getBufferedPosition();
- method public java.util.List<android.support.v4.media.session.PlaybackStateCompat.CustomAction> getCustomActions();
- method public java.lang.CharSequence getErrorMessage();
- method public android.os.Bundle getExtras();
- method public long getLastPositionUpdateTime();
- method public float getPlaybackSpeed();
- method public java.lang.Object getPlaybackState();
- method public long getPosition();
- method public int getState();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
- field public static final long ACTION_PAUSE = 2L; // 0x2L
- field public static final long ACTION_PLAY = 4L; // 0x4L
- field public static final long ACTION_PLAY_FROM_MEDIA_ID = 1024L; // 0x400L
- field public static final long ACTION_PLAY_FROM_SEARCH = 2048L; // 0x800L
- field public static final long ACTION_PLAY_FROM_URI = 8192L; // 0x2000L
- field public static final long ACTION_PLAY_PAUSE = 512L; // 0x200L
- field public static final long ACTION_PREPARE = 16384L; // 0x4000L
- field public static final long ACTION_PREPARE_FROM_MEDIA_ID = 32768L; // 0x8000L
- field public static final long ACTION_PREPARE_FROM_SEARCH = 65536L; // 0x10000L
- field public static final long ACTION_PREPARE_FROM_URI = 131072L; // 0x20000L
- field public static final long ACTION_REWIND = 8L; // 0x8L
- field public static final long ACTION_SEEK_TO = 256L; // 0x100L
- field public static final long ACTION_SET_RATING = 128L; // 0x80L
- field public static final long ACTION_SKIP_TO_NEXT = 32L; // 0x20L
- field public static final long ACTION_SKIP_TO_PREVIOUS = 16L; // 0x10L
- field public static final long ACTION_SKIP_TO_QUEUE_ITEM = 4096L; // 0x1000L
- field public static final long ACTION_STOP = 1L; // 0x1L
- field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat> CREATOR;
- field public static final long PLAYBACK_POSITION_UNKNOWN = -1L; // 0xffffffffffffffffL
- field public static final int STATE_BUFFERING = 6; // 0x6
- field public static final int STATE_CONNECTING = 8; // 0x8
- field public static final int STATE_ERROR = 7; // 0x7
- field public static final int STATE_FAST_FORWARDING = 4; // 0x4
- field public static final int STATE_NONE = 0; // 0x0
- field public static final int STATE_PAUSED = 2; // 0x2
- field public static final int STATE_PLAYING = 3; // 0x3
- field public static final int STATE_REWINDING = 5; // 0x5
- field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa
- field public static final int STATE_SKIPPING_TO_PREVIOUS = 9; // 0x9
- field public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; // 0xb
- field public static final int STATE_STOPPED = 1; // 0x1
- }
-
- public static final class PlaybackStateCompat.Builder {
- ctor public PlaybackStateCompat.Builder();
- ctor public PlaybackStateCompat.Builder(android.support.v4.media.session.PlaybackStateCompat);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder addCustomAction(java.lang.String, java.lang.String, int);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder addCustomAction(android.support.v4.media.session.PlaybackStateCompat.CustomAction);
- method public android.support.v4.media.session.PlaybackStateCompat build();
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setActions(long);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setActiveQueueItemId(long);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setBufferedPosition(long);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setErrorMessage(java.lang.CharSequence);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setExtras(android.os.Bundle);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float);
- method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float, long);
- }
-
- public static final class PlaybackStateCompat.CustomAction implements android.os.Parcelable {
- method public int describeContents();
- method public static android.support.v4.media.session.PlaybackStateCompat.CustomAction fromCustomAction(java.lang.Object);
- method public java.lang.String getAction();
- method public java.lang.Object getCustomAction();
- method public android.os.Bundle getExtras();
- method public int getIcon();
- method public java.lang.CharSequence getName();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat.CustomAction> CREATOR;
- }
-
- public static final class PlaybackStateCompat.CustomAction.Builder {
- ctor public PlaybackStateCompat.CustomAction.Builder(java.lang.String, java.lang.CharSequence, int);
- method public android.support.v4.media.session.PlaybackStateCompat.CustomAction build();
- method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder setExtras(android.os.Bundle);
- }
-
-}
-
package android.support.v4.net {
public final class ConnectivityManagerCompat {
diff --git a/v4/build.gradle b/v4/build.gradle
index 9415e63..ab4a88e 100644
--- a/v4/build.gradle
+++ b/v4/build.gradle
@@ -5,6 +5,7 @@
createApiSourceSets(project, gradle.ext.studioCompat.modules.core.apiTargets)
dependencies {
compile project(':support-compat')
+ compile project(':support-media-compat')
androidTestCompile ('com.android.support.test:runner:0.4.1') {
exclude module: 'support-annotations'
}
diff --git a/v4/java/android/support/v4/os/package.html b/v4/java/android/support/v4/os/package.html
deleted file mode 100755
index 929c967..0000000
--- a/v4/java/android/support/v4/os/package.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<body>
-
-Support android.os classes to assist with development of applications for
-android API level 4 or later.
-
-</body>