Most visited

Recently visited

CustomTabsService

public abstract class CustomTabsService
extends Service

java.lang.Object
   ↳ android.content.Context
     ↳ android.content.ContextWrapper
       ↳ android.app.Service
         ↳ android.support.customtabs.CustomTabsService


用于实现自定义选项卡相关功能的抽象服务类。 该服务应该响应动作ACTION_CUSTOM_TABS_CONNECTION。 这个类应该由希望提供自定义标签功能的实现者使用,而不是由想要启动自定义标签的客户端使用。

Summary

Constants

String ACTION_CUSTOM_TABS_CONNECTION

CustomTabsService必须响应的Intent操作。

String KEY_URL

对于想要指定多个url的 mayLaunchUrl(CustomTabsSessionToken, Uri, Bundle, List ) 调用,此密钥可与 putParcelable(String, android.os.Parcelable)一起使用,以将新的url插入到bundle列表中的每个bundle。

Inherited constants

From class android.app.Service
From class android.content.Context
From interface android.content.ComponentCallbacks2

Public constructors

CustomTabsService()

Public methods

IBinder onBind(Intent intent)

将通信信道返回给服务。

Protected methods

boolean cleanUpSession(CustomTabsSessionToken sessionToken)

IBinder的客户端 CustomTabsSessionToken已经死机时调用。

abstract Bundle extraCommand(String commandName, Bundle args)

可能由实现提供的不支持的命令。

abstract boolean mayLaunchUrl(CustomTabsSessionToken sessionToken, Uri url, Bundle extras, List<Bundle> otherLikelyBundles)

告诉浏览器未来可能导航到一个URL。

abstract boolean newSession(CustomTabsSessionToken sessionToken)

通过具有可选回调的ICustomTabsService创建新会话。

abstract boolean updateVisuals(CustomTabsSessionToken sessionToken, Bundle bundle)

更新给定会话的自定义选项卡的视觉效果。

abstract boolean warmup(long flags)

异步加热浏览器进程。

Inherited methods

From class android.app.Service
From class android.content.ContextWrapper
From class android.content.Context
From class java.lang.Object
From interface android.content.ComponentCallbacks2
From interface android.content.ComponentCallbacks

Constants

ACTION_CUSTOM_TABS_CONNECTION

String ACTION_CUSTOM_TABS_CONNECTION

CustomTabsService必须响应的Intent操作。

常量值:“android.support.customtabs.action.CustomTabsService”

KEY_URL

String KEY_URL

对于想要指定多个url的 mayLaunchUrl(CustomTabsSessionToken, Uri, Bundle, List ) 调用,此密钥可与 putParcelable(String, android.os.Parcelable)一起使用,以将新url插入到bundle列表中的每个bundle。

常量值:“android.support.customtabs.otherurls.URL”

Public constructors

CustomTabsService

CustomTabsService ()

Public methods

onBind

IBinder onBind (Intent intent)

将通信信道返回给服务。 如果客户端无法绑定到服务,可能会返回null。 返回IBinder通常是一个复杂的界面已经described using aidl

请注意,与其他应用程序组件不同,此处返回的IBinder接口调用可能不会发生在进程的主线程上 有关主线程的更多信息可以在Processes and Threads中找到。

Parameters
intent Intent: The Intent that was used to bind to this service, as given to Context.bindService. Note that any extras that were included with the Intent at that point will not be seen here.
Returns
IBinder Return an IBinder through which clients can call on to the service.

Protected methods

cleanUpSession

boolean cleanUpSession (CustomTabsSessionToken sessionToken)

当调用客户端IBinder这个CustomTabsSessionToken死了。 也可用于清理为给定标记分配的IBinder.DeathRecipient实例。

Parameters
sessionToken CustomTabsSessionToken: The session token for which the IBinder.DeathRecipient call has been received.
Returns
boolean Whether the clean up was successful. Multiple calls with two tokens holdings the same binder will return false.

extraCommand

Bundle extraCommand (String commandName, 
                Bundle args)

可能由实现提供的不支持的命令。

注:客户 永远不应该依靠这种方法有一个定义的行为,因为它是完全实现定义和不支持。

这个调用可以被实现用来添加额外的命令,用于测试或实验目的。

Parameters
commandName String: Name of the extra command to execute.
args Bundle: Arguments for the command
Returns
Bundle The result Bundle, or null.

mayLaunchUrl

boolean mayLaunchUrl (CustomTabsSessionToken sessionToken, 
                Uri url, 
                Bundle extras, 
                List<Bundle> otherLikelyBundles)

告诉浏览器未来可能导航到一个URL。 必须事先调用方法warmup(long) 最可能的URL必须明确指定。 可选地,可以提供其他可能的URL的列表。 他们被视为比第一个更不可能,并且必须按优先顺序递减排序。 这些额外的网址可能会被忽略。 之前对此方法的所有调用都将被优先化。

Parameters
sessionToken CustomTabsSessionToken: The unique identifier for the session. Can not be null.
url Uri: Most likely URL.
extras Bundle: Reserved for future use.
otherLikelyBundles List: Other likely destinations, sorted in decreasing likelihood order. Each Bundle has to provide a url.
Returns
boolean Whether the call was successful.

newSession

boolean newSession (CustomTabsSessionToken sessionToken)

通过具有可选回调的ICustomTabsService创建新会话。 此会话可用于通过服务与意图关联任何相关通信,然后再通过自定义标签关联。 然后,客户端可以通过相同的会话意向 - 自定义选项卡关联发送稍后的服务调用或意向。

Parameters
sessionToken CustomTabsSessionToken: Session token to be used as a unique identifier. This also has access to the CustomTabsCallback passed from the client side through getCallback().
Returns
boolean Whether a new session was successfully created.

updateVisuals

boolean updateVisuals (CustomTabsSessionToken sessionToken, 
                Bundle bundle)

更新给定会话的自定义选项卡的视觉效果。 只有当给定的会话与当前活动的会话匹配时才会成功。

Parameters
sessionToken CustomTabsSessionToken: The currently active session that the custom tab belongs to.
bundle Bundle: The action button configuration bundle. This bundle should be constructed with the same structure in CustomTabsIntent.Builder.
Returns
boolean Whether the operation was successful.

warmup

boolean warmup (long flags)

异步加热浏览器进程。

Parameters
flags long: Reserved for future use.
Returns
boolean Whether warmup was/had been completed successfully. Multiple successful calls will return true.

Hooray!