- 版本: 0.0.1
- GitHub:
- NPM: https://npmjs.net.cn/package/nativescript-facebook-oauth
- 下载
- 昨天: 0
- 上周: 0
- 上个月: 0
nativeScript-facebook-oauth
这是一个使用Facebook SDK实现iOS和Android OAuth认证的NativeScript插件。
使用方法
安装
npm install nativescript-facebook-oauth
Android
创建your_app/App_Resources/Android/values/strings.xml
并输入以下代码。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">sample</string>
<string name="title_activity_kimera">sample</string>
<string name="facebook_app_id">{your-app-id}</string>
</resources>
在your_app/App_Resources/Android/AndroidManifest.xml
中添加以下uses-permission
meta-data
activity
。
<?xml version="1.0" encoding="utf-8"?>
<manifest>
<uses-permission android:name="android.permission.INTERNET"/>
...
<application>
...
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<activity android:name="com.facebook.FacebookActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:label="@string/app_name"/>
...
</application>
</manifest>
iOS
在your_app/App_Resources/iOS/Info.plist
的最后在</dict>
之前添加以下代码(详细信息)。
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb{your-app-id}</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>{your-app-id}</string>
<key>FacebookDisplayName</key>
<string>{your-app-name}</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
添加以下代码并将Objective-C的AppDelegate
类连接到FBSDKApplicationDelegate
(详细信息)。
import { connectToFacebookDelegate } from "nativescript-facebook-oauth";
connectToFacebookDelegate();
application.start({ moduleName: "main-page" });
Android/iOS通用
import { FacebookLoginHandler } from "nativescript-facebook-oauth";
// コールバックの処理
const successCallback = function(result) {
console.log(result.token);
};
const cancelCallback = function() {
console.log("Login was cancelled");
};
const failCallback = function(error) {
console.log(error);
};
// ログインの処理
const facebookLoginHandler = new FacebookLoginHandler();
facebookLoginHandler.logInWithReadPermissions(["email"], successCallback, cancelCallback, failCallback); // Permissionsを追加 https://developers.facebook.com/docs/facebook-login/permissions
验证步骤
在sample
下创建了一个示例应用程序。
创建Facebook应用程序
在Facebook开发者中创建验证应用程序。
选择basic setup
。
输入Display Name
Contact Email
Category
。
在Create App ID
中创建应用程序。选择Setting
并点击+Add Platform
,选择Android。
由于是验证用,所以只输入Google Play Package Name
。这样应用程序的创建就完成了。
读取应用程序ID
在Android验证中,将sample/app/App_Resources/Android/values/strings.xml
中的{your-app-id}
替换为创建的应用程序的Application ID
。在iOS验证中,将sample/app/App_Resources/iOS/Info.plist
中的{your-app-id}
替换为创建的应用程序的Application ID
,并将{your-app-name}
替换为应用程序名称。
运行示例应用程序
可以使用以下命令运行。
首次
cd sample
tns install
tns platform add [ios | android]
tns run [ios | android]
第二次及以后
cd sample
tns plugin remove nativescript-facebook-oauth && tns plugin add ../
tns run [ios | android]