소곤소곤 ad

2015년 8월 6일 목요일

인그레스 하기 좋은 폰 (GPS 관점에서). Better devices for playing Ingress with the location service.

■ GPS 말고도 다른것들이? 

인그레스는 위치기반 게임이기 때문에, 현재 위치를 정확하게 빨리 잡아내는 것이 매우 중요하다. 흔히들 GPS를 위치정보라는 말과 동일시 하는데, 사실 GPS는 미국이 주도하는 위성위치정보시스템들을 이야기 하는 것이고, 다른 국가들도 이에 대응하여 위성위치정보 시스템들을 개발해서 운영하고 있다.

대표적인 것이 러시아의 GLONASS, 유럽의 Galileo. 그리고 비교적 최근의 일본,중국(Beidou) 위성들을 이용한 위치정보 시스템들이 있다.

당신의 위치, 실외등의 다른 조건이 동일하다고 할 때에 현재 위치를 정확하고 빠르게 잡아 내려면 보다 많은 위성 정보를 수신할 수 있는 스마트폰이 절대적으로 유리하다.

비교적 최근 스마트폰들은 이것들중 복수개의 위성위치정보시스템을 지원하지만 스마트폰 기종별로 조금씩 다르다는 사실.


■ 스마트폰 기종별로 수신하는 위성위치정보시스템이 다르다.



우리나라 휴대폰들이 GLONASS를 지원하기 시작한게 갤럭시S3, 노트2, 옵티머스G 부터니까 사실 얼마되지 않았다. 아이폰은 아이폰4부터 글로나스를 지원한다.

눈여겨 볼점은 중국의 Beidou 위성시스템인데, 우리나라가 중국 바로 옆에 있는 덕택에(?) 이 시스템을 지원하면 엄청난 혜택을 보게 되는것. 삼성의 갤럭시 S5이후 노트4 이후 기종이 이를 지원한다. 


■ 실제 테스트 

