当前位置: 首页 > 知识库问答 >
问题:

React native和onesignal通知问题

查宜修
2023-03-14

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

#import "AppDelegate.h"

#import <React/RCTBridge.h>
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions];
  RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge
                                                   moduleName:@"doyurunbenicomproje"
                                            initialProperties:nil];

  rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1];

  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
  UIViewController *rootViewController = [UIViewController new];
  rootViewController.view = rootView;
  self.window.rootViewController = rootViewController;
  [self.window makeKeyAndVisible];
  return YES;
}

- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
#if DEBUG
  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#else
  return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif
}

@end

共有2个答案

伯晨
2023-03-14

kOSSetting sKeyInFocus usDisplayOption=2我添加了此代码,通知将显示为正常通知。

孙嘉
2023-03-14
  1. 在6s和6plus之间检查您的操作系统版本。
  2. 如果应用程序是前台,通知将显示在您的屏幕上,如果应用程序是后台,通知将显示在上面。

编辑将此代码添加到AppDelegate。m

 (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
    NSLog(@"didFailToRegisterForRemoteNotificationsWithError %@", error);
}
 类似资料:
  • 我正在制作一个带有oneSignal推送通知的react原生应用程序。我只想在收到通知时更改屏幕。如果应用程序位于前台或单击通知,我可以这样做。如果应用程序关闭或处于后台,我将如何触发此操作?

  • 我已经检查了react native onesignal github README,似乎获得通知的唯一方法是通过onNotificationOpen()回调打开。 他们的文件表明: 当打开或接收到任何通知时,调用回调传递带有通知数据的对象。 但是,显然不起作用。 有没有办法在不打开推送通知或启用应用内警报通知的情况下获取通知?

  • 我使用单信号推送通知。当android应用程序在前台收到通知时,它会创建一个带有通知的警报框。如何防止在收到通知时出现这种情况?

  • 我已经使用IBM Worklight在真实设备上部署了Android应用程序。我已经在Android emulator上启用了推送通知和所有功能,但在真实设备上我看到了以下弹出窗口: 注册推送通知失败。应用程序将无法接收通知。 在LogCat中,此消息: 推送通知将不起作用,因为向GCM服务注册/注销时返回错误身份验证\u错误 在android设备上,senderId的同一个gmail帐户被同步。

  • 我在项目中设置了react native onesignal,以使用onesignal实现推送通知。 从Xcode 11.4 Beta开始,可以在iOS模拟器上测试推送通知。我创建了JSON格式的apns文件来测试模拟器上的推送通知,它运行得非常好。 但我如何模拟OneSignal推送通知呢? 我遵循OneSignal文档并希望接收从OneSignal仪表板发送的推送通知。 以下是我在应用程序上实

  • 我用Unity3D制作了一个游戏/应用程序,需要设置一个推送通知的OneSignal。它在Android上工作得很好,我已经测试并发布了它。现在,用iOs真实设备测试给了我一个例外,并使我的应用程序崩溃。 我遵循了他们在这里找到的实现步骤:https://documentation.onesignal.com/docs/unity-sdk-setup 我试过在iPhone7 Plus、iPad和模