React Native真机报错

  1. Warning: unable to build chain to self-signed root for signer
    看报错提示,似乎是签名错误

尝试1 可能是证书信任问题 去钥匙串 找到相应证书,并且设置为始终信任

尝试2 把相关证书的信任改成默认值,问题解决了

  1. 打包release时,提示Use of undeclared identifier 'GADMobileAds'

问题描述: 接入了admob广告sdk,模拟器上运行无问题,但是去打包release版本的时候,提示GADMobileAds是未定义的变量(appDelegate.m)

解决尝试1: 可能是包没安装上,运行cmd + shift + k 清除编译记录,删除node_modules和ios下的Pods和Podfile.lock,重新运行yarn和npx pod-install

结果:未解决,仍然报一样的错误

解决尝试2: pod install --repo-update 不死心,再试试
失败

解决尝试3:去react-native-admob的issue和example里找找
无果

解决尝试4: debug无问题,release有问题,应该是打包的差异导致的
archieve的时候,打包方式改成debug,无问题,问题仍然需要解决

解决尝试5:
经过多种尝试,最终发现了问题所在!

#import "AppDelegate.h"

#import 
#import 
#import 

#ifdef FB_SONARKIT_ENABLED
#import 
#import 
#import 
#import 
#import 
#import 

@import GoogleMobileAds;

我原来的AppDelegate.m的头部长这样,但是release环境下FB_SONARKIT_ENABLED这个值是defined,导致import语句没有生效!只需要把@import GoogleMobileAds;移动到#ifndef....语句的前面即可!

你可能感兴趣的:(React Native真机报错)