본문 바로가기
반응형

프로그래밍/Android47

ConnectivityManager 네트워크 접속 정보 얻기 ConnectivityManager 네트워크 접속 정보 얻기 이제 조금씩 개념을 잡아가고 있는 안드로이드 학습. 거진 마지막 단계까지 다다르다. 그렇다 한들 실무에서는 버벅될 수 있으나, 아이폰이라고 다 알고 일을 해 온 것은 아니기때문에 개념과 용법을 알고 접근하는 것은 큰 차이가 있다고 생각이 된다. 금주까지는 안드로이드 학습이 주업무지만 차주부터는 뭔가 생산성있는 개발을 하고 싶은데 잘 될지 의문이다. ㅋ 운영 중인 앱에서 네트워크 상태 체크를 하지 않고 단지 3초간 기다렸다가 실패하면 메인으로 이동하게 해놓은 소스가 영 찜찜하던 차였는데 이번에 책을 보면서 알게된 네트워크 접속 정보를 가지고 사용자에게 알려줄 수 있는 패턴을 만들어서 적용할 예정이다. 스마트폰의 네트워크 접속 정보 확인은 getA.. 2018. 11. 2.
갤러리 앱 데이터 연동(ContentProvider) 갤러리 앱 데이터 연동(ContentProvider) 조만간, 주소록을 연동해야하는 개발 건이 준비되고 있긴 한데 아이폰의 경우 그동안 해온 작업이 많아 리소스가 확보되어 있어 구현하는데 어려움은 없을 것 같다. 안드로이드의 경우는 책을 보다 보니 컨텐츠 프로바이더를 시용하여 주소록, 갤러리 등 구글 기본앱과 연동해서 데이터를 교환할 수 있는 방식이다. 아이폰도 스킴을 이용해 PickViewController를 띄우는 방식이므로 비슷한 느낌이지만 데이터를 받는 느낌은 델리게이션과 좀 다른 듯 하다, 또 API Level에 따른 분기도 필요한 부분이라고 하니 정리를 해 두고자 한다. 갤러리 앱도 그렇지만 나의 경우 주소록 앱도 다중 선택이 많이 사용 되고 있는데 , 책에서는 갤러리 앱에서 여러 개를 선택했.. 2018. 11. 1.
설치된 앱 목록 조회(PackageManager) 설치된 앱 목록 조회(PackageManager) PackageManaager는 앱이 스마트폰에 설치된 정보를 구하는 목적으로 사용되는 시스템 서비스. 주로 스마트폰에 설치된 앱 목록, 인텐트에 반응할 컴포넌트 정보 등을 구하는 목적으로 사용. 설치된 앱 목록 사용자의 스마트폰에 특정 앱이 설치되어 있는지 판단해야할 때, 설치되어 있지 않았을 때 스토어 화면으로 전환하거나 할 때 사용할 수 있다. Packagemanager manager = getPackageManager(); List list = manager.getInstalledApplications(PackageManager.GET_META_DATA); for (ApplicationInfo info : list) { String label = i.. 2018. 10. 31.
Android 최상위 액티비티 확인 방법 Android 최상위 액티비티 확인 방법 몇 일째 계속 안드로이드 책을 보며 학습중이다. 졸음과의 사투를 벌이며 꾸역 꾸역 읽고 나가는 중인데 어느듯 20장까지 읽어왔다. 너무 졸려 바람을 쐴까 하다 유용할 것 같은 팁이 나오길래 정리해 두고자 한다. 현재 앱의 최상위 화면(액티비티)이 어떤건지 확인하는 코드인데 안드로이드 시스템서비스 중 하나인 ActivityManager의 getRunningTasks() 함수를 이용하여 판단할 수 있다. ActivityManager manager = (ActivityManager)getsystemService(Activity.ACTIVITY_SERVICE); //api level 21....deprecated... Listlist = manager.getRunning.. 2018. 10. 31.
Failed to resolve: play-services-basement 오늘 그진 일주일만에 안드로이드 스튜디오를 실행해서 운영중인 앱을 빌드하니 뭔가 이상한 오류가 나왔다. 그 사이 스튜디오 버전을 업데이트 한 것 같은데 그 뒤로 빌드 오류가 나타났다. 빌드 관련해서는 모든것이 gradle에서 처리가 된다고는 하지만 영문을 알수가 없었다. Failed to resolve: play-services-basement 해결 방안은 인터넷 검색을 해보니 몇 일 사이 몇 몇 사용자들이 올려둔 해결책이 있는데 그것이 좀 웃겼다. repositories { jcenter() google() } 로 되어 있던 것을 순서만 바꾸면 된다고 한다. 또 아예 없는 경우는 추가해주면 빌드 오류가 해결되었다. repositories { google() jcenter() } 안드로이드를 시작 한지 .. 2018. 10. 30.
안드로이드 키보드 숨김/보임 처리 안드로이드의 소프트 키보드는 화면에서 사용자 입력을 위한 EditText나 AutoCompleteTextView 등이 포커스를 받는 순간 자동으로 아래에서 올라오는데 자바 코드에서 특정 순간에 키보드를 보이게 하거나 사라지게 할 수 있으며 그 기능을 제공하는 클래스는 InputMethodManager를 이용한다. InputMethodManager manager = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE); InputMethodManager클래스가 제공하는 showSoftInput() 함수와 hideSoftInputFromWindow()함수를 이용해 보이고/숨김을 처리한다. showSoftInput(View view, int flags) : .. 2018. 10. 25.
반응형