the signer's certificate is self-signed 이런 경고는 아래처럼 안드로이드 배포 직전, 서명하는 상황에서 발생합니다. jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore app-release-key.keystore app-release-unsigned.apk alias_app jarsigner 이용해 서명하다 보면 생기는 경고인데요. 해결 방법은 간단합니다. 인증서에 이미 서명이 되어있기에 발생하는 경고입니다. 처음 jarsigner 사용할 땐 안 나오지만, 2번째 부터 나오는 경고입니다. 그래서 이런 경고를 보고 싶지 않다면, app-release-unsigned.apk 파일을 다른 폴더로 옮겨 jarsigne..
■ 선택적 메서드 호출 (optional method call) 안드로이드 코틀린에서 Optional한 값의 메소드를 호출할 때 값이 있으면 메소드 호출null이면 null이 원하지 않아도 if 조건문 진입 가능 다음과 같이 작성할 수 있습니다. 1234fun hoge(user: User?) { val name: String? = user?.name println("name=$name")}Colored by Color Scriptercs elvis 연산자를 사용하면 null에 해당하는 기본값을 지정할 수 있습니다. 1234fun hoge(user: User?) { val name: String = user?.name ?: "no name" println("name=$name")}Colored by Col..
안드로이드 퀵메뉴(말풍선), 리스트뷰와 버튼에 추가하는 소스 안드로이드 퀵액션 메뉴를 리스트뷰(Listview)와 버튼에 추가하는 예제 소스입니다. 첨부된 소스를 실행하면 두 가지 메뉴를 볼 수 있습니다. 안드로이드 퀵메뉴 프로젝트 - Android QuickAction.zip [링크] 예제의 안드로이드 퀵메뉴(말풍선) 소스를 응용하면, 아래처럼 블루투스 검색창도 이쁘게 꾸밀 수 있습니다. 아래 그림은 별도로 제작한 프로그램에 삽입된 것으로 테스트용도로 제작된 것입니다. 리스트뷰와 버튼에 추가됩니다. 퀵 메뉴를 띄우기 위해선 아래 소스로 메뉴들을 정의합니다. 1234567891011121314151617181920ListView mList = (ListView) findViewById(R.id.list)..
안드로이드, 이미지뷰 (Image View) + 갤러리 예제 안드로이드 이미지뷰 예제- GalleryImageView.zip [링크] 안드로이드 이미지뷰의 기능을 확장한 개념입니다. 안드로이드 Galley 갤러리로 사진의 썸네일을 제공하고, 썸네일을 누르면 안드로이드 이미지뷰로 확대해 크게 보여줍니다. 전체 소스는 위 링크에 있고, 여기선 결과 화면과 소스만 소개합니다. 사실, 소스 자체가 많지 않아서 이해하는데 시간이 오래 걸리진 않을거예요. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374package ..