React Native
에서 native-base
와 react-native-vector-icons
을 같이 사용하는 경우 iOS
빌드시 Multiple commands produce
와 같은 에러가 발생하는 경우가 있다. 이 경우 iOS
프로젝트의 Copy Bundle Resources
에서 [CP] Copy Pods Resources
에 있는 중복된 TTF
파일들을 제거하면 된다. 이와 같은 문제가 발생하는 이유는 React Native 0.60
의 autolinking
문제 때문이다.
주의할 점은 react-native-vector-icons
의 경우 아래와 같이 설치했을 수도 있다.
react-native link react-native-vector-icons
그런데 위와 같이 설치했을때 react-native run-ios
를 실행하면 react-native-vector-icons
를 메뉴얼로 연결했고 autolinking
을 사용하기 때문에 연결을 해제하라고 경고가 나온다. 그래서 다음을 실행해 해재하라고 뜬다.
react-native unlink react-native-vector-icons
이렇게 연결을 해제하면 실행시 또 Unrecognized font family
관련 에러가 뜨는 것을 볼 수 있다. 이 경우 번거롭지만 info.plist
의 UIAppFonts
부분에 react-native-vector-icons
에서 사용하는 폰트 목록을 추가해줘야된다.
<key>UIAppFonts</key>
<array>
<string>Roboto_medium.ttf</string>
<string>Roboto.ttf</string>
<string>rubicon-icon-font.ttf</string>
<string>AntDesign.ttf</string>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>Feather.ttf</string>
<string>FontAwesome.ttf</string>
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>Fontisto.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>Octicons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Zocial.ttf</string>
</array>