2018.12.16 10:02



Admob 광고가 노출이 안되는 이슈가 있어서 공유 해드려고 합니다.


12월 초 부터 광고가 노출이 안되는 이슈가 있었습니다.



현상 


테스트 아이디를 넣으면 테스트 광고 노출O  

테스트 아이디를 제거 하고 광고 단위에서 생성한 실제 ID 를 넣으면 노출 X

차이는 AddTestDevice 를 추가하면 노출되고, 빼면 노출 안되는 현상입니다.

Admob 샘플앱 도 동일 O (https://github.com/googleads/googleads-mobile-android-examples)



에러 로그


com.google.android.gms.example.interstitialexample I/Ads: Starting ad request.
    SDK version: afma-sdk-a-v14799019.14300000.1
    Use AdRequest.Builder.addTestDevice("2FB2C054F3675B9AC920D77F0F08D0D3") to get test ads on this device.
I/Ads: No fill from ad server.
W/Ads: Failed to load ad: 3
<Release 버전 로그>



1차 문의


Google Mobile Ads SDK Developers 그룹에 직접 문의를 했습니다.


상황 전달.




1차 애드몹 SDK 개발팀 답변




당사의 샘플 앱을 사용하여 테스트 광고를 로드할 수 있다는 점을 고려할 때 귀하의 SDK 코드 구현이 올바르게 작동하는 것 같다. 


반면에, 출시한 앱에 테스트 장치를 추가할 필요는 없다. 


또한 당신이 개인적으로 작성자 선택사항을 사용하여 저희에게 개인적으로 제공할 수 있다면, 우리는 당신의 광고 유닛 ID를 테스트 할 수 있다.



2차 문의


광고 ID 를 보내달라고 해서 admob 팀에 전달 하였습니다.




2차 애드몹 SDK 개발팀 답변




오류코드 3 은 광고가 없다는 것을 의미하는데 이것은 광고 서비스 이슈로 보인다.

다른 개발자들도 동일 한 증상이 이미 많이 접수 되었고,  팀내 확인해서 알려줄게.




1주일간 대기  하면서 많은 비슷한 글들이 올라온다.





나와 동일한 증상은 나타내는 개발자들이 많았다. 


Admob 팀은 확인 후에 수정이 되면 연락을 준다고 한다.


당분간 기다려 봐야겠다...


결과가 나오면 공유 하도록 하겠습니다.









Posted by hoonihoon85 hoonihoon
2018.12.09 22:41



이름궁합 테스트가 SBS "미운우리새끼" 에서 


사유리가 김종국, 이상민과의 이름궁합을 


테스트 해서 화제가 되고 있습니다.






(사진출저 : SBS 미운우리새끼 )




이름궁합을 보는 방법은 궁합보는 이의 이름을 번갈아 쓰고 이름의 획수를 

더해가면서 맨 마지막에 나오는 숫자 두개로 궁합을 알아 볼 수 있는데....



저에게는 조금 어렵네요 ...ㅎㅎ


방송에서 사유리도 계산을 틀렸다고 하던데...




앱으로 자동으로 획수를 계산해서 되는게 있으면 참 좋겠다고 생각했는데


이미 유명한 이름궁합 앱이 있다고 하네요.






구글 플레이스토어 에서 이름궁합을 검색하면 나오는 두번째 


이름궁합 2를 다운로드 설치 해주세요.






자 그럼 ~!  이름궁합 앱으로 다시 한번 


사유리 김종국,  사유리 이상민의 궁합을 한번 봐 보도록 할게요.







두번 째, 사유리와 이상민의 이름궁합을 보도록 하겠습니다.







사유리와 김종국의 궁합은 69%


사유리와 이상민의 궁합은 29%



방송에서 이상민이 질투를 많이 했을 거 같아요~!


저는 사유리, 이상민 궁합이 높게 결과가 나왔으면 했는데~


아쉽지만~



그래도 재미로 보는 이름궁합이니 너무 상처 안받으셨으면 해요~!



미운우리새끼 너무 재미있게 잘 봤고, 이름궁합 앱을 알게 되서 너무 좋았습니다!!!



아 이 어플을 다운로드 받을 수 있는 링크를 알려 드릴게요~!




↓↓↓ 클릭클릭 ↓↓↓


이름궁합 다운로드












Posted by hoonihoon85 hoonihoon
2018.06.28 17:30





Google Play 정책위반으로 정지된 앱 복구하기! 


이글을 읽고 정책위반으로 정지된 앱을 보유하고 계시다면 조금이나마 도움이 되시길 바라는 마음에 글을 작성합니다.




구글은 마켓에 올릴 때 특별히 검수를 하지 않는것 같습니다. 그래서아이폰보다는 쉽게 마켓 출시는 할 수  있지만


정책위반이 되었을 경우, 사전 통보 없이 앱을 삭제 시킵니다.




저도 이번에 정책위반으로 앱이 삭제 되었습니다.


삭제 되면 아래와 같이 메일이 오는데요..



[사진]




구글의 정책지원팀에 이의신청을 바로 했습니다.   


구글에서 제시해준대로 적용하지 앱이 조건부로 다시 활성화 되었습니다.



이의신청 내용은 간단합니다. "앱이 복원되어야 한다고 생각하는 이유를 설명해주세요." 를 작성하는 항목이 있는데

적어주시면 됩니다.




이의신청을 작성하면 하루면 답장이 옵니다.

어떤식의 정책위반이고, 어떤식으로 해결하면된다.



이때 구글에서 중지된앱을 잠시 풀어줍니다.

마켓에 정책이 해결된 앱을 업데이트 해주시고, 업데이트하면 끝~!



업데이트가 되면 구글에서 판단을 해서

잘되었으면 정책문제가 해결되었다고 메일이 옵니다.




해결완료!!!  



그런데 저의경우는 꼬일 때로 꼬였던 상황이였습니다.


기존에 달았던 애드몹 까지 정지 되었습니다.(멘붕)


애드몹정지사유는,  마켓에 중지된 앱인데, 애드몹 노출이 되고있다고 합니다.


즉, 마켓에서 다운받은 apk가 아닌,  개발하면서 빌드해놓은 apk 에서 광고를 노출하게 되면


애드몹 정지가 됩니다.





애드몹 정지된거 이의신청하기  (후기)




Posted by hoonihoon85 hoonihoon
2018.06.04 07:45




집중력, 순발력이 향상되는 초간단 퍼즐 게임  1to50 을 소개해 드립니다.


랜덤으로 나타나는 숫자를 1부터  50까지 빠르게 클릭해주세요!










친구와 경쟁해 볼 수 있는 랭킹 시스템도 있어서 좋네요!! 











집중력향상!! 순발력향상!!에 도움이 될 수 있습니다.



그럼 GOOD LUCK 하세요~!




다운로드 받기


https://goo.gl/qhFDRj

Posted by hoonihoon85 hoonihoon
2018.05.28 23:12





토익공부하는 개발자가 만든 가장편리한 단어장!!



이앱은 진짜 영어공부하는 개발자가 만든 앱입니다.

 

 

 

 

앱을 만든 동는 이렇습니다.


1. 지하철, 버스, 학원 줄서기 등등 단어를 외우려고 책을 꺼내 보기에는 어지간히 스트레스였습니다.

     -> 원터치 단어장은 스마트폰으로 공부가 가능합니다.


2. 쓸데 없는 단어 말고, 내가 정리한 복습해야 하는 단어를 외울 수 있어야 했습니다.

     -> 원터치 단어장은 엑셀로 편집해서 원하는 단어만 외울 수 있도록 만들었습니다.


3. 한손에는 무거운 가방이 있기 때문에 한손으로 스마트폰을 잡고 공부하고 싶었습니다.

    -> 원터치 단어장은  엄지손가락을 이용한 원터치 기술을 이용해서 만들었습니다. 

 

 

원터치 단어장은 어떤 장소에든 쉽게 원터치로 단어를 외울 수 있습니다.

 

 

어학공부를 하신다면 무조건 추천해 드립니다!!

 



사용방법을 알려드릴게요~!~!












자 이제 다운로드 받으러 가볼까용?~!




 

다운로드 :

 

https://play.google.com/store/apps/details?id=com.maha.word

Posted by hoonihoon85 hoonihoon
2018.04.17 15:13
remount 한다.
1
>adb remount


안드로이드에 있는 host 파일을 받는다.
1
>adb pull /system/etc/hosts D:\TDPlatform\android_home\backup\


hosts 파일 수정한다.
---------------------------------------
기본적으로 로컬만 등록되어 있음.
127.0.0.1      localhost
---------------------------------------

host 파일을 넣는다.
1
>adb push D:\TDPlatform\android_home\work\hosts /system/etc/



hosts 파일 수정 확인해보기

>adb -e shell
#cat /system/etc/hosts



[출처] https://hooni.net/2254



Posted by hoonihoon85 hoonihoon
2016.04.29 13:23








브랜뉴 뮤직의 유명한 버벌진트와 R&B 보컬리스트 양다일의 콜라보 프로젝트를 진행 했습니다.



노래제목은 "오늘 쓱



 두분 모두 브랜뉴뮤직 소속 입니다.



쇼미더머니라는 Mnet 힙합프로그램에서 프로듀서를 맡으면 더 유명해지신 버벌진트.




양다일은 다른 아티스트나 피처링으로 많은 인기를 얻었고, 



2015년 10월에 널이라는 곡으로 첫 싱글 앨범을 출시 했습니다.









 "오늘 쓱" 



그냥 쓱 알아주길 바라는 나
그리고 자꾸 모른 척하고 있는 너
이제 시간이 된 듯해
나 오늘 말할래 네게
만날래 우리? 진지하게
(what would you say)

listen, 지금 나의 눈빛은
누구에게도 보여준 적 없어
오 어쩌면 나의 몸짓이
초조해보일지도 몰라, 널 더

깊이 알고 싶어, 가까이 가고 싶어
물론 자연스럽게 쓱-
알아줬으면 싶어, 내가 여지껏
내뱉은 단어들 속의 뜻

하지만 더 기다리다간 나
타이밍을 놓칠지 몰라 잠깐
가벼운 대화는 stop, 앉아봐
할 말이 있으니까 나 오늘 당장

그냥 쓱 알아주길 바라는 나
그리고 자꾸 모른 척하고 있는 너
이제 시간이 된 듯해 (time is now)
나 오늘 말할래 네게 (I'mma say it)
만날래 우리? 진지하게

'봄바람 휘날리며'
그 잘 나가는 노래와
같은 상황은 아니지만 너와 나

we got something going on, 
yeah 원래 다
시작이라는 건 이런 거 아냐?

'꽃송이가 꽃송이가'
이 설레는 느낌, that's all we got

that's all we got, that's all we got
들리니 나의 심장의 소리가

들리면 나에게 답을 줘 어떤 형태든
물론 존중해, 네가 내리는 선택은

오늘 안으로만 내게 전해줘
before the sunset, 해지기 전에

그냥 쓱 알아주길 바라는 나
그리고 자꾸 모른 척하고 있는 너
이제 시간이 된 듯해 (think it's time)
나 오늘 말할래 네게 (I'mma tell you)
만날래 우리? 진지하게 (what'd you say)

타이밍은 오늘 (today's the day)
지금 내 손을
잡아 줄 수 있겠니 
(could you hold my hand?)

girl, if you say no
I don't know what to do
(if you really say no,
I wouldn't know what to do)

오늘 쓱 알아주길 바라는 나 (you see me)
그리고 자꾸 모른 척하고 있는 너
이제 시간이 된 듯해
나 오늘 말할래 네게
만날래 우리? 진지하게
(now sing it 다일)

뚜루루 두룹뚜뚜
뚜루루 두룹뚜뚜
뚜루룹
뚜루루루루루





"오늘 쓱" 은 드라이브할 때 생각나는 노래네요.


왕 추천 !!  











Posted by hoonihoon85 hoonihoon
2016.04.22 16:03

Sparse arrays can be used to replace hash maps when the key is a primitive type. There are some variants for different key/value type even though not all of them are publicly available.

Benefits are:

  • Allocation-free
  • No boxing

Drawbacks:

  • Generally slower, not indicated for large collections
  • They won't work in non-android project

HashMap can be replaced by the followings:

SparseArray          <Integer, Object>
SparseBooleanArray   <Integer, Boolean>
SparseIntArray       <Integer, Integer>
SparseLongArray      <Integer, Long>
LongSparseArray      <Long, Object>
LongSparseLongArray  <Long, Long>   //this is not a public class                                 
                                    //but can be copied from  Android source code 

In terms of memory here is an example of SparseIntArray vs HashMap for 1000 elements

SparseIntArray:

class SparseIntArray {
    int[] keys;
    int[] values;
    int size;
}

Class = 12 + 3 * 4 = 24 bytes
Array = 20 + 1000 * 4 = 4024 bytes
Total = 8,072 bytes

HashMap:

class HashMap<K, V> {
    Entry<K, V>[] table;
    Entry<K, V> forNull;
    int size;
    int modCount;
    int threshold;
    Set<K> keys
    Set<Entry<K, V>> entries;
    Collection<V> values;
}

Class = 12 + 8 * 4 = 48 bytes
Entry = 32 + 16 + 16 = 64 bytes
Array = 20 + 1000 * 64 = 64024 bytes
Total = 64,136 bytes

Source: Android Memories by Romain Guy from slide 90.

The numbers above are the amount of memory (in bytes) allocated on heap by JVM. They may vary depending on the specific JVM used.

java.lang.instrument package contains some helpful methods for advanced operation like checking the size of an object with getObjectSize(Object objectToSize).

Extra info are available from official Oracle documentation

Class = 12 byte + (n instance variables) * 4 byte
Array = 20 byte + (n elements) * (element size)
Entry = 32 byte + (1st element size) + (2ns elements size)




After some googling I try to add some information to the already posted anwers:

Isaac Taylor made a performance comparision for SparseArrays and Hashmaps. He states that

the Hashmap and the SparseArray are very similar for data structure sizes under 1,000

and

when the size has been increased to the 10,000 mark [...] the Hashmap has greater performance with adding objects, while the SparseArray has greater performance when retrieving objects. [...] At a size of 100,000 [...] the Hashmap loses performance very quickly

An comparision on Edgblog shows that a SparseArray need much less memory than a HashMap because of the smaller key (int vs Integer) and the fact that

a HashMap.Entry instance must keep track of the references for the key, the value and the next entry. Plus it also needs to store the hash of the entry as an int.

As a conclusion I would say that the difference could matter if you are going to store a lot of data in your Map. Otherwise, just ignore the warning.

Posted by hoonihoon85 hoonihoon