Most visited

Recently visited

MediaRouteSelector

public final class MediaRouteSelector
extends Object

java.lang.Object
   ↳ android.support.v7.media.MediaRouteSelector


描述应用程序想要发现和使用的路线的功能。

一旦使用 MediaRouteSelector.Builder实例创建该对象是不可变的。

Example

 MediaRouteSelector selectorBuilder = new MediaRouteSelector.Builder()
         .addControlCategory(MediaControlIntent.CATEGORY_LIVE_VIDEO)
         .addControlCategory(MediaControlIntent.CATEGORY_REMOTE_PLAYBACK)
         .build();

 MediaRouter router = MediaRouter.getInstance(context);
 router.addCallback(selector, callback, MediaRouter.CALLBACK_FLAG_REQUEST_DISCOVERY);
 

Summary

Nested classes

class MediaRouteSelector.Builder

生成器为media route selectors

Fields

public static final MediaRouteSelector EMPTY

一个空的媒体路由选择器,它不会匹配任何路由。

Public methods

Bundle asBundle()

将此对象转换为序列化包。

boolean contains(MediaRouteSelector selector)

如果此选择器包含指定选择器描述的所有功能,则返回true。

boolean equals(Object o)

指示其他某个对象是否“等于”这一个。

static MediaRouteSelector fromBundle(Bundle bundle)

从一个包创建一个实例。

List<String> getControlCategories()

获取选择器中的 media control categories列表。

boolean hasControlCategory(String category)

如果选择器包含指定的类别,则返回true。

int hashCode()

返回对象的哈希码值。

boolean isEmpty()

如果选择器未指定任何功能,则返回true。

boolean isValid()

如果选择器具有所有必填字段,则返回true。

boolean matchesControlFilters(List<IntentFilter> filters)

如果选择器至少匹配指定的控制过滤器之一,则返回true。

String toString()

返回对象的字符串表示形式。

Inherited methods

From class java.lang.Object

Fields

EMPTY

MediaRouteSelector EMPTY

一个空的媒体路由选择器,它不会匹配任何路由。

Public methods

asBundle

Bundle asBundle ()

将此对象转换为序列化包。

Returns
Bundle The contents of the object represented as a bundle.

contains

boolean contains (MediaRouteSelector selector)

如果此选择器包含指定选择器描述的所有功能,则返回true。

Parameters
selector MediaRouteSelector: The selector to be examined.
Returns
boolean True if this selector contains all of the capabilities described by the specified selector.

equals

boolean equals (Object o)

指示其他某个对象是否“等于”这一个。

equals方法在非空对象引用上实现等价关系:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

Objectequals方法实现了对象上最可能的等价关系; 也就是说,对于任何非空参考值xy ,当且仅当xy引用同一对象( x == y的值为true )时,此方法返回true

请注意,无论何时重写此方法,通常都需要重写 hashCode方法,以便维护 hashCode方法的常规协定,该方法声明等同对象必须具有相同的哈希码。

Parameters
o Object: the reference object with which to compare.
Returns
boolean true if this object is the same as the obj argument; false otherwise.

fromBundle

MediaRouteSelector fromBundle (Bundle bundle)

从一个包创建一个实例。

Parameters
bundle Bundle: The bundle, or null if none.
Returns
MediaRouteSelector The new instance, or null if the bundle was null.

getControlCategories

List<String> getControlCategories ()

获取选择器中的 media control categories列表。

Returns
List<String> The list of categories.

hasControlCategory

boolean hasControlCategory (String category)

如果选择器包含指定的类别,则返回true。

Parameters
category String: The category to check.
Returns
boolean True if the category is present.

hashCode

int hashCode ()

返回对象的哈希码值。 为了散列表的好处而支持该方法,例如由HashMap提供的HashMap

一般合同 hashCode是:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

尽可能合理实用,由类Object定义的hashCode方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但Java TM编程语言不需要此实现技术。)

Returns
int a hash code value for this object.

isEmpty

boolean isEmpty ()

如果选择器未指定任何功能,则返回true。

Returns
boolean

isValid

boolean isValid ()

如果选择器具有所有必填字段,则返回true。

Returns
boolean

matchesControlFilters

boolean matchesControlFilters (List<IntentFilter> filters)

如果选择器至少匹配指定的控制过滤器之一,则返回true。

Parameters
filters List: The list of control filters to consider.
Returns
boolean True if a match is found.

toString

String toString ()

返回对象的字符串表示形式。 通常, toString方法会返回一个“文本地表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。

ObjecttoString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

Hooray!