2012. 8. 9. 10:44 안드로이드

검색

https://www.google.co.kr/search?q=addjavascriptinterface+proguard+not+working&sugexp=chrome,mod=18&sourceid=chrome&ie=UTF-8

결과

http://stackoverflow.com/questions/7424510/uncaught-typeerror-when-using-a-javascriptinterface

 


빈 인터 페이스 하나 만든다

package com.danal.saljaTalk.Common;

 

public interface DontProguard

{

 

}

프로 가드 돌리기 싫은 클레스에 implements한다

class TwitterCallBack extends WebViewClient implements DontProguard

       {

 

 

 

Proguard.cfg에 아래와 같이 추가한다

 

-keep public class com.Common.DontProguard

-keep public class * implements com.Common.DontProguard

-keepclassmembers class * implements com.Common.DontProguard {

    <methods>;

}

 

 

그럼 DontProguard implements 클레스들은 프로가드가 돌아가지 않는다 ~

 

패키지를 프로가드 돌리기 싫을때는 

-keep class com.sns.** { *; } 

이것처럼 한다 

 

========================================================================================

트위터에서 핀코드를 가져오는데에서

mWeb.addJavascriptInterface(new MyJavaScriptInterface(), "GETPINNUMBER");

이렇게 해서 했는데

MyJavaScriptInterface 이부분이 프로가드가 돌아가면서 실행이 되지 않았는데

위와 같이 설정하니깐 이상없이 돌아 갑니다.

 

참고하세요

 

 



 

 

posted by 욱이다