ÆÁ¾ØÅ¥
2020.06.16 / 12:57

Firebase ÀÎÁõÀ¸·Î ·Î±×ÀÎ ½Ã½ºÅÛ ±¸ÇöÇϱâ(1)

Äڷγª
Ãßõ ¼ö 145
Firebase ÀÎÁõÀ¸·Î ·Î±×ÀÎ ½Ã½ºÅÛ ±¸ÇöÇϱâ(1)
ÆÄÀ̾À̽º(Firebase)/ÀÎÁõ(Firebase Auth) 2018. 11. 6. 16:16

 Firebase Auth °³¿ä

Firebase Auth´Â Firebase¿¡¼­ Á¦°øÇÏ´Â ÀÎÁõ ½Ã½ºÅÛÀÔ´Ï´Ù. »ó´çÈ÷ °£ÆíÇÏ°Ô ±¸ÇöÇÒ ¼ö ÀÖÀ¸¸ç, ÀüÈ­ ¹øÈ£ ÀÎÁõÀ» Á¦¿ÜÇÏ¸é ¹«·áÀÔ´Ï´Ù. ´ëÇ¥ÀûÀÎ ÀÎÁõ ¹æ½ÄÀº ¾Æ·¡¿Í °°½À´Ï´Ù. 

  • °èÁ¤ ¿¬µ¿ : ±¸±Û, ÆäÀ̽ººÏ, Æ®À§ÅÍ, ±êÇãºê µî (³×À̹ö, ÀνºÅ¸ µîÀº Á¦°ø X)
  • À̸ÞÀÏ ÀÎÁõ : »ç¿ëÀÚÀÇ À̸ÞÀÏ ÁÖ¼Ò¿¡ ¸ÞÀÏÀ» º¸³» URL·Î ÀÎÁõ 
  • ºñ¹Ð¹øÈ£ : À̸ÞÀÏ, ºñ¹Ð¹øÈ£·Î ÀÎÁõ
  • À͸í ÀÎÁõ : Ưº°ÇÑ °¡ÀÔ ÀýÂ÷¾øÀÌ À͸íÀÇ °èÁ¤ »ý¼º
  • ±âŸ : ÀüÈ­¹øÈ£ ÀÎÁõ, Play Game ·Î±×ÀÎ µî   


¸ðµç ¹æ½ÄÀº Àå´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ¿¹ÄÁ´ë °èÁ¤ ¿¬µ¿ ¹æ½ÄÀº µ¿±âÈ­°¡ µÅ ÀÖÀ¸¸é ´ë°³ Ŭ¸¯ ÇÑ ¹øÀ¸·Î Æí¸®ÇÏ°Ô ÀÎÁõµÇ´Â ¹Ý¸é ±¸±Û, ÆäÀ̽ººÏ °èÁ¤ÀÌ ¾ø´Â »ç¿ëÀÚ³ª, ÀÖ´Ù°í ÇÏ´õ¶óµµ ºñ¹Ð¹øÈ£¸¦ ±î¸ÔÀº »ç¿ëÀÚµéÀº ºÒÆíÇÏ°ÚÁö¿ä. ÀÌ¿Í´Â ´Þ¸® À͸íÀÇ ÀÎÁõ ¹æ½ÄÀº °¡ÀÔ ÀýÂ÷°¡ ¾ø¾î Á¢±Ù¼ºÀÌ ³ôÀº °ÍÀÌ °¡Àå Å« ÀåÁ¡ÀÌÁö¸¸ ¾Û »èÁ¦½Ã »ç¿ëÀÚ°¡ °èÁ¤À» ÀÒ¾î¹ö¸®°Ô µÇ°í, µû¶ó¼­ À¯·É °èÁ¤ÀÌ ´Ã¾î³¯ ¼ö ÀÖ´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. 


°á·ÐÀûÀ¸·Î »ç¿ëÀÚ¸¶´Ù ¼±È£ÇÏ´Â ÀÎÁõ ¹æ½ÄÀº °¡Áö°¢»öÀ̱⠶§¹®¿¡ ¿©·¯ ÀÎÁõ ½Ã½ºÅÛÀ» °°ÀÌ ±¸ÇöÇسõ´Â °ÍÀÌ °³¹ßÀÚ ÀÔÀå¿¡¼± º¹ÀâÇÏ°ÚÁö¸¸ »ç¿ëÀÚ ÀÔÀå¿¡¼± °¡Àå ģȭÀûÀÎ ¹æ½ÄÀ̶ó°í ÇÒ ¼ö ÀÖ°Ú½À´Ï´Ù. 


