본문 바로가기

Flutter/Firebase

[Firebase] Flutter Firebase CLI 연동하기 Flutter Firebase CLI 연동하기! 1. Firebase 설치하기! CMD에서 아래의 명령어로 설치할 수 있다. $ curl -sL https://firebase.tools | bash This script automatically detects your operating system, downloads the latest Firebase CLI release, then enables the globally available firebase command. 2. 제대로 설치되었는지 확인하기! Firebase cmd가 작동하기만 하면 된다. 2.0 설치된 Firebase ver. 확인 $ firebase --version 2.1 Firebase Local 에서 로그인하기 $ firebase l.. 더보기
[FIREBASE] 보안 규칙 설정 Cloud Firebase 보안 규칙은 악의적인 사용자로부터 데이터를 보호한다. 이를 통해 모든 사용자의 엑세스를 거부할 수 있고, 규칙에 따라 모든 사용자에게 포괄적인 엑세스 권한을 부여하는 것도 가능하다. 가장 좋은 솔류션 😀 - 인증된 사용자 엑세스 Cloud Firestore 보안 규칙에서 사용자의 로그인 여부를 확인하지만 해당 인증을 기반으로 액세스를 추가로 제한하지 않는 경우가 있습니다. 규칙 중 하나라도 auth != null이 포함되어 있으면 로그인한 사용자에게 데이터에 대한 액세스 권한을 부여할지 확인하세요. service cloud.firestore { match /databases/{database}/documents { // Allow only authenticated content.. 더보기
[FIREBASE] IOS, Android Firebase ERROR 없이 한번에 연결하기 지금까지 수많은 오류와 해결책을 찾은 끝에 드디어 오류없이 Firebase를 바로 연결할 수 있는 방법을 찾았다.. 크게 다른건 없고, Firebase에 APP 등록할 때 기본적으로 했던 절차는 따른다. 그리고 나서 이걸 해준다. (정말 오류 때문에 많이 힘들었다.. 😂) firebase core 추가하기! 왜 인지는 모르겠지만 firebase core가 없을 때 맨날 오류가 떴었다. main 에서 코드 추가해주기 아마 이 코드는 전부 알고 있을 것 같다! 여기서 반드시 Firebase.initalizeApp() 을 해줘야 하고, (중요) widgetsFlutterBinding 뒤에 와야한다..!! void main() async { WidgetsFlutterBinding.ensureInitialized.. 더보기
[Firebase] Firebase Storage Firebase Storage 사용법! ImagePicker package로 image를 가져오고 그 이미지를 File()에 넣어서 File 변수로 만들어준다. 중요!! 이미지를 업로드 할 때에는 reference가 필요하고 이미지를 가져올 때에는 URL로 가져올 수 있다. 이때도 reference가 필요하다. reference는 가져올려고 하는 파일의 경로를 말한다. File _image; Future getImage() async { final image = await ImagePicker().getImage(source: ImageSource.gallery); setState(() { _image = File(image.path); }); } /// basename으로 파일의 온전한 이름을 Get .. 더보기
[Firebase] Firebase usage example One-time Read - get() Collection 또는 document를 한번만 콜 하려면, Query.get or DocumentReference.get method를 사용하면 됩니다! class GetUserName extends StatelessWidget { final String documentId; GetUserName(this.documentId); @override Widget build(BuildContext context) { CollectionReference users = FirebaseFirestore.instance.collection('users'); return FutureBuilder( future: users.doc(documentId).get(), builder.. 더보기
[Firebase] Firebase property 정리 Reference? Qurey? Snapshot? 다음과 같은 도표를 참고하면 쉽게 이해할 수 있다. Collection Collection에서는 크게 3가지 방향으로 갈린다. 1-1. Query .orderBy(), where().. 을 통해서 Query를 만들고 .get()을 통해 서버통신으로 데이터를 가져온다. (.get()은 데이터를 한번만 가져오라는 Query이다) => Return 값은 QuerySnapshot 1-2. snapshot() 이 내용은 Real-time Read를 위한 Stream을 받아오는 함수이다. => Return 값은 Stream 이다. 1. QuerySnapshot => snapshot() 사용할 때 Collection으로 부터 Query, snapshot을 통해 받아온.. 더보기
[Firebase] IOS 연결하기 Firebase IOS 연결하기! 우선 Firebase 홈페이지로 이동합니다! 이동해서 아래와 같은 Screen이 나왔다면 시작하기를 눌러줍니다! 1. 앱 추가 Button에서 IOS를 눌러줍니다. IOS+ 라고 적혀진 아이를 클릭해주면 됩니다. 2. 안내에 따라서 다음과 같은 설정을 해줍니다. 2.1. App Package 입력 1) APP Pakakge는 아래 명령어로 확인 할 수 있습니다. $ open ios/Runner.xcworkspace 2) App developer ID : 필수는 아닙니다! 2.2. 구성파일 다운로드 1. GoogleService-Info.plist 다운로드 후 Runner/Runner 에 넣기 주의할 점은 반드시 Xcode를 통해서 넣어야 합니다. 2. Create Fo.. 더보기
[Firebase] Android 연결하기 Firebase 안드로이드 연결하기! 우선 Firebase 홈페이지로 이동합니다! 이동해서 아래와 같은 Screen이 나왔다면 시작하기를 눌러줍니다. 1. 앱 추가 Button에서 Android를 눌러줍니다. 안드로이드 처럼 생긴 아이가 나올텐데 그 아이를 클릭해줍니다. 2. 안내에 따라서 다음과 같은 설정을 해줍니다. 아래와 같은 화면이 나올텐데 3가지 등록이 필요합니다! 1) Android Package 이름: Android - src - buildgradle 안에서 찾을 수 있습니다. 2) 앱 닉네임: 맘대로 설정 3) 디버그 서명 인증서(SHA-1): 필수는 아닌데 쓰는게 좋습니다. keytool -exportcert -list -v -alias androiddebugkey -keystore ~/.. 더보기