ios - Phonegap Build cordova-plugin-facebook4插件在iOS上不起作用
<p><p>我正在创建一个 <code>phonegap</code> 构建应用程序,其中包含一个 <code>facebook 登录</code>。
下面是一些细节。
- 该应用程序有一个登录 facebook 按钮</p>
<ul>
<li><p>它使用cordova-plugin-facebook4插件(<a href="https://www.npmjs.com/package/cordova-plugin-facebook4" rel="noreferrer noopener nofollow">https://www.npmjs.com/package/cordova-plugin-facebook4</a>)</p></li>
<li><p>集成代码如下:</p></li>
</ul>
<pre><code>facebookConnectPlugin.login( ["public_profile"],
function ( userData ) {
alert( "login" );
//fetch user info using graph api
facebookConnectPlugin.api( "me/?fields=id,name,email,gender", ["email", "public_profile"],
function ( result ) {
alert( "login success" );
//store access token in local storage
facebookConnectPlugin.getAccessToken( function ( token ) {
console.log( "Token: " + token );
} );
},
function ( error ) {
alert( "Failed: " + error );
} );
}, function ( error ) { alert( "error" ); }
);
</code></pre>
<ul>
<li>以上代码在安卓应用上运行良好。</li>
</ul>
<p><strong>- 上述代码在 iOS 应用中不起作用</strong></p>
<p>用于测试的设备:iPad mini iOS 10.x 版。</p>
<hr/>
<p>在developer.facebook.com上,iOS平台的应用设置如下:</p>
<p>捆绑 ID:与 phonegap 的 config.xml 中的小部件 ID 相同</p>
<p>iPhone 商店 ID:空</p>
<p>url方案后缀:空</p>
<p>ipad 商店 ID:空</p>
<p>单点登录切换:是</p>
<hr/>
<p>以下是 iOS iPad 的当前行为:
1. 用户在 iOS 应用中点击使用 Facebook 登录
2. 用户被带到 safari 浏览器中的 facebook 权限页面
3. 用户输入用户名和密码
4. 请求用户许可,用户点击“确认”
5. Safari 显示一个弹出窗口询问“在应用程序中打开?”
6.用户点击打开
7. 用户被带到相同的应用程序和相同的页面,并显示相同的登录链接。</p>
<p>请注意,控件根本不会传回以继续执行脚本,这几乎是应用程序从头开始重新启动。</p>
<p>Safari 网络检查器没有显示任何错误。</p>
<p>Mac 上的 GapDebug(我使用的是 virtualbox Yosemite mac 版本)没有显示任何错误。 </p>
<p>请帮忙,因为我现在不太确定,我还缺少什么。 </p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我知道回答这个问题很晚,但它可能有助于其他人解决这个问题。所以这里是解决方案</p>
<pre><code><meta http-equiv="Content-Security-Policy" content="default-src * gap://ready; style-src 'self' 'unsafe-inline'; img-src 'self' data:; script-src * 'unsafe-inline' 'unsafe-eval'">
</code></pre>
<p>在 index.html 中添加它。 <strong>gap://ready</strong> 对于 iOS 10 是必需的</p></p>
<p style="font-size: 20px;">关于ios - Phonegap Build cordova-plugin-facebook4插件在iOS上不起作用,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/42055366/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/42055366/
</a>
</p>
页:
[1]