세상을 바꾸는 개발자

[Android Kotlin] 해시키 구하기 본문

안드로이드/기타

[Android Kotlin] 해시키 구하기

헬창코딩 2021. 6. 18. 22:26

안녕하세요~ 헬창코딩입니다.

오늘은 안드로이드 스튜디오에서 해시키를 구하는 법을 알려드리겠습니다. 

해시키는 카카오로그인이나 페이스북 로그인 등등 다양한 API를 사용할때 사용되는 키 입니다.

안드로이드에서 사용되는 해시 키는 디버그 해쉬키와 릴리즈 해쉬키를 사용할 수 있습니다. 

만약 앱이 구글 플레이스토어에 올라간다면 구글 콘솔에서 제공하는 해시 키를 사용해야 합니다.

 

이번시간에는 디버그해쉬키를 구하는 방법을 알아보겠습니다. 총 2가지 방법이존재 합니다. 

 

1 번째는  코드로 구하는 방법입니다. (빨간줄은 신경쓰지 않으셔도 됩니다. 바로 디버깅하시면되요~)

전체코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import android.content.pm.PackageManager
import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Base64
import android.util.Log
import androidx.annotation.RequiresApi
import java.security.MessageDigest
 
class Activity_Main : AppCompatActivity() {
    @RequiresApi(Build.VERSION_CODES.P)
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        try {
            val information =
                packageManager.getPackageInfo(packageName, PackageManager.GET_SIGNING_CERTIFICATES)
            val signatures = information.signingInfo.apkContentsSigners
            val md = MessageDigest.getInstance("SHA")
            for (signature in signatures) {
                val md: MessageDigest
                md = MessageDigest.getInstance("SHA")
                md.update(signature.toByteArray())
                var hashcode = String(Base64.encode(md.digest(), 0))
                Log.d("hashcode""" + hashcode)
            }
        } catch (e: Exception) {
            Log.d("hashcode""에러::" + e.toString())
 
        }
    }
}
 
cs

 

 

2 번째는 안드로이드 터미널에서 해쉬키를 구하는 방법입니다. 

아래코드를 입력하시면 됩니다. 

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64

 

 

 

실행하시면 잘되는것을 확인하실 수 있습니다.~~

 

 

 

 

 

 

 

 

Comments