我正在使用cca
工具链制作Chrome / Android / iOS应用。我使用chrome.identity
API来access_token
与Google API进行互动。
当我将interactive
设置为false
(immediate
至true
)时,该应用可以获取令牌而不再显示权限对话框,但它仍会显示每次在我的Android设备上进行帐号选择。这会破坏应用体验,因为每次打开时,用户都会遇到恼人的对话框。如何让应用程序在第一次之后记住所选帐户,就像使用权限一样?
答案 0 :(得分:2)
在Android上,您可以在调用accountHint
的{{1}}参数中指定details
。例如:
getAuthToken
这将绕过帐户选择器对话框。请注意,回调函数为var details = { interactive: true, accountHint: 'email@address.com' };
var callback = function(token, account) { ... };
chrome.identity.getAuthToken(details, callback);
,可以为此目的存储。
不幸的是,这只是Android版;当您向account
添加额外内容时,桌面上的Chrome浏览器并不喜欢它。您需要使用chrome.runtime.getPlatformInfo
来确定您正在运行的平台,以便您可以创建并传递正确的details
对象。在Android上,details
将为platformInfo.os
。