안드로이드: 196개의 글
Activity 호출시 발생하는 !!! FAILED BINDER TRANSACTION !!! 해결법.- startActivity 나 startActivityForResult 를 통해서 activity 를 실행시킬 때, 간혹가다 다음과 같은 결과를 볼 수 있습니다. E/JavaBinder(199): !!! FAILED BINDER TRANSACTION !!! - 저는 Gallery 로부터 Crop 된 이미지를 가져오는 데 이런 에러가 발생하며, 해당 앱의 프로세스가 미친듯이 늘어나는 현상을 겪었습니다. 원인- android 에서는 intent 를 통해 전달할 수 있는 데이터 양이 100KB 로 제한되어 있습니다. - 저는 Gallery 로부터 큰 이미지를 가져와서 100KB 를 넘겨서 발생한 문제로 보입니..
ListView를 활용한 프로그래밍을 하는 도중에 자주 볼 수 있는 에러입니다.저런 에러가 발생하는 경우는 대부분 UI 쓰레드가 아닌 별도로 생성된 멀티쓰레드에서 UI(여기서는 ListView)를 갱신하려고 했을 때 발생합니다. 인터넷을 검색해 본 결과, UI쓰레드에서 갱신할 수 있게끔 하라는 겁니다. 12345runOnUiThread(new Runnable() { public void run() { listViewAdapter.notifyDataSetChanged(); }}); 저에겐 위의 코드를 쓸 이유가 없었습니다. 왜냐하면 저 리스트뷰를 갱신하게 하는 함수를 대부분 UI쓰레드에 해당하는 핸들러에서 처리를 했기때문입니다. (쓰레드와 핸들러와의 관계는 검색하시길..) 그러기에 제대로 작동하고 있던 리..
익셉션 모두 앱을 시작할 때 onstart() 메소드안에 구현해 놓은 인터넷 접속 여부를 체크하는 구문에서 발생했습니다. 익셉션이 다발로 터지고 있던 구문은 다음과 같습니다. cManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mobile;NetworkInfo wifi; mobile = cManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);wifi = cManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); if (mobile.isConnected() || wifi.isConnected()) { Toas..
1. File -> New Other 를 클릭해주세요 2. Android -> Android Project from Existing Code 를 눌러주세요 3. sdk ->extras -> android -> support -> v7 -> appcompat 를 클릭 후 확인 4. appcompat 선택 하시고 finish 를 눌러주세요. 5. 프로젝트 확인여기서 만약 프로젝트가 에러표시가 난다면 android-support-v7-appcompat 프로젝트에서 Properties를 클릭후 android에서 Project Build Target을 Android 6.0 이상을 선택 후, 프로젝트 클린(API 21부터 된다고 하였는데 저의 컴퓨터에서는 23부터 됩니다.) 6. 새로운 프로젝트 or 작업하시던 프..
이전에 포스트 내용으로 이미지로딩 라이브러리와 Glide에 관하여 소개해드렸었습니다.이미지로딩 라이브러리 및 Glide소개 보기 이번에는 요즘 제일 많이 쓰이고 있고 레퍼런스가 많은 Picasso와 Glide에 대해서 비교해서 분석해보도록 하겠습니다.또한 실제 제가 사용해보면서 느낀점도 추가해서 써보겠습니다. Glide의 사용방식은 Picasso를 그대로 따라했다고 봐도 될정도로 사용방법이 비슷합니다.(기존에 Picasso를 사용하던 개발자들이 Glide로 쉽게 넘어올수 있도록 비슷하게 만들었을것이라고 예상합니다) 기본 사용방법기본적인 사용방법은 Picasso,Glide 완전히 똑같은 방식입니다. Picasso Picasso.with(context).load("http://www.selphone.co.k..
우리가 ImageView에 사진을 띄우고자 하는 경우는 여러가지 입니다.1. 안드로이드 앱 안의 drawable폴더의 리소스를 보여주는 경우 2 .안드로이드 디바이스 안에 저장되어있는 사진을 보여주는 경우(갤러리 혹은 기타 내부 사진)3. 이미지 URL을 로드해서 보여주고자 하는 경우 1,2번의 경우는 안드로이드 기기 내부의 리소스를 불러오는 작업이므로 예외사항도 적고 실제 구현도 복잡하지 않습니다.그러나 3번처럼 이미지의 URL인 경우 http클라이언트를 이용해서 ImageView에 보여주어야 하는경우는 고려해야할 사항이 많습니다.로딩 실패처리, 재시도처리, Out of Memory, 캐시,병렬처리, 디코딩, 이미지재활용 등등 요약하면, 이미지 로딩을 구현할 때는 HTTP 통신을 안정되게 구현하고, 비..
Jsoup Download : http://jsoup.org/download 위의 사이트에서 라이브러리를 다운로드한다 다음과 같은 방법으로 안드로이드 프로젝트에 jsoup 라이브러리를 포함시킨다 위와 같이 설정해주고 Project > Clean 을 한번 수행해주면 된다
이번에 HTML 파싱을 할 기회가 있어서 가장 유명한 두 가지 라이브러리를 사용해 보았다.jar파일은 첨부해 놓은 버전을 사용했다. 1. HTML이 존재하는 사이트의 주소를 입력하면 source에 담기는데 fullSequentialParse()를 통해 위에서부터 순차적으로 검색을 한다.Source source = new Source(new URL("사이트주소")); source.fullSequentialParse(); 2. 클래스명으로 List에 엘리먼트가 담긴 형태로 데이터를 리턴 받는다. List divList = source.getAllElementsByClass("클래스"); * 아이디도 가능source.getElementById("id명") 3. 클래스명으로 받아온 리스트에서 div > a > ..
애드센스는 100달러부터 인출이 가능하지만 수익이 확정된 후 다음 달에 금액이 입금되므로 미리 통장개설&홈페이지 지급설정을 해주셔야 합니다. 그러므로 수익을 예상하며 미리미리 만들도록 합시다. 우선 애드센스로 들어가 우측상단에 톱니바퀴를 눌러주시고 지급탭을 눌러주세요. 페이지에서 수취인 프로필 등 다양한 정보를 수정가능합니다. 지급 설정을 고쳐야 하니 지급설정탭에서 '새 결제 수단 추가'를 눌러주세요. 여기까지는 별 거없습니다. 먼저 은행계좌로 송급을 체크해주세요. 그리고 각항목을 입력하시면 됩니다. 저는 SC은행을 기준으로 예시하도록 하겠습니다. 스위프트코드는 외화통장 두 번째 페이지에 있으니 꼭 확인하세요! 이름 : 영문이름 은행명 : STANDARD CHARTERED FIRST BANK KOREA ..
구글 애드센스 수익을 받기 위해 SC제일은행이나 우체국의 외환통장을 많이 사용하고 있습니다. 저같이 300$ 이하라면 SC은행을 선택하시고 그 이상이라면 우체국에서 수수료 5,000원을 받고 우체국을 흔히들 사용하십니다. 금융감독원이 대포통장을 막으라고 은행한테 난리를 피워서 통장 개설 절차가 복잡합니다. 우선 방문점포는 자신의 직장이나 등본상의 주소에서 가까운 지역에 방문하셔야 합니다. 준비물은 1. 신분증 2. 주민등록등본 3. 최소1$(현금을 가져가서 환전가능// 고객센터에서 환전 우대쿠폰을 받을수 있다고 함) 입니다. 추가적으로 도장을 챙겨가도 되지만 사인이 편합니다. 외환통장입니다. 두드림통장인가가 없다고 합니다 ㅠㅠ. 텔러분이 외화종합통장을 처음만들어서 엄청 실수하시고 덤벙대셔서 저한테 작은선..