GPS Status 앱 (설치 https://play.google.com/store/apps/details?id=com.eclipsim.gpsstatus2)을 이용하면 현재 내 머리위에 있는 위성들의 존재를 알 수 있다.


갤럭시 S3 LTE 

GPS, GLONASS,일본위성(193번)까지 잡는다.

갤럭시 S5 

중국 Beidou까지 지원한다. 200번대 위성정보까지 수신하는 걸 볼 수 있다.


LG 옵티머스 G

수신률이 좋은 편이지만  아쉽게도 일본,중국 위성 정보를 수신하지 않는다.


LG G3

역시 위성 수신률은 좋은편이지만 중국,일본 위성 지원하지 않는게 아쉽다.



Apple iPhone 4

아이폰4부터는 GLONASS를 지원한다. 하지만 최근버전인 아이폰6도 일본/중국 위성을 지원하지 않는다.


결론, 삼성 갤럭시 S5, 노트4 이후 기종이 위성위치정보 수신범위가 제일 넓다. 


참고, Glonass를 지원하는 스마트폰 목록은

참고로, Beidou를 지원하는 삼성 갤럭시 기종은, 

※ 이 글은 앞집꼬마님의 게시글 http://2222222.tistory.com/99 을 참고로 작성한 것입니다. 링크글 원문 보시면 보다 많은 유용한 정보들이 있습니다.


2015년 7월 2일 목요일

프리덤 인앱결제 크랙 막기 (서버없이)

프리덤으로 인앱 결제를 하는 것을 막기위해, 일반적으로 서버를 두고 별도 검증을 하는 것이 필수적인데, 왜 그래야 할까?
인앱결제과정에서 가짜영수증과 가짜서명이 자체 검증(Secure.verify)을 문제없이 통과하게 되는데, 프리덤에서 이 부분을 무조건 true로 리턴하는 패치를 삽입하는 듯하다. 
java.security.Signature.verify()를 따라가다 보면, abstract protected로 설정된 engineVerify 함수를 만나게 되는데, 이 부분이 굉장히 의심스럽다(고 한다).
그래서, 이 부분을 직접 구현하는 시도가 있었고 아직까지는 성공적으로 동작한다(고 한다).

원문 (http://stackoverflow.com/questions/21966369/protecting-in-app-purchases-from-freedom-hack) 을 살펴보면,

The current implementation of freedom is that it will replace (redirect) all the method calls of java.security.Signature.verify(byte[]) to a freedom's jni method which in turn just simply always return true (or 1).
Take a look at java.security.Signature.verify(byte[]):
 public final boolean verify(byte[] signature) throws SignatureException {
        if (state != VERIFY) {
            throw new SignatureException("Signature object is not initialized properly");
        }
        return engineVerify(signature);
    }
Here the engineVerify method is an abstract protected method which is first defined in java.security.SignatureSpi(Signature extends SignatureSpi). OK, that enough, because I can't believe java.security.Signature.verify(byte[]) method anymore, I would use engineVerifymethod directly. To do that, we need to use reflection. Modify the verify method of IABUtil/Security from:
public static boolean verify(PublicKey publicKey, String signedData, String signature) {
        Signature sig;
        try {
            sig = Signature.getInstance(SIGNATURE_ALGORITHM);
            sig.initVerify(publicKey);
            sig.update(signedData.getBytes());
            if (!sig.verify(Base64.decode(signature))) {
                Log.e(TAG, "Signature verification failed.");
                return false;
            }
            return true;
        } catch (...) {
            ...
        }
        return false;
    }
To:
public static boolean verify(PublicKey publicKey, String signedData, String signature) {
        Signature sig;
        try {
            sig = Signature.getInstance(SIGNATURE_ALGORITHM);
            sig.initVerify(publicKey);
            sig.update(signedData.getBytes());
            Method verify = java.security.SignatureSpi.class.getDeclaredMethod("engineVerify", byte[].class);
            verify.setAccessible(true);
            Object returnValue = verify.invoke(sig, Base64.decode(signature));
            if (!(Boolean)returnValue) {
                Log.e(TAG, "Signature verification failed.");
                return false;
            }
            return true;
        } catch (...) {
            ...
        }
        return false;
    }
That is simple but it works with the current implementation of freedom until they update its algorithm in the future. (BTW, if you want to test if this works or not, this is my simple app).


즉, Security의 verify를 위 코드처럼 바꾸면, 프리덤이 바꿔치기한 (무조건 true를 리턴해주는) engineVerify를 무시하고 직접 검증할 수 있다. 
서버를 두지 않고, 인앱결제를 검증하는 경우에는 아주 간단하고 유용한 방법이다. 실제로 프리덤을 막아낼까? 이 코드를 작성한 사람이 직접적용한 앱을 가지고 테스트 해보자. https://play.google.com/store/apps/details?id=com.rainbowedu.toeicguru 



2015년 6월 26일 금요일

webview에서 새창으로 브라우저 열기, Opening new browser from webview

Webview를 이용하여 웹페이지를 앱내부에 넣는 것은 그리 어렵지 않다. 그런데, 보다 복잡한 곳으로의 링크를 webview아닌 브라우저를 이용해서 하도록 하고 싶을 때가 있다.

또, 내 경우는 웹뷰내에 Adsense 구글광고가 들어 있는데 이용자가 이 것을 클릭했을때에 처리가 되지 않는 문제가 있어서 별도 브라우저를 구동시키는 방법이 필요했다.


 mWebView.setWebViewClient (
  new WebViewClient () {
   @Override        
   public boolean shouldOverrideUrlLoading (WebView view, String url) 
   {             
    view.loadUrl(url);             
    return true;
   }
  }
 );


shoulOverrideUrlLoading 에서 url 이 내 페이지가 아닌 경우 브라우저를 실행시키면 될거 같았는데, 안타깝게도 이 아이디어는 동작하지 않는다.

stackoverflow.com 에서 찾아낸 아이디어는, ChromeClinet를 이용해서 새로운 WebView를 만든다음에, 그 안쪽의 shoulOverrideUrlLoading 에서 브라우저를 구동시키는 것이다. 이게 무슨 복잡한 방법이냐 싶은데...  잘 돌아가니 OK!


 WebSettings webSetting = mWebView.getSettings();

 webSetting.setJavaScriptEnabled(true); 
 webSetting.setJavaScriptCanOpenWindowsAutomatically(true);
 webSetting.setSupportMultipleWindows(true);


 mWebView.setWebChromeClient(new WebChromeClient() {
         @Override 
         public boolean onCreateWindow(WebView view, boolean dialog, boolean userGesture, Message resultMsg)
         {
          // return true or false after performing the URL request
          WebView newWebView = new WebView(MyActivity.this);
                view.addView(newWebView);
                WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj;
                transport.setWebView(newWebView);
                resultMsg.sendToTarget();

                newWebView.setWebViewClient(new WebViewClient() {
                    @Override
                    public boolean shouldOverrideUrlLoading(WebView view, String url) {
                        Intent browserIntent = new Intent(Intent.ACTION_VIEW);
                        browserIntent.setData(Uri.parse(url));
                        startActivity(browserIntent);
                        return true;
                    }
                });          
          return true;
         }
        });

        mWebView.loadUrl ("...");

2015년 6월 10일 수요일

Display the Loading Dialog for android system 안드로이드 시스템 로딩 아이콘 표시하기

앱을 만들다보면, 어떤 오래걸리는 작업중에 로딩을 표시하고픈 일이 자주 있는데, 이미지를 그리고 레이아웃을 잡고 애니메이션을 시키고 하는 일을 직접 다 하려고 보면 엄두가 안난다.

뭔가 쉽게 로딩화면을 표시해주는 방법이 없을까? 바로 ProgressDialog를 사용하는 것이다. 한 줄이면 끝난다.

ProgressDialog dialog = ProgressDialog.show(context, "", "Loading. Please wait...", true);





없어지게 하고 싶으면, dialog.dismiss(); 끝.

2015년 3월 10일 화요일

스마트폰 하드웨어 정보 모음

제조사 휴대폰명 애칭 모델번호 해상도 Network CPU
LG 옵티머스G 옵쥐 F180 HD 1280x720    
  옵티머스G Pro 옵쥐프로 F240 FHD 1920x1024 LTE  
  옵티머스GX 옵쥐엑스 F310 FHD 1920x1024    
  옵티머스GK 옵쥐엑스 F220 FHD 1920x1024    
  옵티머스 뷰 옵뷰2        
  옵티머스 뷰2 옵뷰2 F200      
  옵티머스 LTE3 옵티삼 F260 HD 1280x720    
삼성 갤럭시노트 갤노트 SHV-E160 HD 1280x720   1.5x2
  갤럭시노트2 갤노트2 SHV-E250 HD 1280x720   1.6x4
  갤럭시 S3 3G 갤3지 SHV-M440 HD    
  갤럭시 S3 LTE 갤3 SHV-E210 HD    
  갤럭시 S4 미니 갤4미니 SHV-E370      
  갤럭시 그랜드 갤그랜 SHV-E270 WVGA    
  갤럭시 넥서스 갤넥 SHW-M420 HD    
  갤럭시 S5 프라임/광대역 갤오프 G906 QHD 2560x1440 LTEx3  
  갤럭시탭 갤탭 SHW-M180 WSVHGA    
팬텍 베가아이언 베아 IM-A870   LTE  
  베가 LTE-A 베티아 IM-A880   LTE-a  
  베가 NO.6 베넘식 IM-A860   LTE  
  베가 R3 베알삼 IM-A850   LTE  
  베가 S5 베스파 IM-A840   LTE  




Samsung Galaxy S3 (c1skt)
Samsung Galaxy Note2 (t0lteskt)
Samsung Galaxy S2 (SHW-M250S)
LGE LG G2 (g2)
Samsung Galaxy S3 (c1ktt)
AppPlayer
Samsung Galaxy Note2 (t0ltektt)
Samsung Galaxy S2 (SHW-M250K)
LGE LG Optimus G (geehrc4g)
Samsung Galaxy S3 (m0skt)
LGE LG Optimus G Pro (geefhd)
Samsung Galaxy S4 LTE-A (ks01lteskt)
Samsung Galaxy S3 (c1lgt)
Samsung Galaxy Note3 (hlteskt)
Samsung Galaxy Note2 (t0ltelgt)
Samsung Galaxy Note (SHV-E160S)
LGE Optimus Vu2 (vu2kt)
Samsung Galaxy S4 Mini  (serranoltektt)
LGE LG Optimus G (geehrc)
Samsung Galaxy Note (SHV-E160K)
Samsung Galaxy Win (deloslteskt)
LGE LG Optimus G Pro (geefhd4g)
Pantech IM-A870S (ef52s)
Pantech IM-A870L (ef52l)
LGE TBD (aka)
Samsung Galaxy Note (SHV-E160L)
Samsung Galaxy Pop (superiorlteskt)
Samsung Galaxy Note3 (hltelgt)
Samsung Galaxy Note (GT-N7000)
Pantech EF34K (ef34k)
Samsung Galaxy S4 (ks01ltektt)
Samsung Galaxy S2 HD LTE (SHV-E120S)
LGE Optimus Vu2 (vu2sk)
Samsung Galaxy Note3 (hltektt)
Pantech IM-A850L (ef50l)
Pantech IM-A850S (ef48s)
Pantech IM-A830L (ef46l)
Samsung Galaxy S2 (SHW-M250L)
Pantech IM-A840S (IM-A840S)
Pantech IM-A850K (ef49k)
Pantech IM-A860S (ef51s)
Samsung Galaxy S (SHW-M110S)
LGE G Pro2 (b1)
Samsung Galaxy S4 (ks01ltelgt)
Pantech EF33S (ef33s)
LGE LG Optimus LTE3 (fx1sk)
Samsung Galaxy S3 (m0)
LGE LG optimus LTE2 (d1lu)
LGE LG Gx (omega)
Samsung Galaxy S4 (jalteskt)
Pantech IM-A830S (ef47s)
LGE LG optimus LTE2 (d1lkt)
Pantech IM-A870K (ef52k)
Pantech IM-A860L (ef51l)
LGE LG G3 (g3)
Samsung Galaxy S2 (GT-I9100)
Samsung Galaxy S4 (ja3g)
Samsung Galaxy Win (delosltelgt)
Samsung Galaxy S4 (jaltelgt)
LGE G3 Beat (jagn)
Samsung Galaxy S2 (SHV-E110S)
LGE Optimus Vu2 (vu2u)
Samsung Galaxy S5 (lentislteskt)
Pantech VEGA Secret UP (ef62l)
Pantech IM-A860K (ef51k)
Samsung Galaxy M Style (SHW-M340S)
Samsung Galaxy Note4 (trelteskt)
Samsung Galaxy Grand2 (ms01ltektt)
Samsung Galaxy S5 (kltektt)
Samsung Galaxy S5 (klte)
Pantech IM-A880S (EF56S)
Samsung Galaxy Note3 Neo (frescolteskt)
Pantech IM-A830K (ef45k)
Samsung Galaxy Grand (baffinltektt)
Samsung Galaxy Note II (t03g)
LGE PRADA 3.0 (p2)
Samsung Galaxy Note3 Neo (frescoltektt)
Pantech VEGA Secret Note (EF59S)
Samsung Galaxy S5 (kltelgt)
LGE LG F70 (f70n)
Pantech VEGA Secret UP (ef61k)
Pantech IM-840SP (IM-A840SP)
LGE LG G3 Cat.6 (tiger6)
Samsung Galaxy S4 (jaltektt)
Pantech IM-A830KE (ef45kv)
Samsung Galaxy S5 (klteskt)
Pantech Vega LTE M (ef65l)
LGE VU3 (vu3)
Samsung Galaxy Grand2 (ms01ltelgt)
Samsung Galaxy S4 Active (jactivelteskt)
Samsung Galaxy Player 5.8 (harrisonkrktt)
LGE Optimus GK (gvfhd)
Pantech IM-A810K (ef40k)
LGE LG optimus LTE2 (d1lsk)
LGE Optimus 3D MAX (cx2)
Samsung Galaxy Note 10.1 (p4notewifiany)
LGE Optimus LTE (i_skt)
Samsung Galaxy Core Advance (cane3gskt)
Samsung Galaxy Core Safe (arubaslimss)
Samsung Galaxy Tab 8.9 (SHW-M305W)
Samsung Galaxy S2 HD LTE (SHV-E120L)
Samsung Galaxy S2 HD LTE (SHV-E120K)
KT Tech KM-S330 (s330)
LGE Optimus LTE (i_u)
Samsung Galaxy Note3 (hlteatt)
Samsung Galaxy Player 5.8 (harrisonkrlgt)
Pantech VEGA Secret Note (EF59K)
Samsung Galaxy Note4 (treltelgt)
Samsung Galaxy Nexus (maguro)
Samsung Galaxy S5 (lentisltektt)
LGE LG G Pad 8.3 homeBoy (awifi070u)
Samsung Galaxy Note4 (treltektt)
Samsung Galaxy S5 (lentisltelgt)
Pantech VEGA Secret UP (ef60s)
Pantech IM-A800S (ef39s)
LGE Optimus Vu (batman_lgu)
Samsung Galaxy Tab 10.1 (SHW-M380W)
Pantech VEGA Secret Note (EF59L)
LGE LG Gx (omegar)
Samsung Galaxy R-Style (jaguark)
Huawei H60-L04 (hwH60)
Samsung Galaxy 070 (hendrix)
Samsung SM-T255S (q7lteskt)
Samsung Galaxy Grand2 (ms01lteskt)
Samsung Galaxy Tab3 7.0   (lt02wifilgt)
Pantech EF35L (ef35l)
Samsung Galaxy Grand-Max (grandmaxltekx)
Samsung Galaxy Alpha (slteskt)
SK Telesys ITP-R208W (rk30sdk)
Google Nexus 7 (2012) (grouper)
Samsung Galaxy Note3 Neo (frescoltelgt)
Samsung Galaxy Tab2 7.0 (espressorf)
Pantech IM-A810S (ef40s)
Samsung Galaxy Grand (baffinlteskt)
LGE Optimus Big (justin)
Samsung Baffin (baffinltelgt)
Pantech AT1 (at1)
Samsung Galaxy U (SHW-M130L)
Samsung Galaxy Mega 6.3 (meliusltelgt)
Samsung Galaxy Tab2 10.1 (espresso10wifi)
Pantech IM-A910S (ef63s)
LGE Optimus Q2 (bssq_450-06)
Samsung Galaxy Grand (baffinveskt)
Samsung Galaxy A5 (a5ulteskt)
Samsung Galaxy Tab 10.1 (SHW-M380S)
Motorola XT910 (umts_spyder)
Samsung Galaxy Alpha (sltelgt)
KT Tech KM-S220 (s220)
Samsung Galaxy Note 10.1 (p4noteltelgt)
Pantech IM-A910K (ef63k)
LGE G Pad 10.1 (e9wifin)
LGE Optimus Vu (batman_skt)
LGE LG G Pad 8.3 (awifi)
Samsung Galaxy Player (YP-GB70)
Samsung Galaxy Tab 10.1 (SHW-M380K)
LGE L70 (w5n)
Motorola Atrix (olympus)
Samsung Galaxy Mega 6.3 (meliuslteskt)
Samsung Galaxy K Zoom (m2altelgt)
Google Nexus 7 (flo)
Samsung Galaxy Tab2 10.1 (espresso10rf)
Pantech VEGA Secret UP (EF61K)
LGE LG G Flex (zee)
Samsung Galaxy Note Edge (tbelteskt)
Samsung SHW-M480S (p4noterfskt)
Samsung Galaxy Note 10.1 (p4noterf)
Samsung Galaxy Note 10.1 (p4noteltektt)
Samsung Galaxy S4 Zoom (mprojectltelgt)
Samsung Galaxy Note 10.1 (lt03ltelgt)
LGE G3 Screen (liger)
LGE LG Optimus LTE Tag (lge_120_kt)
Samsung Galaxy Note 8.0 (konawifiany)
Samsung Galaxy Tab2 7.0 (espressowifi)
Pantech IM-A910L (ef63l)
KT Tech TAKE SUIT (e100)
LGE Optimus Vu (batman)
LGE Gx2 (b2ln)
Samsung Galaxy Tab 8.9 (SHV-E140S)
LGE Optimus EX (x2_450-05)
LGE LG G3 A (tigers)
KT Tech KM-S120 (s120)
Samsung Galaxy Note 10.1 (p4noterfktt)
SK Telesys All&G PAD (mypad2)
Samsung Galaxy Note 10.1 2014 Edition (lt03wifikx)
Samsung Galaxy Note 8.0 (kona3g)
Samsung Galaxy R-Style (jaguarl)
Google Nexus S (crespo)
LGE LG Optimus 3D (cosmopolitan)
LGE LG Connect 4G (cayman)
Samsung Galaxy A5 (a5ultektt)
Samsung Galaxy player 70 Plus (YP-GB70D)
Samsung Galaxy Tab (SHW-M180L)
Samsung Galaxy K (SHW-M130K)
Pantech VEGA Secret UP (EF60S)
Samsung Galaxy Alpha (sltektt)
KT Tech KM-S300 (s300)
KT Tech EV-S100 (s100)
HTC HTC_X515E (rider)
Samsung Galaxy Tab4 10.1 (matissewifikx)
LGE Optimus Big (lu6800)
Samsung Galaxy Tab3 7.0 (lt02ltetmo)
LGE Optimus Vu (lge_325_skt)
LGE LG Optimus LTE Tag (lge_120_skt)
LGE Optimus Black (ku5900)
Samsung Galaxy R-Style (jaguars)
Barnes and Noble NOOK짰 HD (hummingbird)
HTC HTC Velocity 4G (holiday)
Samsung Galaxy Note3 (ha3g)
Pantech Vega X (ef18k)
Pantech ef14lv (ef14lv)
Pantech Mirach (ef13s)
Samsung Galaxy A5 (a5ultelgt)
Samsung Galaxy Tab (SHW-M180S)
Samsung Galaxy Tab 8.9 (SHV-E140L)
Motorola Defy (umts_jordan)
LGE Optimus One (su370)
KT Tech KM-S200 (s200)
Samsung Galaxy Mega 6.3 (meliusltektt)
LGE Optimus One (lu3700)
LGE LG-LU3100 (lu3100)
Samsung Galaxy Note 10.1 (lt03lteskt)
Samsung Galaxy Tab3 7.0 (lt02wifi)
Samsung Galaxy S5 (k3g)
Samsung Galaxy Tab3 Lite (goyawifi)
Samsung Galaxy TabS 10.5  (chagallwifikx)
LGE Optimus Black (black)
Samsung Galaxy A (archer)
Samsung Galaxy A7 (a7lteskt)
Samsung Galaxy Player 4 (YP-GB1)
Samsung Galaxy S (SHW-M190S)
Samsung SHV-E150S (SHV-E150S)
HP 7 Tablet (Mesquite)
Sony Xperia Z2 (D6503)
NEC G?셻One CA-201L (CA201L)
Sony Ericsson Xperia Z1 (C6903)
LGE LG-KU8800 (x2_450-08)
LGE Optimus EX (x2)
Acer Iconia One 7 (vespa2)
Samsung Galaxy Note Pro 12.2 (v1awifikx)
Samsung Galaxy Note4 (tre3calteskt)
Samsung Galaxy Note Edge (tbeltektt)
Samsung Galaxy Note2 (t0lte)
LGE Optimus 2X (star_450-05)
LGE LG-P990hN (star)
Pantech Izar (sp33k)
Samsung Galaxy S4 Mini  (serranolte)
KT Tech KM-S220H (s220H)
Enspert S732 (rk3026)
Samsung Galaxy Note 10.1 (p4notewifiww)
Samsung Galaxy Note 10.1 (p4notelteskt)
Barnes and Noble NOOK짰 HD+ (ovation)
Samsung Samsung Galaxy S4 Zoom (mprojectltektt)
Samsung Galaxy Tab Pro 8.4 (mondrianwifikx)
Acer A1-811 (mango)
Samsung Galaxy Tab3 7.0  (lt023g)
Samsung Galaxy Tab3 (lt01wifikx)
Samsung Galaxy Tab3 8.0 (lt01wifi)
Samsung Galaxy S4 (ks01lte)
Samsung Galaxy Note 8.0 (konawifi)
Samsung Galaxy S5 (kltevzw)
iRIver Wow(Window of the world) (itq700)
Samsung Galaxy Note3 (hltetmo)
Samsung Galaxy Note3 (hlte)
Samsung Galaxy Player 5.8 (harrison)
g02_d7ref
Samsung Galaxy Round (flteskt)
fiber-inets
Pantech IM-A920S (ef65s)
Pantech IM-A775C (ef34c)
Pantech IM-A730S (ef30s)
Pantech Mirach (ef13l)
LGE G Pad 7.0 (e7wifi)
Acer A1-830 (ducati)
Xiaomi HM NOTE 1LTETD (dior)
Samsung Galaxy S3 (d2can)
LGE Optimus 3D (cosmo_450-05)
Samsung Galaxy Grand (baffinvektt)
HTC Desire HD (ace)
Samsung Galaxy A7 (a7ltektt)
Vandroid
Samsung SHW-M340K (SHW-M340K)
Samsung Galaxy Tab 8.9 (SHV-E140K)
Lenovo Mobile S5000 (S5000)
Gigabyte i7 (RCT6773W22)
GT-P7510
Samsung Galaxy Tab 8.9 (GT-P7300)
Acer A3-A10 (zara)
LGE LG G Flex2 (z2)
x86
LGE Optimus 4X HD (x3)
LGE 070 touch (w3voip)
LGE Optimus Vu (vu10)
Samsung Galaxy Note Pro 12.2 (viennaltekx)
vfpv
LGE Wine Smart (vfp)
Acer Icona One 7 (vespa)
u35gt
LGE LG Optimus L9 (u2)
Sony Xperia Tablet S (txs03)
Samsung Galaxy Note4 (trltetmo)
Samsung Galaxy Note4 (trelte)
Samsung Galaxy Note4 (tre3caltektt)
Toshiba Corporation AT400 (tostab12AL)
Toshiba Corporation AT100 (tostab03)
LGE LG Optimus One (thunderg)
LGE Optimus One (thunder_kor-08)
LGE Optimus One (thunder_kor-05)
NVidia TegraNote (tegranote)
HTC HTC One max (t6ul)
Samsung Galaxy Note2 (t0ltetmo)
Motorola XOOM (stingray)
Samsung Galaxy Tab3 10.1 (santos10wifi)
HTC HTC Sensation XL with Beats Audio X315e (runnymede)
Hisense F5281CH (rk3288)
Hisense Sero 8 (rk3188)
rk29sdk
HP Slate 21 Pro (ranger)
qishang77_cu_ics2
Acer Picasso (picasso)
p4wifi
Pantech Flex (oscar)
nuclear-pfdq88c
nuclear-evb
nuclear-86V
Sony Tablet S (nbx03)
Fuhu nabi 2 Tablet (mt799)
Samsung Galaxy Grand2 (ms013g)
iRIver MM3202 (mm3201)
Samsung Galaxy Tab4 8.0 (milletwifiue)
Samsung Galaxy Tab4 8.0 (milletltektt)
Samsung Galaxy Tab4 8.0 (milletlte)
Asus MeMO PAD (me172v)
mc706
Samsung Galaxy Tab4 10.1 (matissewifi)
HTC HTC One (m7)
Samsung Galaxy Note 10.1 (lt03ltektt)
Samsung Galaxy Tab3 7.0    (lt02lteatt)
Samsung Galaxy Tab3 Kids (lt02kidswifi)
Samsung Galaxy Trend Lite (kylevess)
Samsung Galaxy TabS 8.4 (klimtwifikx)
Samsung Galaxy S4 (jfltevzw)
Samsung Galaxy S4 (jfltecan)
iRIver Wow TAB + (itq701)
Huawei Huawei-U8665 (hwu8665)
Huawei HUAWEI MediaPad 10 Link+ (hws10231l)
Huawei MediaPad 10 LINK (hws10201u)
Archos Hudl HT7S3 (ht7s3)
Samsung Galaxy Note3 (hltevzw)
Samsung Galaxy Note3 Neo (hl3g)
Samsung Galaxy S3 Mini (golden)
Samsung Galaxy Camera  (gd1ltelgt)
Samsung Galaxy Grand Prime (fortunalte)
Google Nexus 9 (flounder)
fiber-mpgio
Motorola Moto G (falcon_umts)
f16ref
HTC HTC_P515E (expresskt)
ZTE ZTE N9120 (elden)
ef32k
LGE G pad 8.0 LTE (e8lte)
LGE My touch 4G (e739)
Enspert enspert_e201 (e201)
dtc_gt18
Samsung Galaxy Tab4 7.0 (degaswifiue)
Samsung Galaxy S3 (d2usc)
Samsung Galaxy S3 (d2ltetmo)
Samsung Galaxy S3 (d2att)
crane-sochip-sc3077
crane-eduplayer-sc3057
crane-amos7
Samsung Galaxy Pocket Neo (corsica)
Samsung Galaxy Tab S 10.5 (chagallwifi)
Motorola Droid X (cdma_shadow)
Fujitsu ARROWS X LTE F-05D (blaze)
Samsung Galaxy Grand Neo (baffinlite)
Samsung Galaxy Grand duos (baffin)
ZTE Z992 (aviva)
Samsung Galaxy Core (arubaslim)
Samsung SGH-S730G (amazingtrf)
Samsung Galaxy Centura (amazing3gtrf)
Acer Liquid E700 (acer_e39)
Samsung Galaxy A7 (a7ltelgt)
Z25
TCT Mobile Limited (Alcatel) ONE TOUCH 4033X (Yaris_M_GSM)
Lenovo Mobile Lenovo YOGA Tablet Pro-1050L/Yoga Tablet 2 (YT2)
Samsung Galaxy Player 4.2 (YP-GI1)
TCT Mobile Limited (Alcatel) Vodafone Smart mini (Vodafone_875)
Virtual
Pegatron Android Tablet PC (TabletPC)
Asus ASUS Transformer Pad TF300TG (TF300TG)
Gigabyte NS-15AT10 (TA120)
Sony Ericsson Xperia ray (ST18i)
Samsung Galaxy S2 Epic (SPH-D710)
Sony Xperia Z2 Tablet (SOT21)
Samsung SHW-M460D (SHW-M460D)
Sony Ericsson Xperia Tablet Z (SGP312)
Samsung Galaxy S2 (SGH-I777)
Samsung Galaxy Note3 (SC-02F)
Samsung Galaxy Note2 (SC-02E)
Fujitsu ARROWS A SoftBank 301F (SBM301F)
Lenovo Mobile IdeaTab S6000 (S6000)
Wind River Ellipsis 7 (QMV7A) (QMV7A)
TCT Mobile Limited (Alcatel) ALCATEL ONE TOUCH P310A (POP7)
Sony Ericsson Xperia sola (MT27i)
Asus ASUS Fonepad ME371MG (ME371MG)
Asus ME173X (ME173X)
Digi-In Monster M10 (M10)
Sony Ericsson Xperia SL (LT26ii)
Kyocera Corporation URBANO L02 (KYY22)
Kyocera Corporation DIGNO S (KYL21)
Asus MeMO Pad ME103K (K01E_2)
Asus MeMO pad 8 ME581CL (K015)
Asus MeMO Pad 7 (K013_1)
Asus MeMO Pad 8 (K011_1)
Samsung Galaxy Y (GT-S5360T)
Samsung Galaxy Pocket (GT-S5300)
Samsung Galaxy Tab 7.7 (GT-P6800)
Samsung Galaxy Tab 7.0 Plus (GT-P6200)
Samsung Galaxy Tab (GT-P1000L)
Samsung Galaxy Tab (GT-P1000)
Samsung Galaxy Beam (GT-I8530)
Enjoy 71
Digi-In EGQ337 (EGQ337)
Pantech VEGA Secret UP (EF62L)
Hisense NBX-T7014 (E270BSA)
DragonTouch-Y88X
Sony Xperia Z3 Compact (D5833)
Sony Xperia C3 (D2533)
Sony Ericsson Xperia Z (C6602)
Kyocera Corporation Hydro (C5170)
Sony Ericsson Xperia M (C1904)
Acer B1-710 (B1-710)
AN101G4