React Native:错误:资源android:style / TextAppearance.Mate
我正在尝试为我的React Native
Android项目进行Facebook登录,当我尝试使用react-native run-android构建它时,我收到此错误.
我一开始认为这是我的Gradle版本的一个问题,因为React Native安装了Gradle 2.14,我自从升级到Gradle 4.4. 我多次通过Facebook安装指南,我仍然收到此错误.我还检查了我的代码,以确保我没有使用任何错误的字体/ fontWeight / fontStyle.我唯一能想到的是来自标准组件的Facebook按钮在那里有不受支持的样式?我不确定. 任何帮助将不胜感激.我的这个时间比我想承认的要长! MainActivity.java文件 package com.myproj; import android.content.Intent; import com.facebook.react.ReactActivity; import com.facebook.reactnative.androidsdk.FBSDKPackage; import com.facebook.FacebookSdk; public class MainActivity extends ReactActivity { /** * Returns the name of the main component registered from JavaScript. * This is used to schedule rendering of the component. */ @Override protected String getMainComponentName() { return "myproj"; } @Override public void onActivityResult(int requestCode,int resultCode,Intent data) { super.onActivityResult(requestCode,resultCode,data); MainApplication.getCallbackManager().onActivityResult(requestCode,data); } } MainApplication.java文件 package com.myproj; import android.app.Application; import com.facebook.react.ReactApplication; import com.facebook.reactnative.androidsdk.FBSDKPackage; import com.facebook.reactnative.androidsdk.FBSDKPackage; import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.react.shell.MainReactPackage; import com.facebook.soloader.SoLoader; import com.facebook.CallbackManager; import com.facebook.FacebookSdk; import com.facebook.appevents.AppEventsLogger; import java.util.Arrays; import java.util.List; public class MainApplication extends Application implements ReactApplication { private static CallbackManager mCallbackManager = CallbackManager.Factory.create(); protected static CallbackManager getCallbackManager() { return mCallbackManager; } private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; } @Override protected List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new MainReactPackage(),new FBSDKPackage(mCallbackManager) ); } @Override protected String getJSMainModuleName() { return "index"; } }; @Override public ReactNativeHost getReactNativeHost() { return mReactNativeHost; } @Override public void onCreate() { super.onCreate(); AppEventsLogger.activateApp(this); } } myProj / android / build.gradle文件 // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { mavenLocal() jcenter() maven { // All of React Native (JS,Obj-C sources,Android binaries) is installed from npm url "$rootDir/../node_modules/react-native/android" } } } 我得到的错误: > Configure project :app WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation'. It will be removed at the end of 2018 > Configure project :react-native-fbsdk WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation'. It will be removed at the end of 2018 WARNING: The specified Android SDK Build Tools version (26.0.2) is ignored,as it is below the minimum supported version (27.0.3) for Android Gradle Plugin 3.1.0. Android SDK Build Tools 27.0.3 will be used. To suppress this warning,remove "buildToolsVersion '26.0.2'" from your build.gradle file,as each version of the Android Gradle Plugin now has a default version of the build tools. error: resource android:style/TextAppearance.Material.Widget.Button.Borderless.Colored not found. error: resource android:style/TextAppearance.Material.Widget.Button.Colored not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values-v26/values-v26.xml:9:5-12:13: AAPT: error: resource android:attr/colorError not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values-v26/values-v26.xml:13:5-16:13: AAPT: error: resource android:attr/colorError not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values-v26/values-v26.xml:17:5-93: AAPT: error: style attribute 'android:attr/keyboardNavigationCluster' not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values/values.xml:252:5-69: AAPT: error: resource android:attr/fontStyle not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values/values.xml:252:5-69: AAPT: error: resource android:attr/font not found. /Users/me/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.2.aar/a1a4a045a3ea2f70ae16170c81e2001d/res/values/values.xml:252:5-69: AAPT: error: resource android:attr/fontWeight not found. error: failed linking references. FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:processDebugResources'. > Failed to process resources,see aapt output above for details. 全面的混淆 – Facebook在RN设置指南中告诉你目标SDK 23或6.0但是然后反应原生fbsdk的node_modules文件夹中的目标SDK更高,因此给了我警告
不记得我选择了哪个,但如果你感到鲁莽,你可以通过添加以下内容强制库到同一个sdk:
subprojects { afterEvaluate {project -> // force libs to use recent buildtools if (project.hasProperty("android")) { android { compileSdkVersion = 27 // change to match your desired version buildToolsVersion = "27.0.3" // .... } } } } 到你的root android / build.gradle.在一次react-native-git-upgrade之后,到目前为止还没有让我失望.因人而异 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |