Sonos API重定向URI

时间:2018-09-13 20:38:24

标签: sonos

我对Sonos API身份验证重定向URI有疑问。在以前的项目中,我使用了本机应用程序可以拦截的重定向URI。如myApp://auth-code。 Sonos API似乎无法做到这一点,因为它期望重定向URI可公开路由和使用HTTPS。我必须在本地客户端和Sonos API之间拥有自己的服务器吗?我觉得我可能在这里缺少一些简单的东西。感谢您的宝贵时间。

2 个答案:

答案 0 :(得分:1)

只有一个虚拟端点,例如firebase云功能,可重定向到您自己的自定义方案,例如location.href =“ myapp-scheme:// ...”

确保附加查询参数。

您还可以通过嵌入野生动物园网络视图来避免打开外部浏览器。

答案 1 :(得分:0)

如果使用WebView显示Sonos身份验证页面,则可以检测到所显示WebView的url,然后可以检测WebView何时加载重定向Uri,进行获取(带有代码)并进行处理。 这里是使用Kotlin的示例:

webView.webViewClient = object : WebViewClient() {
    override fun onPageFinished(view: WebView, url: String) {}

    override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) {
        super.onPageStarted(view, url, favicon)
        // Here you can get url and then Sonos code
        if (url != null && url.contains(redirectUri) && url.contains("&code=")) doStuff()
    }
}