React-native-onesignal: 无效的配置,新的 React Native 版本

创建于 2019-07-19  ·  16评论  ·  资料来源: OneSignal/react-native-onesignal

描述:

新的 React Native 版本给了我休耕警告:

warn Package react-native-onesignal has been ignored because it contains invalid configuration. Reason: Unknown option dependency.platforms.ios.sourceDir with value ""./ios"" was found. This is either a typing error or a user mistake. Fixing it will remove this message.

环境

"react": "16.8.6",
"react-native": "0.60.3",
"react-native-onesignal": "^3.2.14",

重现问题的步骤:

  1. 使用 npm 将 OneSignal SDK 安装到您的项目中
  2. 构建项目
  3. 检查日志
Help Wanted Maintenance Issue

最有用的评论

我使用 0.60 解决了这个问题,现在通过在 app/build.gradle 中执行此操作来进行喷射。 不确定新的 IAM 内容是否有效,但其他一切似乎都正常。

    implementation (project(':react-native-onesignal')) {
        exclude group: 'com.android.support', module: 'cardview-v7'
    }

    implementation "androidx.cardview:cardview:1.0.0"

所有16条评论

0.60.4 上的相同问题

@blueromans临时解决方案是手动链接,0.60.4

@TolgaCagin你能描述一下你的方式吗? 因为我再次尝试手动链接。

@blueromans和往常一样,不要使用 react-native 链接,不要添加到 react-native-config.js ,只需手动将所需的行添加到 settings , app/build.gradle MainApplication.java

@blueromans和往常一样,不要使用 react-native 链接,不要添加到 react-native-config.js ,只需手动将所需的行添加到 settings , app/build.gradle MainApplication.java

那也行不通。

也不能手动链接。
请问有人有解决方案吗?
这是一个严重的问题
把招工广告

大家好,
我们将很快发布带有修复程序的最新版本的 react-native SDK。 如果您现在想测试更改,只需将 package.json 中的 react-native-onesignal 更改为指向此存储库。

"react-native-onesignal":"geektimecoil/react-native-onesignal"

希望在发布之前听到您的反馈。 干杯!

编辑:请忽略这一点,因为插件现在已被推送到 NPM

更新库后,我在构建时遇到了问题
找不到 androidx。 卡视图:卡视图:28.0.0。
这个怎么解决??

大家好,
我们将很快发布带有修复程序的最新版本的 react-native SDK。 如果您现在想测试更改,只需将 package.json 中的 react-native-onesignal 更改为指向此存储库。

"react-native-onesignal":"geektimecoil/react-native-onesignal"

希望在发布之前听到您的反馈。 干杯!

我会看到并回复你,只是片刻......

[更新]

没用,看日志

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':app:preDebugBuild'.
> Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'.
   > Could not find androidx.cardview:cardview:28.0.0.
     Required by:
         project :app > project :react-native-onesignal
   > Could not find androidx.cardview:cardview:28.0.0.
     Required by:
         project :app > project :react-native-onesignal > com.onesignal:OneSignal:3.11.1

我在 react-native 0.60.4 和 react-native-onesignal 3.3.0 遇到了这个问题:

Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_RCTOneSignalExtensionService", referenced from: objc-class-ref in NotificationService.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

我使用 0.60 解决了这个问题,现在通过在 app/build.gradle 中执行此操作来进行喷射。 不确定新的 IAM 内容是否有效,但其他一切似乎都正常。

    implementation (project(':react-native-onesignal')) {
        exclude group: 'com.android.support', module: 'cardview-v7'
    }

    implementation "androidx.cardview:cardview:1.0.0"

我使用 0.60 解决了这个问题,现在通过在 app/build.gradle 中执行此操作来进行喷射。 不确定新的 IAM 内容是否有效,但其他一切似乎都正常。

    implementation (project(':react-native-onesignal')) {
        exclude group: 'com.android.support', module: 'cardview-v7'
    }

    implementation "androidx.cardview:cardview:1.0.0"

谢谢! 这样做,我能够建立("react-native-onesignal": "^3.3.0")

嗯,一些观察...

在 Android Studio 上,即使构建成功,我也遇到了一些错误(我丢失了日志),但我必须执行以下步骤https://stackoverflow.com/a/49645970/1958882。

而且,通过 react native 命令react-native run-android ,即使构建成功我也得到了

error React Native CLI uses autolinking for native dependencies, but the following modules are linked manually:
  - react-native-onesignal (to unlink run: "react-native unlink react-native-onesignal")
This is likely happening when upgrading React Native from below 0.60 to 0.60 or above. Going forward, you can unlink this dependency via "react-native unlink <dependency>" and it will be included in your app automatically. If a library isn't compatible with autolinking, disregard this message and notify the library maintainers.

现在我要看看推送通知是否有效......

[更新]

是的,推送通知有效!

大家好,
Jetifier 应该自动处理这个问题,所以它不能按预期工作。 请仔细检查您是否正确遵循了AndroidX 迁移说明

大家好,
Jetifier 应该自动处理这个问题,所以它不能按预期工作。 请仔细检查您是否正确遵循了AndroidX 迁移说明

只是要清楚,

我不是在迁移,但我正在使用新的 react-native 版本开始一个新项目,所以 AndroidX 已经设置好了。

android.useAndroidX=true
android.enableJetifier=true

另外,我一直在运行"postinstall": "npx jetify"

@rochapablo我无法重现“找不到androidx.cardview:cardview :28.0.0”。 你看到的错误。 您能否提供一个示例应用程序的链接和/或在新问题中重现它的确切步骤?

关闭此问题,因为原始“警告包 react-native-onesignal 已被忽略,因为它包含无效配置”现在已在3.3.0 版本中修复

如果您在更新到 3.3.1 后仍然看到任何问题,请创建一个新问题

@乔什卡斯滕
生成生成但用户可以注册到一个信号

获取 Outlook for Android https://aka.ms/ghei36


来自:Josh Kasten [email protected]
发送时间:2019 年 7 月 26 日,星期五 1:23:37 PM
致:geektimecoil/react-native-onesignal [email protected]
抄送:yogeshmoradiya121 [email protected] ; 评论[email protected]
主题: Re: [geektimecoil/react-native-onesignal] 无效配置,新的 React Native 版本 (#805)

关闭 #805 https://github.com/geektimecoil/react-native-onesignal/issues/805


您收到此消息是因为您发表了评论。
回复此电子邮件直接,查看它在GitHub上https://github.com/geektimecoil/react-native-onesignal/issues/805?email_source=notifications&email_token=AGURPRM6WSYUEA24ZQNPEN3QBKUQDA5CNFSM4IFE6DT2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOSW3IO3Q#event-2511767406 ,或静音线程的https:// github上。 com/notifications/unsubscribe-auth/AGURPRNAHFNINRKIC3HJ54DQBKUQDANCNFSM4IFE6DTQ

此页面是否有帮助?
0 / 5 - 0 等级