pod reactnative 报错_hephotopicker pod 报错 - CSDN
精华内容
参与话题
  • 第一次安装环境创建工程 pod install 出现 glog 脚本报错. 执行 sudo xcode-select --switch /Applications/Xcode.app 即可

    第一次安装环境创建工程 pod install 出现 glog 脚本报错.
    执行 sudo xcode-select --switch /Applications/Xcode.app 即可

    展开全文
  • 1. ReactNative pod install卡在boost-for-react-native 解决办法:在ios目录下Podfile文件中,头部加入以下代码,再pod install就可以下载下来了。 pod 'boost-for-react-native', :git => '...

    1. ReactNative pod install卡在boost-for-react-native

    解决办法:在ios目录下Podfile文件中,头部加入以下代码,再pod install就可以下载下来了。

    pod 'boost-for-react-native', :git => 'https://gitee.com/damon-s/boost-for-react-native.git’

    2. 启动时报:java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7

    解决办法:将文件android/gradle/wrapper/gradle-wrapper.properties中的distributionUrl改成如下配置:

    distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip

     

    展开全文
  • React Native报错收集

    2018-10-26 16:42:30
    React Native报错收集 1. Native module cannot be null 解决方法: podfile里面缺少相关的React tive相关模块, 添加对应的module,然后pod install即可 NativeModules引入原生module类时,导入信息不对,看看...

    React Native报错收集

    1. Native module cannot be null

    在这里插入图片描述

    解决方法:

    1. podfile里面缺少相关的React tive相关模块, 添加对应的module,然后pod install即可

    在这里插入图片描述

    1. NativeModules引入原生module类时,导入信息不对,看看是不是原生界面对应的类名

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • ReactNative 错误收集 (Bugly)

    千次阅读 热门讨论 2018-07-20 15:32:20
    在使用的时候在网上找了一下,发现有一个插件(https://github.com/canyara/react-native-bugly)。至于这个插件的使用,我估计我的道行不够吧,总之搞不通。然后在直接按照官方的文档配置的,可以统计了。  本文分...

    一、概述

          APP的错误收集产品有很多,例如友盟统计、阿里云等。本文讨论的是由腾讯开发的Bugly。在使用的时候在网上找了一下,发现有一个插件(https://github.com/canyara/react-native-bugly)。至于这个插件的使用,我估计我的道行不够吧,总之搞不通。然后在直接按照官方的文档配置的,可以统计了。

        本文分三部分:第一部分是讲解原理、第二部分是原理讲解、第三部分是配置并演示。

    二、原理讲解

    2.1 ReactNative 的编译模式

         在 ReactNative 的程序中,实际上运行的是 Js 的代码,而它也是分 Debug 和 Release 的。

        在 Debug 模式下,会从本地开启一个 Packager 服务,然后 App 运行起来之后,直接从服务里拉取最新的编译后的 JS 代码,这样可以在开发阶段,做到代码实时更新的效果,只需要在设备上,重新 Load 一下即可。  

         在 Release 模式下,ReactNative 会将 JS 代码,整体打包,然后放到 assets 目录下,然后从这里去加载 JS 代码。

        这样的逻辑被封装在 ReactInstanceManager 类的 recreateReactContextInBackgroundInner() 方法中,有兴趣可以自行看看。

        ReactNative 在 Debug 的情况下,如果出现崩溃的 Bug,会直接出现红屏,提示你崩溃的栈的具体信息,这些内容可以帮助你快速的定位问题。如果在Release模式下,则出现闪退(或者ANR)。

    2.2 Release 版本说明:

         Android 举例:

             Android打包时会把,所有的JS文件,混淆并且压缩到asstes文件夹下的index.android.bundle中。图:2.2-1

        该文件生成的原理是ReactNative使用了如下命令处理(node/modules/react.gradle 代码片段)

          if (Os.isFamily(Os.FAMILY_WINDOWS)) {
                 commandLine("cmd", "/c", *nodeExecutableAndArgs, cliPath, bundleCommand, "--platform", "android", "--dev", "${devEnabled}",
                "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, *extraArgs)
          } else {
                commandLine(*nodeExecutableAndArgs, cliPath, bundleCommand, "--platform", "android", "--dev", "${devEnabled}",
                "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, *extraArgs)
           }

    2.3 报错说明(此处只说明原理,实现在第三章讲解)

        对于Debug模式下,报错了直接红屏并显示报错的地方。但是Release模式应用程序报错则程序就崩溃了,无法查得原因。因此集成Bugly进行Bug收集。而使用Bugly收集Bug时得到是混淆并压缩版的错误,这样无法定位到错误的地方。

        从图中可以看出报错的是344行、868列(value@334:868),报错原因是找不到变量(Can't find variable...),然后我们找到3.2步骤的压缩文件相应的地方。

        可以在文件中找到了此处,这里能看到是Button找不到,但是这只是一个演示Demo当,内容不懂。当项目大了内容就多了,一个一个Button的找?所以得找到映射文件。细节将在第三章讲解。

    三、配置、演示

        切入正题,配置项目,集成Bugly。

    3.1 前往Bugly配置APP信息

     (使用QQ登录,然后配置APP信息获取APP ID,傻瓜式的操作很容易)           

        地址:https://bugly.qq.com

     3.2  Android项目配置

              3.2.1 在android/app/build.gradle配置内容如下:

            android {
              ...
              defaultConfig {
              ...
              ndk {
                  abiFilters "armeabi-v7a", "x86"
              }
              packagingOptions {
                  exclude "lib/arm64-v8a/libimagepipeline.so"
              }
           }
           ...
    
          dependencies {
             ...
             compile 'com.tencent.bugly:crashreport:latest.release' //其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如2.2.0
            compile 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.0
          }
    

              3.2.2 在MainApplication.java中修改如下:

                     导入包

               import com.tencent.bugly.crashreport.CrashReport;

                    在onCreate()方法中添加:

             @Override
             public void onCreate() {
               super.onCreate();
               CrashReport.initCrashReport(getApplicationContext(), "f7b76b8463", false); //添加此句话 f7b76b8463 为App Id
               ...
             }

           3.2.3 在AndroidManifest.xml中添加权限

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_LOGS" />

          3.2.4 运行示例

               此处使用的测试Demo,大家可以自行搞一个报错的进行演示。在DetailsScreen下使用Button组件,在此我将,Button不引入,导致报错

     

                 将此APP签名打包,运行时点击详情页,程序闪退。 打开Bugly的控制台,可以看到如下错误,在@342:1028 (分别表示行列)。

                 然后在项目的根目录执行如下命令:(此处是生成映射文件)

    $ react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ --sourcemap-output android-release.bundle.map

                 此时你会发现在项目的根目录中出现android-release.bundle.map文件,打开可以看到里面就是assets下的index.android.bundle映射文件。

                 在项目根部新建文件analyze/analyzeAndroid.js(此处的目的是使用node自带的解析功能个)

                  在文件中添加内容如下:

    var sourceMap = require('source-map');
    var fs = require('fs');
    
    fs.readFile('../android-release.bundle.map', 'utf8', function (err, data) {
        var smc = new sourceMap.SourceMapConsumer(data);
    
        console.log(smc.originalPositionFor({
            line: 344, //报错的行
            column: 868 //报错的列
        }));
    });

                   运行JS会得到如下的内容:

                  可以看到定位到报错的地方。

    3.3 IOS 的配置

        3.3.1 在ios目录下新建文件Podfile

               填入如下内容:       

          target:"NavigationActions" do
          pod 'Bugly'
          end

                NavigationActions为项目名,Bugly为添加的依赖,然后进入ios目录下,运行命令:$ pod install    (注意:执行此命令时请关闭所有Xcode的会话,模拟器一并关闭,防止撞鬼)      

         3.3.2 使用Xcode打开文件项目

                 打开项目后点击Product --> Clean  然后 再  Product --> Build (注意此步非常重要,因为新增了Bugly库,不Build的项目会报错) 

                 Build后会提示错误:Library not fount for -LPods-项目名称     例如下图。

                 解决方案:

                   移除报错的Library,然后重新Clean  Build即可。

                   打开AppDelegate.m文件             

             在图中的位置添加图中的内容,#import <Bugly/Bugly.h>; 和 [Bugly startWithAppId:@"bf1eb7a4a9"];(bf1eb7a4a9为APP ID  注意IOS的Id和Android的ID不一样)。

              在Xcode的菜单栏中,选择Product --> Schame --> Edit Schame ...

               运行Release版本。运行设备上,同样点击详情按钮,出现闪退。

        3.3.3 运行示例

            在Bugly控制台中可以看到如下的错误:

              可以看到报错的行列分别是 344行 868列。         

              在项目的根目录下运行命令(此处是生成映射文件)

    $ react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ios-release.bundle --sourcemap-output ios-release.bundle.map

              在项目的根目录中可以看到多了个文件ios-release.bundle,接着在项目根部新建文件analyze/analyzeIOS.js(此处的目的是使用node自带的解析功能个)

                  在文件中添加内容如下:

    var sourceMap = require('source-map');
    var fs = require('fs');
    
    fs.readFile('../ios-release.bundle.map', 'utf8', function (err, data) {
        var smc = new sourceMap.SourceMapConsumer(data);
    
        console.log(smc.originalPositionFor({
            line: 344, //报错的行
            column: 868 //报错的列
        }));
    });

                   运行JS会得到如下的内容:

                  可以看到定位到报错的地方。

    四、写在后面的话

           为了方便打击更快集成Bugly所以写下了这篇文章。创作不易,如果这边文章对您有所帮助,就帮我点个赞,鼓励下我吧。

           最后感谢@承香墨影的博客的博客,本文很多地方出自他的内容,谢谢作者。

    传送门:

        @承香墨影的博客的文章:https://blog.csdn.net/plokmju88/article/details/78519317#commentBox

       Bugly的首页:https://bugly.qq.com

       Android配置指南:https://bugly.qq.com/docs/user-guide/instruction-manual-android/?v=20180709165613

       IOS配置指南:https://bugly.qq.com/docs/user-guide/instruction-manual-ios/?v=20180713114028

    展开全文
  • ReactNative0.61版本CocoaPods填坑

    千次阅读 2020-01-06 16:04:01
    ReactNative从0.60之后IOS加入了CocoaPods,之前一直没跑起来,但是因为并不准备更新所以没管. 最近准备做一个新项目,考虑到上一个app中被androidX玩的天昏地暗的,这次准备尝试一下新版本. 然而init的时候就卡在了...
  • React Native 报错处理

    2016-11-03 10:33:27
    因项目需要,开始写RN。刚开始本地开始写,后来整理传到SVN,换...reactnative run-ios运行,会报错:error: PCH was compiled with module cache path '/Users/ralbatr/Documents/xxx/ios/build/ModuleCache/1MFRCF
  • React Native 报错: Native animated module is not available 打开podfile文件,添加'RCTAnimation'库,保存后pod install安装即可
  • 前段时间项目时间紧张,ios端因为pod文件冲突,没有使用ios模拟器开发,今天见打算搞一下这个问题。 解决过程主要是如下两个步骤:首先删除项目ios目录下的Pods文件夹,然后...在ReactNative项目根目录运行命令react...
  • 使用pod安装,可能会因为Podfile的路径指向错误或者没有路径指向因为报错报错截图如下: 这是因为在指定的路径没有寻找到相应的组件。此时就需要修改podfile文件中的路径,由于上方提示没有Yoga,那我们就指定...
  • 安装失败报一堆错误,Xcode设置下: 修改镜像源,请参考这里:https://mirror.tuna.tsinghua.edu.cn/help/CocoaPods/; 使用移动网络4g网络或者【越-过-高-墙】。 成功后记得备份!!!......
  • 报错原因是因为pod install时没有找到对应react-native目录下的.podspec文件 导致错误有两种可能: node_mudules/react-native目录下有.podspec文件,但和Podfile依赖文件里定义的名字不符 node_modules/react-...
  • podfile文件在项目reactNative 根目录下的ios文件夹里 vim /ios/Podfile podfile文件中指定source源: source 'https://github.com/CocoaPods/Specs.git' 或者指定为国家不错的镜像站【推荐】 source '...
  • React Native 报错

    2019-02-27 21:42:24
    收集报错问题 一. TransformError: Unexpected token错误 这与babel-preset-react-native模块有关。尝试运行, yarn remove babel-preset-react-native yarn add babel-preset-react-native@2.1.0 或者如果您使用...
  • react-native link 报错

    2019-09-13 10:43:19
    react-native link (0.50版本后) rnpm-install info Linking react-native-picker ios dependency rnpm-install ERR! Something went wrong while linking. E...
  • 以下内容基于 react-native-firebase 版本4.1 安装 iOS安装 首先确保您已遵循。初始设置指南 Add the pod 将以下内容添加到您的Podfile: pod 'Firebase/Auth' run pod update。 如果您打算使用电子...
  • React Native for Android项目引入备注   jcenter上react native 最高版本只有0.20.1   react native 首先需要安装homebrew node.js 那一套软件之后在index.android.js中编写入口   react native 引入...
  • 前面说过,React Native作为一个全新的跨平台开发框架,好多东西还不是很成熟,很多原生的控件还不是很完善,于是好多爱好者便自己封装相关的组件,可以使用oc来封装,也可以使用Swift来封装。关于封装的原理,大家...
  • https://reactnative.cn/docs/getting-started/ 2.iso报错 2.1运行react-native run-ios报错Error: Could not find iPhone X simulator 由于没有找到iPhone X模拟器,不清除为啥XCode并没有自带 ...
  • 前提条件是,电脑上已经安装了CocoaPods,React Native相关环境。 1.先用pod search React 命令 寻找React,看看约束有哪些以及导入语句 ...target ’Cocoapod导入ReactNative’ do //Cocoapod导入React
  • 刚接触React Native,安装配置好所有的环境,创建的第一个应用时报了如下错误:  Cannot find module 'invariant' 搞了半天没搞好,在网上搜了果然有遇到这个问题的,有的说卸掉npm,node,nvm之后重装,觉得不...
1 2 3 4 5 ... 16
收藏数 316
精华内容 126
关键字:

pod reactnative 报错