Workspace 에 이미 동일한 프로젝트가 있어서 그런 메세지가 발생합니다. 


저의 경우에는 해당 프로젝트를 지웠지만 같은 에러가 발생해서 


Import > Android > Existing Android Code Into Workspace 하지 말고


Import > General > Existing Projects into Workspace 로 import 해서 해결했습니다.






신고
  1. 강냉이. 2015.08.07 15:04 신고

    잘보고갑니다^^

  2. *저녁노을* 2015.08.17 20:08 신고

    잘 배워가요^^

웹뷰 자체에 배경색을 변경하여도 어짜피 웹에서 내용을 다운받으면 웹의 설정대로 색이 적용됩니다. 


웹에서 전달 받은 값 자체를 검은색으로 변경해주어야 합니다. 



 

mWeb.loadDataWithBaseURL("", "<body bgcolor='000000' />", "text/html", "utf-8", "");

 

이런식으로 전달받은 웹의 태그의 백그라운드 색을 바꿔주면 


웹뷰의 배경색을 변경할수 있습니다. 





신고



마켓에 등록용 apk를 Export 중!


위와같이 에러가 발생하면, Buid-tools 의 문제입니다. 


Android SDK Manager 을 실행후 

Android SDK Build-tools 을 설치하거나 최신 버전이 아니시면 최신버전으로 업데이트 하시면 됩니다. 




그후에 이클립스를 꼭 재시작 해주세요. 


이클립스 재시작후 다시 Export 하시면 정상적으로 진행됩니다. 






신고

아무리 찾아도 은행코드에 대해서 자세하게 

나온데가 없어서


많이 고생했네요 ^ㅡ^ 



Bank Codes for Korean Banks


Bank CodeName of Bank
39KYONGNAM BANK
34KWANGJU BANK
04KOOKMIN BANK
03INDUSTRIAL BANK OF KOREA
12AGRICULTURAL COOPERATION UNIT
11NATIONAL AGRICULTURAL COOPERATIVE FEDERATION
31DAEGU BANK
55DEUTSCH BANK AG SEOUL BRANCH
59BANK OF TOKYO-MITSUBISHI SEOUL BRANCH
58MIZUHO CORPORATE BANK SEOUL BRANCH
60BANK OF AMERICA N.A. SEOUL BRANCH
32PUSAN BANK
50KOREA FEDERATION OF SAVINGS BANK
45KOREAN FEDERATION OF COMMUNITY CREDIT COOPERATIVES
25SEOUL BANK
08EXPORT-IMPORT BANK OF KOREA
07NATIONAL FEDERATION OF FISHERIES COOPERATIVES
53CITIBANK N.A., SEOUL BRANCH
48NATIONAL CREDIT UNION FEDERATION OF KOREA
26SHINHAN BANK
56ABN AMRO BANK
05KOREA EXCHANGE BANK
20WOORI BANK
71KOREA POST OFFICE
37JEONBUK BANK
23KOREA FIRST BANK
35CHEJU BANK
21CHO HUNG BANK
81HANA BANK
02KOREA DEVELOPMENT BANK
01BANK OF KOREA
27KORAM BANK
54HONGKONG AND SHANGHAI BANKING CORP
57UFJ BANK LTD SEOUL BRANCH








신고



IOS의 경우는 결제받은 영수증을 가지고 서버에서 IOS 인앱 서버로 

유효한 영수증인지 확인 요청을해 해킹 여부를 판단할수 있습니다. 



안드로이드에선 별도로 유효 영수증인지 확인해주는 서버가 없으미로


결제후 영수증 데이터와 Base64로 암호화된 영수증 데이터 둘을 게임 서버로 보내 

Base64 Decode를 한후 두 영수증이 동일한지 체크하여 해킹을 막을수 있습니다.



아래는 게임서버쪽 영수증 체크 코드 입니다.



  1 
  2 import java.security.KeyFactory;
  3 import java.security.PublicKey;
  4 import java.security.Signature;
  5 import java.security.spec.X509EncodedKeySpec;
  6  
  7 String receiptData = "영수증데이터"; 
  8 String receiptEncodeData = "암호화된 영수증데이터";
  9 String publicKeyStr = "퍼블릭키";
 10  
 11 PublicKey publicKey = null;
 12 byte[] decodeKey = Base64.decodeBase64(publicKeyStr);
 13 KeyFactory keyFactory = KeyFactory.getInstance("RSA");
 14 publicKey = keyFactory.generatePublic(new X509EncodedKeySpec(decodeKey));
 15  
 16 Signature sig;
 17 sig = Signature.getInstance("SHA1withRSA");
 18 sig.initVerify(publicKey);
 19 sig.update(receiptData.getBytes());
 20 if(!sig.verify(Base64.decodeBase64(receiptEncodeData))){
 21  //영수증검증실패
 22 }else{
 23 //영수증검증성공
 24 }





신고


GridView 를 이용해서 표비슷한 놈을 만들었는데 예제는 position 을 이용하여 표안에 값들을 채우게 되어있었습니다. 


position 을 이용해 각각 다른 배열에 있는놈을 % 연산으로 지지고 복고 해서 빼곡히 채워넣긴 했는데 문제가 생겼습니다. 



스크롤을 최대 아래로 내렸다가 최대 위로 올리면 position 이 0번지를 찾지 못하고 한없이 위로 올라가네요. '-' ;;;;;;;



이래 저래 가지고 놀다가 해법을 찾았습니다. XML에서 GridView 를 선언할때 


android:layout_width="match_parent"

android:layout_height="wrap_content"



위와 같이 설정하면 제대로 position 0번지를 찾고 위아래로 정상적으로 멈추네요 






신고



안드로이드 앱을 개발하는 궁극적인 목적!


그것은 바로 수익 창출이 아닐까 합니다. 


현재 많은 개발자들은 광고를 통해서 수익을 창출 하지만 


인앱을 통해서 수익을 창출 하려면 구글이 제공하는 인앱 소스를 사용해야만 합니다. 


onPurchaseStateChange() 함수를 통해서 정상 결재 여부를 판단하게 되는데요


이놈이 호출이 되지 않거나 간혈적으로 호출되는 문제가 있습니다. 


주로 여러번 결재 시도를 하다보면 자주 발생하게 됩니다. 


http://stackoverflow.com 에서 해결책을 찾았습니다. 



출처 : http://stackoverflow.com/questions/12844132/onpurchasestatechange-not-getting-called


onstart() 에서 호출된 녀석을 re-start 할때 제대로 remove를 하지 않아서 발생한다는 내용입니다. 

그래서 해결책은 



protected void onStop() {
        super.onStop();

        ResponseHandler.unregister(YOUR_PURCHASE_OBSERVER);
    }


onStop() 안에서 unregister 을 호출해서 문제를 해결하면 됩니다. 



저희 앱에서는 pause 안에 해당 unregister 가 존재했지만 같은 현상이 계속 나타났습니다. 

이놈을 onDestroy로 옮기니 문제가 해결 되었습니다. 










아래 손가락을 꾹 눌러 주세요

신고
  1. 초짜개발자 2013.01.03 17:18 신고

    저도 같은 현상때문에 여기까지 왔네요.
    링크글을 읽어보니 onstop 에서의 내용을
    onDestroy 로 옮기라는 내용아닌가요? ;;
    onstop 에서 옵저버를 null 로 만드니까요.
    null 일 때 queue 로 처리하라는 두번째 해결책은
    제가 개발력이 부족해서 어떻게 해야되는지 모르겠네요 ㅎ

+ Recent posts

티스토리 툴바