美文网首页
React-Native 加载git下载项目(二)

React-Native 加载git下载项目(二)

作者: oc123 | 来源:发表于2018-04-03 14:27 被阅读0次

    已经搭建好了开发环境,现在要把从gitLab上下载的项目,重新搭建起来,请按如下步骤进行:

    第一步:在终端中切换到项目所在的目录,为项目安装npm,如图: npm安装到项目中.png
    npm install 
    

    如果项目有特别标注update需求:

    npm update --verbose
    

    如果要打印进程,则如下:

    npm install --verbose
    

    出现如下情况,可能是npm的权限问题(需要配置SSH免登陆文件):

    权限问题.png
    解决上面的问题,要在gitLab上配置SSH文件:https://blog.csdn.net/gulingfengze/article/details/69665223
    检测本机是否安装ssh服务,未安装时如截图:
    检测出本机未安装ssh服务.png

    注意:如果初始化时出现卡顿在如下如的情况

    一直卡在rollbackFailedOptional.png
    ...rollbackFailedOptional: verb npm-session...
    

    然后排除是否是由于代理问题,如果是下图这种就不是代理问题:

    查询代理.png
    npm config get proxy
    

    那就极有可能是网络问题了。
    输入如下命令检测一下:

    npm install express -g
    

    配置生成SSH文件后,还要开启SSH服务;Mac OS X系统已经默认安装了SSH,但是SSH服务并未启用,这样你就不能远程登录。
    启用SSH服务的方法,如图:


    步骤1.png
    步骤2.png

    进入“系统偏好设置”,找到“共享”,勾选“远程登录”,即可立即启动SSH服务,你可以在客户机上用ssh 用户名@Mac主机IP远程登录到这台Mac上。
    如果还有问题,改变一下node的版本看看是否可行;

    下载npm时,由于node版本比在gitLab上下载的项目所用的版本要高,可能出现如图情况: node版本比原版高.png

    给项目装好了npm之后,更新一下cocoapods:
    用终端进入项目中对应的iOS文件夹,输入:

    pod update --no-repo-update
    

    由于git上集成的pods库权限授权问题,可能出现,如下情况:


    git上的pods库没有给授权.png

    将未授权的,一一授权就可以了;

    注意:如果出现如下截图,说明npm没有开启,开启就好了;

    模拟器报错图.png

    终端进入项目所在文件夹,输入如下命令:

    npm start 
    

    附注:

    如果从网上下载别人的RN项目,出现如下报错: 下载RN项目报错截图.png

    按如下步骤解决:
    1.打开Mac里面的终端,进入项目所在的文件夹目录;
    2.把项目里面的 node_modules 文件夹删除掉(如果有的话),然后执行如下命令:

     npm install
    

    3.npm install安装完成后, 执行如下命令:

    react-native upgrade
    

    最后重新打开Xcode,clean一下,应该就没有问题了;

    终端执行下面命令出现其下情况

    react-native run-ios
    
    终端打印出现如下:
    Scanning 614 folders for symlinks in /Users/kaifa1/Desktop/git/项目文件夹/node_modules (15ms)
    Found Xcode workspace ishirble.xcworkspace
    xcrun: error: unable to find utility "instruments", not a developer tool or in PATH
    
    Command failed: xcrun instruments -s
    xcrun: error: unable to find utility "instruments", not a developer tool or in PATH
    
    解决方法,终端输入如下命令
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/
    

    如果执行react-native命令出现:-bash: react-native: command not found

    参考自:https://blog.csdn.net/weixin_33817333/article/details/86987415

    执行:

    sudo npm install -g react-native-cli
    

    出现:/usr/local/Cellar/node/11.14.0_1/bin/react-native -> /usr/local/Cellar/node/11.14.0_1/lib/node_modules/react-native-cli/index.js
    解决方法,执行:

    vim ~/.bash_profile
    

    修改文件内容,并保持退出

    export RN=/usr/local/Cellar/node/11.14.0_1/bin
    export PATH=$RN:$PATH
    

    使其生效:

    source ~/.bash_profile
    

    查看是否配置成功(如果显示出了刚刚放进去的路径,就是成功了,现在可以去初始化一个项目了):

    echo $PATH
    

    如果上述执行后,Xcode运行项目还报'RCTxxx.h' file not found

    模拟器执行command+R失效

    首先:确定xcode-->product-->Scheme-->Edit Scheme -->Run -->Build Configuration -->Debug

    其次:确定模拟器的 "Hardware > Keyboard" 的 "Connect Hardware Keyboard" 是勾选状态;

    关于react-native run-android运行安卓模拟器问题,错误如下图 run-android出错.png

    解决办法

    cd Library/
    open .
    

    进入Android的文件夹,将sdk的路径用终端显示出来,对比一下应该不一样;然后,进入项目中android文件夹找到local.properties文件,修改路径

    sdk.dir=/Users/你mac的用户名/Library/Android/sdk
    

    再次运行就好了。。。

    链接模拟器,运行
    adb connect 127.0.0.1:62001
    
    使用Android模拟器可能会遇到的问题:https://www.jianshu.com/p/b8b16c338d6e

    关于打包

    iOS:设置scheme:正式环境ishirble_release,开发环境ishirble,测试环境ishirble_test(根据自身配置)
    Android:终端进入android项目所在文件,输入如下命令:
    ./gradlew clean assembleReleaseStaging  //测试包
    ./gradlew clean assembleRelease //正式包
    ./gradlew clean assembleDebug  //打包测试
    // 需注意的是,项目创建时是否按这个规范进行,否则需另做处理
    
    Android APK获取路径:
    cd app/build/outputs/apk/
    

    ios命令打包:

    // 进入项目文件路径
    xcodebuild clean
    
    xcodebuild -workspace ishirble.xcworkspace -scheme ishirble_test -configuration Test -derivedDataPath build
    
    xcrun -sdk iphoneos PackageApplication -v app包路径(上一步最后输出的builtin-validationUtility后面的) -o 输出路径
    
    xcrun -sdk iphoneos PackageApplication -v /Users/kaifa1/Desktop/git/ishirble/ios/build/Build/Products/Test-iphoneos/ishirble.app -o /Users/kaifa1/Desktop/test
    
    UI设计稿上px字号、间距等转换为项目中数值:https://www.jianshu.com/p/e57fa8ad6462
    一些必要的小技巧:https://www.jianshu.com/p/fb954a164dd2
    日常报错:https://www.jianshu.com/p/fd35b1fa61f0

    续集:https://www.jianshu.com/p/063b1b791354
    未完待续...

    相关文章

      网友评论

          本文标题:React-Native 加载git下载项目(二)

          本文链接:https://www.haomeiwen.com/subject/mynqhftx.html