npm i --save nativescript-snapkit
- 版本:1.0.0
- GitHub:
- NPM: https://npmjs.net.cn/package/nativescript-snapkit
- 下载
- 昨天: 0
- 上周: 1
- 上个月: 5
NativeScript Snap Kit 插件
什么!?
很高兴你问了。这个仓库实现了一个 NativeScript 插件,用于 Snapchat 的 Snap Kit SDK。在其第一版中,此插件仅公开了 '登录' 功能,称为 登录套件。请随意提出其他功能的 issue(Snap Kit SDK 的其他部分包括:创意套件、Bitmoji 套件和故事套件)。
安装
tns plugin add nativescript-snapkit
配置
前往 Snap Kit 开发者门户 并创建一个应用程序。
Android
设置 iOS 的文档 在此处 可用,但大部分已经由插件处理。您需要
- 打开
App_Resources/AndroidManifest.xml
并添加com.snapchat.kit.sdk.clientId
如下所示。 - 同时,也要添加
com.snapchat.kit.sdk.redirectUrl
如下所示。 - 最后,添加
com.snapchat.kit.sdk.SnapKitActivity
如下所示(确保调整android:scheme
!)。
iOS
设置 iOS 的文档 在此处 可用,但大部分已经由插件处理。您需要
- 打开
App_Resources/Info.plist
并添加SCSDKClientId
如下所示。 - 同时,也要添加
SCSDKRedirectUrl
如下所示。 - 最后,添加
CFBundleURLTypes
如下所示。
iOS 启动连接
在 iOS 上使用登录套件的功能时,您需要在 require
(而不是 import
)插件 之前对 应用进行引导。
不这样做将意味着 Snapchat 在登录后将不会重定向回您的应用程序。
演示应用程序
如果您想测试使用自己的 Snapchat 登录,那么 演示应用程序 是一个很好的起点。然而,它只允许使用用户 eddyverbruggen
登录,因此您需要根据上述说明更新其配置。
按照以下步骤安装演示应用程序
git clone https://github.com/EddyVerbruggen/nativescript-snapkit
cd nativescript-snapkit/src
npm i
# change the configuration, then:
npm run demo.ios # or demo.android
API(登录套件)
登录
login
函数接受一个 boolean
参数(默认 false
),表示您是否希望插件检索 用户详情。
import { LoginKit } from "nativescript-snapkit";
LoginKit.login(true)
.then(result => console.log(`Login successful, details: ${JSON.stringify(result)}`))
.catch(error => console.log(`Login failed. Details: ${error}`));
isLoggedIn
该函数接受与 login
相同的 boolean
参数(默认值为 false
)。如果为 false
,则此函数将返回一个 boolean
。否则,如果用户确实已登录,则将返回 用户详情,否则如果未登录,则返回 false
。
import { LoginKit } from "nativescript-snapkit";
// use it either like this (no parameter, or 'false')
LoginKit.isLoggedIn()
.then(loggedIn => console.log(`User was logged in? ${loggedIn}`));
// or use it like this, to get the details (in case the user was indeed logged in)
LoginKit.isLoggedIn(true)
.then(result => {
if (!result) {
console.log(`User was not logged in.`);
} else {
console.log(`User was logged in. User details: ${JSON.stringify(result)}`)
}
});
登出
import { LoginKit } from "nativescript-snapkit";
LoginKit.logout()
.then(() => console.log("Logged out"));