- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我添加这些之前,我在 React Native 中使用 android
成功构建:
"appcenter-analytics": "2.1.0",
"appcenter-crashes": "2.1.0",
我在:
"react": "16.8.6",
"react-native": "0.60.4",
错误是:
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 Note: /Users/danale/Projects/NFIBEngage/node_modules/react-native-sentry/android/src/main/java/io/sentry/RNSentryModule.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. /Users/danale/Projects/NFIBEngage/android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:60: error: cannot find symbol new AppCenterReactNativeAnalyticsPackage(MainApplication.this, getResources().getString(R.string.appCenterAnalytics_whenToEnableAnalytics)), ^ symbol: class MainApplication location: class PackageList /Users/danale/Projects/NFIBEngage/android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:60: error: cannot find symbol new AppCenterReactNativeAnalyticsPackage(MainApplication.this, getResources().getString(R.string.appCenterAnalytics_whenToEnableAnalytics)), ^ symbol: variable appCenterAnalytics_whenToEnableAnalytics
location: class string /Users/danale/Projects/NFIBEngage/android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:61: error: cannot find symbol new AppCenterReactNativeCrashesPackage(MainApplication.this, getResources().getString(R.string.appCenterCrashes_whenToSendCrashes)), ^ symbol: class MainApplication location: class PackageList /Users/danale/Projects/NFIBEngage/android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:61: error: cannot find symbol new AppCenterReactNativeCrashesPackage(MainApplication.this, getResources().getString(R.string.appCenterCrashes_whenToSendCrashes)), ^ symbol: variable appCenterCrashes_whenToSendCrashes location: class string 4 errorsFAILURE: Build failed with an exception.
- What went wrong: Execution failed for task ':app:compileDebugJavaWithJavac'.
Compilation failed; see the compiler error output for details.
显然,这个 android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java
文件在旧版本中不存在应用:
package com.facebook.react;
import android.app.Application;
import android.content.Context;
import android.content.res.Resources;
import com.facebook.react.ReactPackage;
import com.facebook.react.shell.MainReactPackage;
import java.util.Arrays;
import java.util.ArrayList;
import com.nfibengage.BuildConfig;
import com.nfibengage.R;
// @react-native-community/async-storage
import com.reactnativecommunity.asyncstorage.AsyncStoragePackage;
// appcenter-analytics
import com.microsoft.appcenter.reactnative.analytics.AppCenterReactNativeAnalyticsPackage;
// appcenter-crashes
import com.microsoft.appcenter.reactnative.crashes.AppCenterReactNativeCrashesPackage;
// react-native-sentry
import io.sentry.RNSentryPackage;
// react-native-splash-screen
import org.devio.rn.splashscreen.SplashScreenReactPackage;
public class PackageList {
private Application application;
private ReactNativeHost reactNativeHost;
public PackageList(ReactNativeHost reactNativeHost) {
this.reactNativeHost = reactNativeHost;
}
public PackageList(Application application) {
this.reactNativeHost = null;
this.application = application;
}
private ReactNativeHost getReactNativeHost() {
return this.reactNativeHost;
}
private Resources getResources() {
return this.getApplication().getResources();
}
private Application getApplication() {
if (this.reactNativeHost == null) return this.application;
return this.reactNativeHost.getApplication();
}
private Context getApplicationContext() {
return this.getApplication().getApplicationContext();
}
public ArrayList<ReactPackage> getPackages() {
return new ArrayList<>(Arrays.<ReactPackage>asList(
new MainReactPackage(),
new AsyncStoragePackage(),
new AppCenterReactNativeAnalyticsPackage(MainApplication.this, getResources().getString(R.string.appCenterAnalytics_whenToEnableAnalytics)),
new AppCenterReactNativeCrashesPackage(MainApplication.this, getResources().getString(R.string.appCenterCrashes_whenToSendCrashes)),
new RNSentryPackage(),
new SplashScreenReactPackage()
));
}
}
MainApplication.java
文件位于 android/main/java/com/nfibengage/MainApplication.java
中:
package com.nfibengage;
import android.app.Application;
import android.util.Log;
import com.facebook.react.PackageList;
import com.facebook.hermes.reactexecutor.HermesExecutorFactory;
import com.facebook.react.bridge.JavaScriptExecutorFactory;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.soloader.SoLoader;
import java.util.List;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index";
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
SoLoader.init(this, /* native exopackage */ false);
}
}
我尝试将它导入到 PackageList.java
中,如下所示:
import com.nfibengage.MainApplication;
但我继续得到同样的错误。如果有人能告诉我这个 PackageList.java
文件是从哪里来的,我如何才能让它再次工作,而不是完全删除 appcenter-analytics
和 appcenter -崩溃
。
最佳答案
请确保您的安装顺序与以下相同。
添加 App Center SDK 模块
npm install appcenter appcenter-analytics appcenter-crashes --save-exact
或
yarn add appcenter appcenter-analytics appcenter-crashes --exact
自动集成SDK
react-native link appcenter
react-native link appcenter-analytics
react-native link appcenter-crashes
App Center SDK 不会在链接过程中自动为 App Center 模块设置模拟。如果您在应用程序中使用 Jest 测试框架,并且在使用 Jest 运行测试时遇到由 App Center SDK 引起的错误,请将以下内容添加到 的 jest 部分package.json
文件(仅包含正在使用的模块):
"setupFiles": [
"<rootDir>/node_modules/appcenter/test/AppCenterMock.js",
"<rootDir>/node_modules/appcenter-analytics/test/AppCenterAnalyticsMock.js",
"<rootDir>/node_modules/appcenter-crashes/test/AppCenterCrashesMock.js",
"<rootDir>/node_modules/appcenter-push/test/AppCenterPushMock.js"
]
编辑项目的 android/app/src/main/assets/appcenter-config.json
并将 YOUR_APP_SECRET
占位符值替换为您的 App Center 项目的应用程序 secret 。
关于java - React Native : error: cannot find symbol > new AppCenterReactNativeAnalyticsPackage(MainApplication. 这个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57152499/
我的应用程序有一些小部件,在新版本的应用程序中,这些小部件需要一些额外的数据。我在 MainApplication.java 中获取了这些数据,但我担心当用户更新时,如果他们不手动打开应用程序,Mai
每次我尝试react-native link一个新库,我收到相同的错误消息。这是用于 react-native-video 的。 rnpm-install info Linking react-nat
我有一个带有 Activity、服务和广播接收器的 Android 应用程序。我从服务中调用了一个有效的广播 Intent 。广播接收器正确接收 Intent 。 但是我如何从我的类 MyBroadc
我正在尝试使用来自-https://razorpay.com/docs/payment-gateway/react-native-integration/standard/android/ 的官方文档
我正在尝试创建我的第一个内存游戏。 由于我的问题here的回答,我最近发现了如何让它工作。 。工作代码发布在同一个链接中,但现在我试图将小部件和主应用程序类分开,1)因为我认为这样更好,2)因为我想更
伙计们 我正在尝试安装 react-native-reanimated,但我一直收到此错误。 C:\Users\danilojldeo\Desktop\MeuGithub\controle-de-pr
仍然需要一个手动步骤 - 在项目文件 android/app/src/main/java/myapp/MainApplication.java 中,将以下内容添加到 onCreate() 方法的末尾:
我正在将我的项目从 React Native 0.59.9 迁移到 0.61.0(不可取,但我有自己的理由)。在我现有的项目中,MainApplication.java 中有以下代码: @Overri
我安装了 react 原生导航并按照步骤操作。适用于 iOS。安卓上不行。 在更新“MainApplication.java”文件后运行 react-native run-android 时出现此错误
在我添加这些之前,我在 React Native 中使用 android 成功构建: "appcenter-analytics": "2.1.0", "appcenter-crashes":
我退出了世博会,并尝试 react-native run-android,我收到了这个错误; FAILURE: Build failed with an exception. * Where: Scr
我在我的应用程序中配置了 react-native-firebase 和 crashlytics。 iOS 构建成功。 但是当我运行 react-native run-android第二次在手机中安装
我是一名优秀的程序员,十分优秀!