我正在尝试在我的应用程序中与LinkedIn API集成。其中大部分工作正常,但有1个问题。这是如何工作的:为什么FLAG_ACTIVITY_NO_HISTORY不能在设备上工作,但在仿真器上工作?
从我的应用程序设置窗口中,用户点击连接LinkedIn按钮,会弹出该用户必须输入他们的LinkedIn凭据的Web视图。 Web视图启动方式如下:
Intent i = new Intent(Intent.ACTION_VIEW,Uri.parse(liToken.getAuthorizationUrl())); i.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY); startActivity(i);
以上是通过的AsyncTask类实际上做。
从LinkedIn成功验证后,Web视图将消失,用户回来到我的应用程序设置页面。这里用户有2个选项。他可以点击保存或点击取消按钮。保存按钮保存设置,然后将它们带到主要活动,取消不保存任何内容,然后将它们带到主要活动。
问题是,这一切在4.2.2模拟器上都能正常工作,但在运行4.2.2的谷歌LG nexus4设备上,点击保存或取消按钮带回LinkedIn webview,这不是期望的行为。
我想指出的一件事是,模拟器使用默认的Android浏览器,而nexus4使用铬?这是问题吗? 我是否需要在意图上设置其他标志?
任何帮助/指针将不胜感激。
--su
嗨,你能工作吗?我使用相同的代码,但它始终返回到Web浏览器。 thx –
看看下面的答案。这对我有效。 –