전체 글 115

네이버맵 API 사용하기(1.네이버앱 등록 및 기본 맵 띄우기)

이번에는 네이버맵에 대한 사용법을 알아볼 예정입니다. 여기저기 맵에 대한 사용 의뢰 또는 사용할 일들이 많기 때문에 미리 연습해보면 좋을거 같습니다. 제가 네이버맵을 사용하는 이유는 구글맵은 유료가 되었고 다음카카오 맵을 이용할려 하는데 최근에 바뀌면서 에러가 난것인지 다음 개발자 센터에 등록된 키를 사용하는 앱은 정상작동하고 카카오에 등 록하면 오류가 나서 안되는건지 에러로 인하여 만들어 볼수 없었던 관계로 네이버맵을 적용하기로 하 였습니다.(제가 실력이 부족해서 못한것일수 있음을 알려드립니다.) 1. 첫번째 방법입니다. “네이버 개발자센터” 를 검색하여 네이버 개발자센터 홈페이지로 들어갑니다. 그 후 네이버 계정을 이용하여 로그인을 한후 위에 보이는 상단메뉴에서 Application -> 어플리케이션..

안드로이드 java.lang.SecurityException 에러

아래와 같은 안드로이드 Error java.lang.SecurityException: kr.co.kwon was not granted this permission: android.permission.WRITE_SETTINGS 에러를 읽어보면 WRITE_SETTINGS 퍼미션이 없다고 한다. 그래서 아래 퍼미션을 준뒤 ContextCompat.checkSelfPermission 을 이용하여 WRITE_SETTINGS 셋팅에 대한 퍼미션 체크를 물어도똑같다. 이 SecurityException 은 Settings.System.canWrite(this) 를 이용하여 처리하여야 한다.( canWrite이 없는 경우가 있다. 그땐 targetSdkVersion을 최상으로 올려주시면 됩니다. 25부터인가? 함수가 ..

APK에서 개인정보처리 방침이 필요한 권한을 사용합니다.

안드로이드 Release용 apk파일을 이용하여 앱 배포시 아래와 같은 문구가 뜬다면 앱정보에서 개인정보처리방침에 대한 대한 url을 등록하지 않아서 나는 오류이다. 앱정보 -> 스토어 등록정보 -> 젤밑으로 스크롤 한다면 개인정보 처리방침이 나오는데 여기에 개인정보 처리방침이 처리된 url이 들어가야한다. 그렇지 않은 이상은 업을 업로드 할수 없다. 개인정보 처리방침은 아래 홈페이지에 들어가서 만들수 있습니다.

Webview File Open

이번에는 안드로이드 Webview를 이용하여 작업하다 보면 웹뷰내의 파일첨부 기능을 만날때가 있다. 그럴경우 사용하는 코드이다. 물론 이경우는 구글에서 제공해주는 방식이다. 하지만 여기에 문제가 있다면 하위버전을 다 테스트 해본건 아니지만...높은 버전은 아주 잘되지만...4.4.2버전의 경우는 코드가 먹질않는다. 그래서 낮은 버전까지 다 기능을 지원해줘야 한다면...직접 뷰를 그려서 작업하는 방식이 제일 좋을듯하다... 1. 웹뷰 WebChromeClient에 코드를 넣어준다. mWebview.setWebChromeClient(new WebChromeClient(){ // For Android Version < 3.0 public void openFileChooser(ValueCallback uploa..

안드로이드 mp3파일 전화벨소리 지정

안드로이드 전화 벨소리 지정하는 코드방식이다. 전화 벨소리 또한 ContentValues 를 이용하여 내부디비에 저장 하는 방법이다. public void Ringtone(Context ctx, File file){ if (file == null) return; ContentValues values = new ContentValues(); values.put(MediaStore.MediaColumns.DATA, file.getAbsolutePath()); //파일 위치 values.put(MediaStore.MediaColumns.TITLE, file.getName()); //파일명 values.put(MediaStore.MediaColumns.SIZE, file.length()); //파일 사이즈 va..

전화번호부에서 전화번호 긁어오기

프로젝트에서 고객이 원하는 기능은 웹뷰에서 버튼 클릭시 전화번호부로 이동하여 클릭한 번호를 웹뷰내의 text가 박히는 기능이 었다.이 기능을 구현하기 위해서는 1. 스킴을 받는것 2. StartActivityResult를 이용하여 전화번호부 띄우기 3. 전화번호를 가져오기. 4. 전화번호를 Webview로 넘기기 이렇게 된다. 1. 웹뷰를 다른 Activity나 Fragment등에서 사용하기 때문에 listener로 데이터를 넘기고 공통으로 쓰는 웹뷰에서 retun값을 준다. @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { Log.e(TAG , "shouldOverrideUrlLoading : " + url); l..

안드로이드 Notification 이미지와 큰사이즈

이번에는 안드로이드 Notification에 대한 설명입니다. 아직 제가 node를 공부한게 아니라서 서버를 직접 구현해 놓지 않은 관계로 로컬에서 notification을 사용합니다.(차후 node.js 공부할 예정!) 처음에는 어떻게 큰 사이즈를 만들지?늘렸다 줄였다 하는 저것은 custom이나 다른 함수가 있 지 않을까?라고 생각했었는데 그게 아니었다. BigTextStyle Notification을 생성하여 기본으 로 만든 notification을 넣어주면 자동적으로 생성되는 것이었다 소스는 아래와 같습니다. public class LocalNotificationActivity extends Activity { private Context mContext; private Button btn_sen..

안드로이드 mp3플레어어 만들기(3.mp3 service 생성)

이번에 작업해볼 내용은 mp3파일 플레이어를 service로 구동하여 볼것입니다. service를 이용하여 mp3파일을 실행시키기 위해서는 service 부분에서 mp3파일을 받아야 하며 mp3플레이어인 MediaPlayer 가 service에 생성되어야 합니다. 이전 포스트에서 제가 MusicData의 소스를 공개를 안했군요.. 이전 처럼 소스를 공개 안했을 상황이 생기는거 같아서 전체적으로 Notification을 이용하는 방법 까지 다 구현하겠습니다. 1. MusicData 입니다. 버튼을 클릭하였을 경우 Intent로 서비스에 음악 데이터를 넘겨줘야하는데 차후 Notification 을 띄어서 음악을 변경하는 등의 작업을 하여야 하므로 intent값에 array를 넣어야 하는데 안 드로이드에서는 ..

안드로이드 mp3플레어어 만들기(2. Cursor를 이용하여 mp3 데이터 가져오기)

오늘은 mp3파일 을 리스트를 들고와서 뿌려주는것을 할려고합니다. mp3파일을 리스트로 뿌려주는 방법은 두가지가 있습니다. 첫번째는 안드로이드 기기 최상단에서부터 .mp3파일을 다 읽어와서 뿌려주는 방법이고 , 두번째는 Cursor를 이용하여 mp3파일을 가져와서 데이터를 뿌려주는 방법입니다. 저는 Cursor를 이용하여 데이터를 가져올것인데요. Cursor를 사용하는 이유는 파일들을 읽어오면 그 파일들을 다시 metadata로 변환시켜 뽑아야하는 불편함이 있기때문입니다. 1. Cursor를 이용하여 mp3파일 데이터를 얻어내는 방법입니다. private void getMusicData(){ //1. 음악파일인지 아닌지, 2. 앨범 아이디, 3. 음원명, 4.가수명, 미디어 파일 아이디(?) String..

안드로이드 mp3플레어어 만들기(1. 커스텀 Listview 생성)

안녕하세요. 요즘 시간이 조금 나는 관계로 조금은 글을 적극적으로 써볼까 합니다... 시간이 나는김에 안드로이드폰 기본으로 있는 mp3플레이어를 모방하여 만들어 내볼까 합니다. Mp3 플레이어를 만들며 구현할것들은 대충 아래와 같습니다^^; 1. 자신이 원하는 형태로 만들어 보여줄수 있는 커스텀 Listview 2. Cursor를 이용하여 mp3파일 metadata를 가져와야 합니다. 3. mp3파일을 실행시킬 service 구동 4. notification을 이용하여 플레이어 종료 또는 곡 변경 그럼 지금부터 만들어 보도록 합시다. 1. 먼저 Layout을 그리고 아래와 같이 만들어 줍니다. 2. Activiy를 생성하여 layout을 연결합니다. public class MusicServiceActiv..