2

我正在尝试构建和运行这个 Bluemix 示例应用程序:

BMS 示例:helloTodoAdvanced

我正在按照项目的 README.md 中的说明逐字进行操作。具体来说:

  1. 从 Github 清理 bms-samples-hellotodo-advanced 项目。

  2. 创建了一个新的 Bluemix“MobileFirst Starter”样板应用程序。

  3. 从 Bluemix 控制台和 Web UI 验证了基本功能。

  4. 使用示例应用程序中的包和类创建了一个新的 Facebook 应用程序 ID。

  5. 将 BlueMix 移动客户端访问 (MCA) 配置为使用我的 Facebook 应用程序 ID。

  6. 根据项目说明更新了 NodeJS server.js 应用程序。

  7. 使用 Facebook App ID、Bluemix 路由和 Bluemix 应用程序 guid 修改了 Android 应用程序源。

  8. 我在 Genymotion 模拟器上运行:Samsung Galaxy Sr/Android API 18

  9. 这是尝试运行的 Android Studio logcat:

04-04 17:19:58.859 1276-1298/com.ibm.hellotodoadvanced E/MainActivity:无法针对 MCA 进行身份验证:响应:{"error":"unauthorized_client","error_description":"Unknown client"}
04-04 17:19:58.859 1276-1298/com.ibm.hellotodoadvanced E/MainActivity:无法针对 MCA 进行身份验证,原因未知
04-04 17:19:58.863 1276-1291/com.ibm.hellotodoadvanced E/mfpsdk.AuthorizationProcessManager: AuthorizationProcessManager.handleAuthorizationFailure in AuthorizationProcessManager.java:426 :: 授权过程失败

<= 程序加载并运行...但身份验证失败并出现此错误!

问:关于如何调试“无法针对 MCA 进行身份验证”错误有什么建议吗?

问:您应该直接从 Android 登录 Facebook 吗?

我的理解是“否”——Bluemix 直接向 Facebook 验证应用程序;Android用户无关紧要。

问:要使 MCA 身份验证与 Bluemix for Android 一起使用,是否还需要任何其他“陷阱”?

4

1 回答 1

3

我认为您需要从设备上卸载您的应用程序,然后重新安装它,这通常是“未知客户端”的问题。
Q1:我不认为有任何特殊的方式来调试身份验证流程(只是常规的 android 调试器)
Q2)是的流程是:用户登录到 facebook 令牌然后发送到验证它并授予你的 MCA 服务器MCA 令牌可让您访问受保护的资源。
Q3)您需要执行将 facebook 添加到 android 应用程序的所有说明(如果您看到 facebook 弹出窗口,那么我认为您执行了此流程)。您可以点击此链接了解更多信息

于 2016-04-05T08:05:28.387 回答