2017-04-13 46 views
-2

我想在我的应用程序中使用AppAuth-Android进行openID登录。创建Android ClientID时遇到问题与Android的AppAuth Library一起使用

我的问题是,无论我如何为Android创建客户端ID,我都会继续收到redirect_uri 400错误。为Android添加一个客户端ID并不能清楚地显示redirect_uri是什么或者需要什么,当我只使用我的应用程序的包名称时,我最终会得到一个redirect_uri_mismatch。

Adding Client ID for Android doesnt clearly show what redirect_uri is or needs to be

我已经通过谷歌创建的codelabs tutorial走了,一切都显得简单。

但是,现在我试图在我的应用程序中获取所有设置,并且没有足够的细节来确定需要采取哪些步骤来创建client_id和redirect_uri,这些步骤适用于我的应用中的自定义方案。

在此处,它假定我就可以正确地创建一个CLIENT_ID幻灯片的图片: A depiction of exactly the step that I need more detail on

我发现大量的文档,从谷歌上做什么,但它没有一个包括了忠告足够的细节让我解决这个问题,我花了太多时间。我在这里找到最有用的页面上OAuth2 for Mobile & Desktop部分

任何人都可以提供确切的要采取的步骤内Google's API Credential manager创造我现有的Android应用程序的client_id,将能够以完全相同的方式作为codelabs工作上面引用的教程?

回答

0

原来这是复制/粘贴client_id的问题,我太专注于与redirect_uri有关的错误消息,无法长时间脱离它。

这里有一些项目,我可以澄清,以防别人最终在同一个问题上撞头。

要解决的REDIRECT_URI问题我有,我回去过,并确信:

  1. 客户ID匹配在谷歌API控制台,并且一个谷歌的API控制台有正确的软件包名称为我的应用程序。

    “com.examplepackagename”

  2. 在我的清单中声明的​​定制方案直接匹配应用程序的软件包名称。

<activity 
     android:name="net.openid.appauth.RedirectUriReceiverActivity" 
     tools:node="replace"> 
     <intent-filter> 
      <action android:name="android.intent.action.VIEW"/> 
      <category android:name="android.intent.category.DEFAULT"/> 
      <category android:name="android.intent.category.BROWSABLE"/> 
      <data android:scheme="com.examplepackagename"/> 
     </intent-filter> 
    </activity> 
  • 由应用通过重定向的URI,随后的代码实验室的示例,并且被格式化等
  • “ com.examplepackagename:/ oauth2callback“