我想在expo项目中添加onesignal推送通知。
但是,我需要添加这样的内容:
buildscript {
repositories {
gradlePluginPortal()
}
dependencies {
classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.10, 0.99.99]'
}
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
到
应用程序/build.grandle
但是expo项目不包含build.grandle文件夹
我该如何处理这个问题
OneSignal 添加了对 Expo bare 工作流程的支持,如何安装请参阅官方文档:https://documentation.onesignal.com/docs/react-native-expo-sdk-setup
简短的回答是 你不能。
如果您想在 expo 中使用 OneSignal,您必须弹出到裸工作流程。以下是 OneSignal 文档的链接:必须弹出到裸工作流程
Native Notify (https://nativenotify.com) 是我所知道的唯一可与 Expo 配合使用的 Expo 推送通知服务。
我认为 Native Notify 是专门为世博会豪华通知服务而设计的。
设置起来非常简单。我在 5 分钟内就设置好了。
请按照以下步骤操作:
expo install onesignal-expo-plugin
npm install --save react-native-onesignal
在你的app.json中添加
{
"plugins": [
[
"onesignal-expo-plugin",
{
"mode": "development",
}
]
]
}
运行
npx expo prebuild
在一个终端中运行此
npx expo start --dev-client
然后在另一个终端运行这个
npm run android
现在将其添加到您的代码中
import { LogLevel, OneSignal } from "react-native-onesignal";
OneSignal.Debug.setLogLevel(LogLevel.Verbose);
OneSignal.initialize("Your-Api-Key");
const player_id = OneSignal.User.pushSubscription.getPushSubscriptionId();