Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
T treasure
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 12
    • Issues 12
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • External wiki
    • External wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • FE
  • treasure
  • Issues
  • #80

Closed
Open
Created Apr 13, 2022 by 姚阳子@yaoyangzi

RN开发FAQ,持续更新...

一、样式问题

  1. Flex 布局

    1. alignItems在iOS端可能不生效,需设置flexWrap 为noWrap
    2. alignContents在flexWrap=wrap多行的时候才会生效;
  2. Position

    rn中只有relative和absolute;

  3. Text组件

    Text里嵌套的Text标签默认是inline布局,不能设置margin,padding,width;

    View里嵌套的Text标签可以使用block元素样式;

  4. FlatList

    1. 父级必需设置高度(宽度),所以上滑加载时不能嵌套到scrollView中;
    2. Style尽量不要设置flex布局属性,避免item样式错乱;

二、消息推送(个推 react-native-getui)

Githab: https://github.com/GetuiLaboratory/react-native-getui

Docs: https://docs.getui.com/getui/mobile/android/androidstudio/

  1. Android常见问题

​ Q. Could not find com.getui:sdk-for-google-play:4.3.5.9.

​ A. 在项目根目录 build.gradle 文件的 allprojects.repositories 块中,添加个推 maven 库地址 maven { url “https://mvn.getui.com/nexus/content/repositories/releases/“}(个推Docs Android 集成指南2.1);

​ Q. 程序包android.support.annotation不存在

​ A. (1). 在app/build.gradle dependencies中添加依赖

​ implementation 'androidx.annotation:annotation:1.1.0'

​ (2). android.support.annotation改成androidx.annotation

​ Q. Error: meta-data#MEIZUPUSH_APPID@value等多厂商配置问题

​ A: 在AndroidManifest.xml文件中根据终端的错误进行配置 企业微信截图_69e51f28-6b32-4954-80a7-e27a65a7791e

​ 标签中记得加上tools:replace=“android:value”

​ 同时头部根标签加上xmlns:tools="http://schemas.android.com/tools"

​ <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package=“com.linhuiba.Location">

​ Q: GetuiModule 未找到定义等

​ A: 在AndroidStudio中根据错误文件提示一个个点过去,点击GetuiModule自动。提示import引用即可

三、AndroidStudio打包问题

Q: Expo-file-system kotlinVersion expected to 1.4.0

A: AndroidStudio找到Gradle Scripts文件夹下图中文件打开文件搜kotlinVersion,将后面的版本号替换成1.4.0

四、Xcode打包问题

Q: build时报错 CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler (in target 'Alamofire' from project ‘Pods')

A: 将报错的pod包删除,重新install;

Q: build时报错 Can't find the 'node' binary to build the React Native bundle.

A: 在命令工具中输入which node,再将输出的node路径与which软链接上,软链接命令 ln -s $(which node) /usr/local/bin/node(which node 输出的路径);ps: 如有使用过nvm,最好先执行nvm unalias default;

Edited Apr 13, 2022 by 姚阳子
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking