예전에 구글에서 제공하는 소스를 이용하여 구글 맵에 현재의 위치를 표시하는 앱을 만들었는데 최근에 다시 가보니 현재의 Android Studio 버전에 적용되는 library들로 source code가 변경이 되어 있네요오랜만에 다시 구현을 해보았습니다.

Android Studio 4.0을 사용해서 구현한 화면 입니다.


android place not authorized


 

모든 동작은 예전처럼 잘 되는데 이상하게 우측 [GET PLACE]를 누르면 아무런 동작도 하지 않습니다.  logcat을 살펴 보니 오류가 발생 하는 군요

 

21814-21814/copycoding.tistory.mylocation E/MainActivity: Exception: %s

 com.google.android.gms.common.api.ApiException: 9011: This API project is not authorized to use this API.

at com.google.android.libraries.places.internal.zzce.then(com.google.android.libraries.places:places@@2.3.0:6)

 

com.google.android.libraries.places를 사용할 권한이 없다는 건데 예전 소스코드에서 library의 변화가 있었나 봅니다권한이 없다고 하니 문제를 해결하러 API 관리 페이지에서 답을 찾아봅니다.


Google API 관리 사이트로 가보면 사용 설정된 API 목록을 볼 수 있습니다.


android place not authorized


현재 2개의 API를 사용하고 있다고 나오는 군요.

바로 아래쪽에 추가 API 목록이 있습니다.


android place not authorized


아무래도 여기에 있는 Places API가 원인인 것 같은데 선택을 합니다.


android place not authorized


[사용설정] 버튼을 클릭하면 권한을 받아오고 상단의 사용 설정된 API에 추가 됩니다.


android place not authorized


잘 추가가 되었군요.

이제 다시 앱을 실행해 볼까요?


android place not authorized


위치정보도 잘 가져오고 있습니다그 전에도 여기까지만 하고 손을 놓았는데 이번에는 꼭 뭔가를 만들어 보고 싶군요.


- copy coding -


안드로이드 프로젝트에서 설정 값들은 대부분 values/strings.xml에 등록해 놓는데 strings에 입력하지 않고 별도의 파일에 입력을 하지만 strings에 있는것 처럼 사용할 수 있는 방법입니다.





Properties() 함수를 이용하면 되는데 사용방법은

secure.properties 파일을 프로젝트 내 임의의 위치에 생성하고 내용에

 

MAPS_API_KEY=AIxxxxxxXXXXXXxxxxxxxXXXXXXXxxxxxxXxN_K8

 

이런 식으로 설정 값을 입력 합니다.

그리고 build.gradle(Module) 파일에 설정한 값을 읽어 올 수 있도록 Properties 함수를 추가 합니다.

 

defaultConfig {
   
applicationId
"copycoding.tistory.mylocation"
   
minSdkVersion 16
   
targetSdkVersion 29
   
versionCode 1
   
versionName "1.0"

   
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

   
// Read the API key from ./secure.properties into R.string.maps_api_key
   
def secureProps = new Properties()
   
if (file("../secure.properties").exists()) {
        file(
"../secure.properties")?.withInputStream { secureProps.load(it) }
   
}
    resValue
"string", "maps_api_key", (secureProps.getProperty("MAPS_API_KEY") ?: "")
}

 

이렇게 하면 secure.properties 파일에 설정한 값을 가져옵니다파일 명과 파일 위치는 어디에 생성 했는가에 따라 수정을 하면 됩니다.

 

 

이제 AndroidManifest.xml 에서 설정 값을 사용하는 방법 입니다.

 

<meta-data
   
android:name="com.google.android.geo.API_KEY"
   
android:value="@string/maps_api_key" />

 

그냥 strings.xml에 입력해 놓은 것 처럼 동일한 방법으로 사용이 가능 합니다.


- copy coding -


구글 메일을 잘 쓰지 않아서 오랜만에 들어가 보았더니 Adsense에서 게시자 정책을 위반했다고 메일을 보내왔습니다.


adsense 정책위반 보고서


가끔 gmail에 들어가면 google에서 메일이 많이 보내와 있지만 대부분 읽지 않는데 처음 보는 정책 위반이라고 해서 한번 클릭을 해 보았습니다.


adsense 정책위반 보고서


메일이 형식적인 문구이어서 메일만 읽어 보아서는 뭐가 문제인지 알 수 없습니다상세 내용을 파악 하려면 애드센스 사이트에 들어가 계정>정책 센터 메뉴를 선택하면 됩니다.


adsense 정책위반 보고서


귀찮죠? 그냥 메일의 윗부분에 있는 파란색 [애드센스 정책 센터]를 클릭 하면 Adsense 정책 센터 페이지로 바로 이동을 합니다. 물론 gmail을 읽고 있으니 구글에 로그인이 되어있는 상태여야 합니다.


adsense 정책위반 보고서


여기서 [문제가 있는 사이트] 항목의 오른쪽 끝부분 >를 클릭 하면 이번에는 개요 페이지로 이동 합니다.


adsense 정책위반 보고서


이번에는 [페이지 문제] 항목의 오른쪽 끝 부분 아래쪽 방향표시(v)를 클릭 합니다.


adsense 정책위반 보고서


페이지의 간략한 정책 위반 내용과 해결 방법을 제시하고 있습니다.

상세 위반 내용을 보려면 우측 [문제 관련 세부정보]에 기술되어 있으니 클릭 합니다.


adsense 정책위반 보고서


그런데 위반 사항을 읽어보고 99번 게시글을 읽어보고 또 봐도 도저히 이해가 가지 않네요.

클릭을 구걸한 적도 없고 광고는 상단과 하단에 배치하고 나머지는 GOOGLE이 알아서 추가하는 자동 삽입 광고인데 구글이 광고를 삽입하고 잘못은 나에게 뒤집어 씌우기를 하고 있다니....

어차피 블로그에 찾아오는 사람도 별로 없고 잘 누르지도 않는 광고 때문에 기분 상하게 하는 메일을 받게 되니 이참에 광고를 제거 해야 하나일단은 해결책이 떠오르지 않는데 그냥 무시하고 내비 두는 수 밖에 없을것 같네요.

어째든 애드센스에서 정책 위반 보고서 메일이 오면 이런 식으로 원인을 찾아서 해결할 수 있는 문제라면 처리를 하고 검토 요청을 하면 됩니다.


- copy coding -


꿀벌이나 벌통을 받는 꿈 해몽

 -> 집안이 화목하고 발전하여 기쁨이 가득할 징조이다.


꿀이 가득한 벌통을 보는 꿈 해몽

 -> 생각지도 않은 뜻밖의 재물을 얻게 된다.


벌통에 꿀이 가득차고 꿀벌들이 모여드는 꿈 해몽

 -> 사업자금이 조달되고 사업도 융성해서 많은 사람들을 채용하게 될 것이다.


나무에 달린 벌집에서 많은 벌들이 드나드는 것을 보는 꿈 해몽

 -> 큰 기업을 경영하여 여러 사람을 채용하게 되며, 태몽일 경우에는 장래에 그 아이는 재물을 많이 모으거나 권력을 잡게 될 것이다.


떼지어 벌이 날아 다니는 꿈 해몽

 -> 사람들 앞에 자신을 과시할 일이 생긴다.


많은 벌떼가 벌통을 오가는 꿈 해몽

 -> 많은 직원을 통솔하여 큰 사업을 벌이게 될 징조이다.


벌떼가 꽃에 모여드는 꿈 해몽

 -> 집안에 큰 경사가 있어 손님들이 많이 몰려들 것이다.


꿈 해몽 벌 dream bee



꿀벌에게 쏘이는 꿈 해몽

 -> 누군가와 골치 아픈 싸움을 벌이게 될 가능성이 크다.


벌에게 쏘이는 꿈 해몽

 -> 건강에 문제가 생길 징조이지만, 자신의 실적이나 작품 등에 대해 좋은 평가를 받게 될 수도 있다.


말벌떼가 자신의 집을 공격하는 꿈 해몽

 -> 가정에 큰 우환이 생기며 강력한 경쟁자가 나타날 것이다.


몸에 벌이 침을 쏘는 꿈 해몽

 -> 사업은 발전하고 직장은 안정을 얻게 된다.재산이 늘어 날 길몽이다.


벌떼가 덤벼드는 꿈 해몽

 -> 어느 누구에게 시달림을 당하거나 예상치 못한 고민거리가 생길 징조이다.


벌떼가 하늘에서 떼지어 날아다니는 꿈 해몽

 -> 자기를 다른 사람에게 자랑하면서 내세운다.


벌을 보는 꿈 해몽

 -> 다른 사람에게 간섭을 받지만, 성실하게 노력하면 성공하게 됨을 암시하고 있다.


벌을 잡는 꿈 해몽

 -> 사업에서 큰 이익을 남기며 승부하는 일에 이기게 된다.


큰 말벌을 손으로 잡는 꿈 해몽

 -> 소망하던 일이나 본인이 생각하고 있던 계약이 성립된다는 암시이다.


벌이 분봉하는 것을 구경하는 꿈 해몽

 -> 재물이 생기고 사업이 발전하면서 집안이 화목하고 번창해진다.


벌집을 발견하는 꿈 해몽

 -> 집안 살림이 풍요로워지고 행복이 약속되며 실직자는 취직을 하게 된다.


자신이 기르던 꿀벌이 모두 달아나는 꿈 해몽

 -> 자신의 세력권이나 사업이 와해되어 손해 볼 일이 발생한다.


많은 꿀벌이 달아나는 꿈 해몽

 -> 주위에 있는 사물이 흩어진다.


여왕벌의 꿈 해몽

 -> 건강 상태가 양호하다는 뜻이다.


- copy coding -


1···6789101112···62

+ Recent posts