Facebook SDK webview对话框无法点击

时间:2013-08-29 08:36:12

标签: android facebook webview

我在LG Pro设备(Android OS 4.1.2)上遇到了一个非常奇怪的问题

在下面的页面上,“确定”和“取消”按钮无法点击。

enter image description here

我无法再现其他设备上描述的行为:G Nexus(4.1.2)和Samsung GS3(4.1.1)。

在LGE设备上,我无法在多个市场应用程序上继续登录过程。与Facebook Sample应用程序的行为相同。

我尝试过其他版本的FB SDK,修改/优化webview - 没有结果。

在标准浏览器中,我可以点击“确定”和“取消”按钮。

对我有用的一件事是将WebView布局参数从match_parent更改为wrap_content。我能够点击第一个“当前目标”(基本权限),但在第二个(pusblish权限),webview看起来非常小,然后开始增加高度(我可以附加截图,如果我的解释不清楚)。

我发现Facebook屏幕上存在问题。 (http://developers.facebook.com/bugs/375733199212934) 也许它是回归的王者......我不知道。

无论如何,LG Pro设备的任何帮助和解决方法都将非常有用。 感谢

1 个答案:

答案 0 :(得分:1)

WebView操作

您可以使用setWebViewClient()方法将WebViewClient附加到WebView。完成页面加载后,您可以检查已加载的URL(onPageFinished())并确定它是否在当前设备上存在问题。如果可能,那么您可以run a javascript command可以修改样式,以便不再禁用滚动。我还没有尝试过这样的修改,但我很确定它可以完成,因为任何DOM修改都可以从javascript。

我不是说这是一个稳定的解决方案。你需要在生产中密切监视它,但是因为FB似乎不愿意正确处理它,所以可能会走出死胡同。

内置浏览器解决方案

您可以使用内置浏览器实现登录和授权过程。使用网址https://www.facebook.com/dialog/oauth?client_id={app-id}&redirect_uri={redirect-uri}启动意图(此帖子中的示例:Sending an Intent to browser to open specific URL

redirect-uri参数将告知浏览器在授权完成后返回您的应用。 (例如:Launch custom android application from android browser)您应该使用方案模式。