¿À´ÃÀº ÀÏ´Ü FIrebase ÀÎÁõÀ» ±¸ÇöÇϱâ À§ÇÑ Áغñ ÀÛ¾÷µé¿¡ ´ëÇؼ­ Æ÷½ºÆÃÇغ¸µµ·Ï ÇÏ°Ú½À´Ï´Ù.  


 1. ÇÁ·ÎÁ§Æ®¿Í Firebase °èÁ¤ ¿¬µ¿ 


1) ¾Èµå·ÎÀÌµå ½ºÆ©µð¿À »ó´ÜÀÇ [Tools] ÅÇÀ» Ŭ¸¯ ÈÄ [Firebase] ¹öÆ°À» ´©¸¨´Ï´Ù. 

2) ¿À¸¥ÂÊ¿¡ ¿©·¯ Firebase ±â´ÉµéÀÌ ³ª¿­µÇ´Âµ¥ ±×Áß AuthenticationÀ» Ŭ¸¯

3) Connect to Firebase Ŭ¸¯ÇÏ¿© ÀÚ½ÅÀÇ ±¸±Û °èÁ¤À¸·Î ¿¬µ¿

  - °³¹ßÀÚ °èÁ¤ ÀÖÀ¸½Å ºÐµéÀº ÇØ´ç °èÁ¤ »ç¿ëÇÏ½Ã¸é µÇ°Ú½À´Ï´Ù.


4) »õ·Î¿î ÇÁ·ÎÁ§Æ® »ý¼º 

  - À̸§Àº ¿øÇÏ´Â À̸§ ÀÔ·Â(²À ¾Èµå·ÎÀ̵å ÇÁ·ÎÁ§Æ® À̸§°ú °°Áö ¾Ê¾Æµµ »ý¼º °¡´É)

  - ±âÁ¸ Firebase ÇÁ·ÎÁ§Æ®¿¡ ¿¬µ¿Çϱ⠿øÇϸé Çص¿ ÇÁ·ÎÁ§Æ® ¼±ÅÃ(Choose an existing...)

  - ÀÛ¾÷ÀÌ ÁøÇàµÇ´Ù°¡ ¸¸¾à ½ÇÆÐÇß´Ù´Â ¸Þ½ÃÁö°¡ ¶ß¸é ´Ù½Ã Ŭ¸¯(Connect to Firebase)ÇØÁÖ¸é sync µË´Ï´Ù. Á¤»óÀûÀ¸·Î ¿Ï·áµÆÀ» ¶§¿¡´Â ¹öÆ°ÀÌ ÃÊ·Ï»ö Connected·Î ¹Ù²ò´Ï´Ù.

 

 2. Build.gradle ÆÄÀÏ¿¡ Firebase Auth Ãß°¡

1) Accept Change ¹öÆ°À» ´©¸£¸é ÀÚµ¿À¸·Î Ãß°¡µË´Ï´Ù. Àú´Â 2018³â 11¿ù 06ÀÏ ±âÁØ ÃֽŠ¹öÀüÀ» »ç¿ëÇϱâ À§ÇØ º°µµ·Î Áö¿ì°í ´Ù½Ã Ãß°¡ÇØÁá½À´Ï´Ù. 

dependencies {
implementation 'com.google.firebase:firebase-auth:16.0.5'
implementation 'com.google.firebase:firebase-core:16.0.4'
}

ÃֽŠ¶óÀ̺귯¸® ¹öÀü È®ÀÎÀº ¿©±â¿¡¼­ È®ÀÎ °¡´ÉÇÕ´Ï´Ù. Âü°í·Î firebase-core´Â firebase¿¡¼­ Á¦°øÇÏ´Â ºÐ¼®µµ±¸ÀÔ´Ï´Ù. ÄܼÖâ¿¡ Ãß°¡ÇØ´Þ¶ó´Â ¸Þ½ÃÁö°¡ ¶°¼­ ¼¼ÆÃÇß½À´Ï´Ù. 


 3. Firebase ÄܼÖâ ¼¼ÆÃ(1) - ÀÎÁõ Çã¿ë


