안녕하세요.

  눈팅만 하다가, 정말 간단한 소스이기는 하지만 혹시나 필요한 분들을 위한 방법을 올려봅니다.


  요즘 인앱결제로 수익을 내는 어플이 각광받는 스타일인 것 같은데..

  메모리 치트 어플로 그것 마저도 빗겨나가는 것 같더라구요.


  그래서, onCreate 단에서 설치된 패키지로 치트어플이 있는지 확인 하는 방법을 써보았습니다. 치트 어플이 있으면 지우라는 메세지를 띄우고 종료되도록 하지요.


  public void noCheat() {

PackageManager pm = getPackageManager();

List< ApplicationInfo > appList = pm.getInstalledApplications( 0 );

int nSize = appList.size();

for( int i = 0; i < nSize; i++ ) {

if(

(appList.get(i).packageName.indexOf("com.cih.gamecih2") != -1) ||

(appList.get(i).packageName.indexOf("com.cih.game_cih") != -1) || (appList.get(i).packageName.indexOf("cn.maocai.gamekiller") != -1) || (appList.get(i).packageName.indexOf("idv.aqua.bulldog") != -1)

) {

Toast toast = Toast.makeText(this, "치트 어플 발견! 지우고 실행해주세요!", Toast.LENGTH_LONG);

toast.show();

     onDestroy();

   }

}

  }


  붉은 글씨 부분이 패키지 정보인데, 현재로서는 GameCIH2, 3 와 Gamekiller Game Guardian 이라는 어플을 발견해서 종료되도록 해뒀습니다. Godwish 님 께서 올려두신 글을 보면, 메모리 자체를 접근 못하게 하는 좋은 방법도 있지만 스피드핵만큼은 도저히 막을 방법을 찾지 못해서 이 방법이라도 필요하신 분들이 있으시면 도움이 되었으면 좋겠네요.!


  단점이라면, 역시 패키지를 일일히 추가해줘야 하기 때문에 항상 모니터링을 해야 한다는 점이겠네요. 그 점에 관해서는 새로운 어플을 발견할 때 마다 댓글로 패키지명을 추가해두도록 하겠습니다.