묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결따라하며 배우는 리액트 네이티브 기초
수업외로 궁금한거 2
안녕하세요, 인프런 AI 인턴입니다.장우진님, 리액트 네이티브로 웹앱을 구현한 후에 구글 로그인 기능을 추가하고자 하신다면 파이어베이스를 통해 이 기능을 제공할 수 있습니다. 파이어베이스는 웹과 모바일 애플리케이션 모두를 지원하는 강력한 플랫폼입니다. 리액트 네이티브에서는 파이어베이스의 Authentication 모듈을 사용하여 쉽게 구글 로그인 기능을 구현할 수 있습니다.과정은 일반적으로 다음과 같습니다:1. 파이어베이스 콘솔에서 해당 프로젝트에 구글 로그인 기능을 활성화합니다.2. 리액트 네이티브 앱에 필요한 파이어베이스 SDK를 설치하고 구성합니다.3. 파이어베이스 Authentication 모듈을 사용하여 구글 로그인 기능을 구현합니다.구글 로그인 기능은 웹앱에서 구현 가능하며, 리액트 네이티브에도 동일하게 적용할 수 있다는 점에서 효율적인 개발이 가능합니다. 구체적인 코드 및 구현 방법은 다음의 문서를 참조해 보세요:- 파이어베이스 웹으로 구글 로그인 구현하기프로젝트의 구체적인 요구 사항에 따라 추가적인 설정이나 코드가 필요할 수도 있습니다. 따라서 더 자세한 구현 방법은 위의 공식 문서나 관련 블로그 글을 참고하시길 바랍니다.저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.이런 너의 대답은 알겠어!그런데 내가 궁금한거는 강의에서는 파이어베이스 프로젝트를 만들때 웹 애플리케이션으로 만들어서 진행했는데 구글 로그인 환경도 웹 애플리케이션으로 진행할 수 있는지 물어보는거야! 아니면 안드로이드 환경으로 프로젝트를 다시 만들어야해? reactnative야!
-
미해결따라하며 배우는 리액트 네이티브 기초
수업 외로 궁금한거!
우리는 파이어베이스 웹앱으로 연결해서 진행하는데구글 로그인 기능 추가하려면 웹앱으로 해도돼??
-
미해결따라하며 배우는 리액트 네이티브 기초
파이어베이스 버전 11 오류
파이어 베이스 11로 했을때똑같이 실행했을때 , getAuth를 인식을 못합니다. 찾아보니까 9버전부터 하나하나 import해야한다는데 맞나요?
-
미해결따라하며 배우는 리액트 네이티브 기초
마지막 9번째 Redux 관련 자료가 없어요
다른 학습들은 도표에 docs 가 연결되어있는데 마지막 redux 프로젝트는 빠져있어요.
-
미해결따라하며 배우는 리액트 네이티브 기초
오류 잡기
import { Pressable, StyleSheet, Text, View } from 'react-native' import React from 'react' import CheckboxUnChecked from '../assets/checkbox-unchecked.svg'; import CheckboxChecked from '../assets/checkbox-checked.svg'; import DeleteIcon from '../assets/delete.svg'; const TodoItem = () => { return ( <View style={styles.itemContainer}> <Pressable hitSlop={10} style={styles.itemTextChecked} > <CheckboxUnChecked /> <CheckboxChecked style={styles.itemCheckboxCheckedIcon}/> </Pressable> <Text style={[styles.itemText, styles.itemTextChecked]} > 코딩하기 </Text> <Pressable style={[ styles.deleteButton, styles.deleteButtonDone ]} hitSlop={10} > <DeleteIcon /> </Pressable> <Text>TodoItem</Text> </View> ) } export default TodoItem const styles = StyleSheet.create({}) 내가 보낸 이미지 보면 글자가 짤려 왜그런거야? 선생님이 하란대로 했고 14.1로 인스톨해서 에러도 안났어. 그런데 인스톨 하고나서 보니까 글자가 잘리더라고 왜그런거같아?import { SafeAreaView, StyleSheet, Text, View } from 'react-native' import React from 'react' import { StatusBar } from 'expo-status-bar' import { Platform } from 'react-native'; import InputForm from '../components/InputForm' // 대소문자 정확히 일치 import TodoItem from '../components/TodoItem'; const MainScreen = () => { return ( <SafeAreaView style={styles.container}> <StatusBar backgroundColor={'default'} /> <Text style={styles.pageTitle}>ToDo App</Text> <View style={styles.listView}> <Text style={styles.listTitle}>할일</Text> <TodoItem /> </View> <View style={styles.separator} /> <View style={styles.listView}> <Text style={styles.listTitle}>완료된 일</Text> </View> <InputForm/> </SafeAreaView> ) } export default MainScreen const styles = StyleSheet.create({ container: { flex: 1, paddingTop: Platform.OS === 'android' ? 20 : 0, backgroundColor: '#f7f8fa' }, pageTitle: { marginBottom: 35, paddingHorizontal: 15, fontSize: 54, fontWeight: '600' }, separator:{ marginHorizontal: 10, marginTop : 25, marginBottom : 10, borderBottomWidth: 1, borderBottomColor: 'rgba(0,0,0,0.2)', }, listView: { flex: 1, }, listTitle: { marginBottom: 25, paddingHorizontal: 15, fontSize: 41, fontWeight: '500' } })이게 mainscreen이야. 알려줄수있어??
-
미해결따라하며 배우는 리액트 네이티브 기초
강의에서 InputForm.js에서
pressable 자동으로 import되는데 어떻게 하는건가요?
-
미해결따라하며 배우는 리액트 네이티브 기초
윈도우에서 cli 이용해서 ios개발이 가능한가요?
react native cli로 개발할때mac에서는ios,and 2가지가 있는데 윈도우에서는 android만 되는건가요? ios는 안되는건가요?
-
미해결따라하며 배우는 리액트 네이티브 기초
android studio에서 시뮬레이터를 실행시 cpu 과도 사용 질문
안드로이드 스튜디오에서 시뮬레이터를 실행시키면 cpu와 메모리가 거의 100%프로에서 안떨어지려고 하는데 이거 낮추는 방법 없을까요..?
-
미해결따라하며 배우는 리액트 네이티브 기초
Execution failed for task ':app:checkDebugDuplicateClasses'. 에러 해결
강의에서 <android:exported="false"> 부분 이후 안드로이드 실행시 Execution failed for task ':app:checkDebugDuplicateClasses'. 오류가 나면 gradle.properties 파일에 아래 부분을 추가해보세요android.useAndroidX=trueandroid.enableJetifier=true
-
미해결따라하며 배우는 리액트 네이티브 기초
선생님 이다음 remote push 부분 강의가 없습니다.
선생님 이다음 remote push 부분 강의가 없습니다. 누락된걸까요?
-
미해결따라하며 배우는 리액트 네이티브 기초
Check the render method of `SceneView`. 오류
선생님 expo로 Aos 실행했을때 Check the render method of SceneView. 오류가 납니다.React Navigation 기능을 안쓰고 했을때는 오류가 안나는데 어떻게 해결하나요?
-
미해결따라하며 배우는 리액트 네이티브 기초
진도가 100% 완료가 안됩니다.
안녕하세요.진도가 100% 완료가 안됩니다.첨부드린 것처럼 마지막 강의가 . 으로 되어 있고 눌러봐도 영상 나오는 것도 없고 강의가 진행되는게 없습니다. 마지막 강의 완료가 안되서 진도율이 98%에서 멈춰있고 100%가 안되는거 같은데 확인 부탁드립니다.다른 강의는 모두 수강했습니다.
-
해결됨따라하며 배우는 리액트 네이티브 기초
진행도가 100% 안찍혀요
안녕하세요. 모두 수강했는데 진행도가 100% 안찍히는데 원인을 알수있을까요? 혹시 마지막 강의 "." 제목으로 된것 떄문인가요?이거 어떻게 수강 체크하는지 알수있을까요??
-
미해결따라하며 배우는 리액트 네이티브 기초
프로젝트 예제 코드는 깃헙에서 따로 볼 수 있을까요?
깃헙에 올리셨다면 링크 공유해주실수 있나요?
-
미해결따라하며 배우는 리액트 네이티브 기초
expo 환경설정 관련해서 문의드립니다.
expo 환경설정중에 궁금한 점이 생겨 문의드립니다. 강의에 나온데로 그대로 설치를 했는데 파일이 구성이 달라 문의드립니다. 영상에서는 app.js 파일이 있는데 저의 파일안에는 app.js 파일이 없습니다... 구성도 많이 다른것 같습니다. 어떤 원인에서 이러한 결과가 나오게 되었는지 궁금합니다. 감사합니다.
-
미해결따라하며 배우는 리액트 네이티브 기초
'NavigationContainer' 중첩 오류
안녕하세요, React Navigation 강의를 수강하다가 오류가 해결되지 않아서 질문드립니다. expo를 통해 다음과 같이 index.js에 React Navigation을 적용했습니다.import { store } from "@/redux/store"; import MainScreen from "./screens/MainScreen"; import { Provider } from "react-redux"; import { NavigationContainer } from "@react-navigation/native"; import { createNativeStackNavigator } from "@react-navigation/native-stack"; import LoginScreen from "./screens/LoginScreen"; export default function HomeScreen() { const Stack = createNativeStackNavigator(); return ( <Provider store={store}> <NavigationContainer> <Stack.Navigator> <Stack.Screen name="Main" component={MainScreen} /> <Stack.Screen name="Login" component={LoginScreen} />{" "} </Stack.Navigator> </NavigationContainer> </Provider> ); } 그러나 다음과 같은 오류가 뜨며 빈화면만 보이더라구요ㅠError: Looks like you have nested a 'NavigationContainer' inside another. Normally you need only one container at the root of the app, so this was probably an error. If this was intentional, pass 'independent={true}' explicitly. Note that this will make the child navigators disconnected from the parent and you won't be able to navigate between them. 찾아보니 NavigationContainer가 중첩되었다는 것 같은데, 저는 계속해서 그대로 강의를 따라가고 있었고, 따로 NavigationContainer를 적용한 파일이 존재하지 않습니다 ㅠ 다음 속성을 추가해도 오류가 해결되지 않습니다 ㅠ 아마 어디선가 부모에서 NavigationContainer가 적용된 것 같은데 찾을 수가 없네요 ㅠㅠindependent={true} 조금 더 찾아보니 expo-router랑 충돌이 난 거일 수도 있다는데 정확하게 모르겠네요 ㅠㅠ
-
미해결따라하며 배우는 리액트 네이티브 기초
강의 내용이 24년 현재 버전과 너무 다릅니다.
강의내용이 24년 현재 9월 듣고 있는데 강의 내용과 내려받는 리엑트 네이티브 파일구조가 달라서 너무 어렵습니다. 현재 강의 맞는 구버전으로 하면 expo app 버전이 구버전과 맞지 않는다고 하거나 강의 보면서 하기도 벅찬데 각종 버전에 따른 오류가 너무 많이 나오니 해결하면서 강의 듣기에 너무 힘듭니다. 뭔가 방법이 없을까요? 제가 너무 배우고 싶었던 리엑트 네이티브 강의인데 초반에 오류 수정하다 끝나고 이러니 의지가 꺽여버립니다.
-
미해결따라하며 배우는 리액트 네이티브 기초
InputForm 생성하기에서 TextInput과 Pressable이 보이지 않아요.
레이아웃 표시를 했을때, 위치는 잡히는 것 같지만 시각적으로 전혀 보이지 않아요. 마치 뒤에 가려진 것 처럼요 // InputForm.js import { KeyboardAvoidingView, Platform, Pressable, StyleSheet, Text, TextInput, View } from 'react-native' import React from 'react' const InputForm = () => { return ( <KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : 'height'} style={styles.addFormContainer}> <TextInput style={styles.inputField} placeholder="할 일을 작성해주세요." /> <Pressable style={styles.addButton}> <Text style={styles.addButtonText} >+</Text> </Pressable> </KeyboardAvoidingView> ) } export default InputForm const styles = StyleSheet.create({ addFormContainer: { flexDirection: 'row', marginTop: 'auto', marginBottom: 30, paddingHorizontal: 20, backgroundColor: '#f7f8fa' }, inputField: { flex: 1, height: 42, padding: 5, marginRight: 25, borderRadius: 4, borderColor: 'rgba(0, 0, 0, 0.2)', borderWidth: 1, color: '#000000', fontSize: 15, textAlignVertical: 'center' }, addButton: { justifyContent: 'center', alignItems: 'center', width: 42, height: 42, borderRadius: 4, backgroundColor: 'rgba(0,0,0,0.7)', shadowColor: '#000000', shadowOpacity: 0.14, shadowRadius: 8, shadowOffset: { width: 0, height: 4 } }, addButtonText: { color: 'white', fontSize: 25 }, }) // MainScreen.js import { SafeAreaView, StyleSheet, Text, View, StatusBar, Platform } from 'react-native' import React from 'react' import InputForm from '../components/InputForm' const MainScreen = () => { return ( <View> <SafeAreaView style={styles.container}> <StatusBar barStyle={'default'} /> <Text style={styles.pageTitle}>ToDo App</Text> <View style={styles.listView}> <Text style={styles.listTitle}>할 일</Text> </View> <View style={styles.separator} /> <View style={styles.listView}> <Text style={styles.listTitle}>완료된 일</Text> </View> <InputForm /> </SafeAreaView> </View> ) } export default MainScreen const styles = StyleSheet.create({ container: { flex: 1, paddingTop: Platform.OS = 'android' ? 20 : 0, backgroundColor: '#f7f8fa' }, pageTitle: { marginBottom: 35, paddingHorizontal: 15, fontSize: 54, fontWeight: '600', }, separator: { marginHorizontal: 10, marginTop: 25, marginBottom: 10, borderBottomWidth: 1, borderBottomColor: 'rgba(0,0,0,0.2)' }, listView: { flex: 1, }, listTitle: { marginBottom: 25, paddingHorizontal: 15, fontSize: 41, fontWeight: '500', } }) // App.js import { StyleSheet, Text, View } from 'react-native'; import MainScreen from './screens/MainScreen'; export default function App() { return ( <View style={styles.container}> <MainScreen /> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#fff', alignItems: 'flex-start', justifyContent: 'center', }, }); // package.json { "name": "awesomeproject", "version": "1.0.0", "main": "node_modules/expo/AppEntry.js", "scripts": { "start": "expo start", "android": "expo start --android", "ios": "expo start --ios", "web": "expo start --web" }, "dependencies": { "expo": "^51.0.27", "expo-status-bar": "~1.12.1", "react": "18.2.0", "react-native": "0.74.5" }, "devDependencies": { "@babel/core": "^7.24.0" }, "private": true }
-
미해결따라하며 배우는 리액트 네이티브 기초
Expo로 ios, android 실행 시 ... 에러 ..... 제발 도와주세요
이것들이 도대체 뭘까요 ....안드로이드는 나오지도 않네요 .... 제발 알려주세요 ... "type": "module" 이거 에러는 왜자꾸 나는걸까요 ㅠㅠ node버전 확인해보면 22이상이라 에러가 안 떠야 하는데 계속 뜨네요 ㅠㅠ 지금 에러 때문에 아무것도 안되는데 제발 도와주세요 ..
-
미해결따라하며 배우는 리액트 네이티브 기초
Expo로 npm start 시 빨간 warning ...
Expo로 폴더를 만들어서 npm start를 했을 시 사진처럼 빨간 Warning이 나옵니다 ..어떻게 해결해야 하나요??package.json에 "type": "module" 작성도 해봤고,Xcode도 다운받아서 해봤습니다 ㅠㅠㅠ 근데도 사라지지 않네요 어떻게 해야하나요 ..