1) firebase ÄܼÖâ¿¡¼­ ÇØ´ç ÇÁ·ÎÁ§Æ®Å¬¸¯ ¡æ Authentication Ŭ¸¯ ¡æ ·Î±×ÀÎ ¹æ¹ý ¼³Á¤ Ŭ¸¯


2) ÀÚ½ÅÀÌ ±¸ÇöÇÏ°íÀÚ ÇÏ´Â ¹æ½Ä¿¡ ¸ÂÃç »ç¿ë ¼³Á¤

  - Àú´Â ´ÙÀ½ Æ÷½ºÆÿ¡¼­ ´Ù·ê À̸ÞÀÏ/ºñ¹Ð¹øÈ£¿Í À͸íÀ» »ç¿ë ¼³Á¤ÇÏ¿´½À´Ï´Ù. 


4. Firebase ÄܼÖâ ¼¼ÆÃ(2) - SHA ÀÎÁõ¼­ Áö¹® Ãß°¡


1) ÄܼÖâ¿¡¼­ Åé´Ï ¹ÙÄû ¸ð¾ç Ŭ¸¯ ¡æ ÇÁ·ÎÁ§Æ® ¼³Á¤ ¡æ Áö¹® Ãß°¡ Ŭ¸¯

  - Firebase¿¡¼­ Á¦°øÇÏ´Â ´Ù¸¥ µµ±¸µé°ú ´Þ¸® ÀÎÁõ ½Ã½ºÅÛÀº SHA ÀÎÁõ¼­°¡ ÇÊ¿äÇÕ´Ï´Ù. 


2) Âü°í : SHA ÀÎÁõ¼­ Áö¹® ºÒ·¯¿À´Â ¹æ¹ý


 5. ProGuard ÆÄÀÏ ¼³Á¤


proguard´Â ¹«´ÜÀ¸·Î µðÄÚµùÇÏ´Â °ÍÀ» ¾î·Æ°Ô ÇÏ´Â ³­µ¶È­ µµ±¸ÀÔ´Ï´Ù. ¿¬½À¿ëÀÌ ¾Æ´Ï¶ó ½ÇÁ¦·Î ¹èÆ÷ÇÏ´Â ¾ÛÀ̶ó¸é ÇʼöÀûÀ¸·Î »ç¿ëÇÒ °ÍÀÌ ±ÇÀåµË´Ï´Ù. ±×·±µ¥ proguard°¡ Firebase Auth ¶óÀ̺귯¸®¿¡¼­ °Çµå¸®¸é ¾È µÇ´Â ºÎºÐ±îÁö ³­µ¶È­½ÃÄѹö¸®¸é Á¦´ë·Î ÀÛµ¿ÀÌ ¾È µÇ°ÚÁö¿ä. ±×·¡¼­ ¿¹¿Ü 󸮰¡ ÇÊ¿äÇÑ °ÍÀÔ´Ï´Ù. 

1) proguard-rules.pro ÆÄÀÏ¿¡ ¾Æ·¡ÀÇ µÎ ÁÙÀ» Ãß°¡ÇØÁݽôÙ. 

-keepattributes Signature
-keepattributes *Annotation*


 

 Áغñ ¿Ï·á!


Firebase¸¦ óÀ½ Á¢ÇϽô ºÐµéµµ ½±°Ô µû¶ó¿Ã ¼ö ÀÖµµ·Ï ÃÖ´ëÇÑ ½±°Ô Ç®¾î¼­ ½è½À´Ï´Ù. Â÷±ÙÂ÷±Ù Æ÷½ºÆôë·Î µû¶óÇϽøé Å« ¾î·Á¿òÀº ¾øÀ¸½Ç °ÍÀ̶ó ¹Ï½À´Ï´Ù. ´ÙÀ½ Æ÷½ºÆÿ¡¼­ ´Ù·ê ÀÎÁõ ½Ã½ºÅÛÀÇ ½ÇÁ¦ ÄÚµå ±¸Á¶¿Í ºÐ·®Àº ±×·¸°Ô ±æÁö ¾ÊÀ¸´Ï Ȥ½Ã¶óµµ °Ì¸ÔÁö ¾ÊÀ¸¼Åµµ µË´Ï´Ù! ±×·³ ´ÙÀ½ ½Ã°£¿¡ ¸¸³ª¿ä^^