일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Google Cloud Messasing
- 다른 앱에서 열기
- unreal
- 배포
- ios9
- NSURLConnection
- HTTP
- 카카오톡
- 트위터
- signing
- 데이터 공유
- Android
- Android O Preview
- BLOCK
- 안드로이드 개발 레벨업 교과서
- Activity 수명 주기
- android studio
- xcode
- In-app Billing
- Android O
- ios
- contentprovider
- GCM
- service
- AccountManager
- gradle
- Push
- 페이스북
- Google Cloud Messasging
- Unchecked Exception
- Today
- Total
목록Android (32)
노블의 개발이야기
앱이 SYSTEM_ALERT_WINDOW 권한을 사용하고 다음과 같은 창 유형 중 하나를 사용하여 다른 앱 및 시스템 창 위에 경고 창을 표시하려고 할 경우 TYPE_PHONE TYPE_PRIORITY_PHONE TYPE_SYSTEM_ALERT TYPE_SYSTEM_OVERLAY TYPE_SYSTEM_ERROR 이런 창은 항상 TYPE_APPLICATION_OVERLAY 창 유형을 사용하는 창 아래에 나타납니다. Android O를 대상으로 하는 앱의 경우, 위와 같은 창 유형을 사용할 수 없으며 TYPE_APPLICATION_OVERLAY 창 유형을 사용하여 경고 창을 표시합니다. TYPE_APPLICATION_OVERLAY TYPE_APPLICATION_OVERLAY 창 유형의 다음 특징을 염두에 두..
런처에 바로가기 아이콘을 생성하기 위해서 com.android.launcher.action.INSTALL_SHORTCUT 브로드 캐스트를 사용합니다. 그러나 Android O에서는 com.android.launcher.action.INSTALL_SHORTCUT 브로드캐스트는 암시적 브로드캐스트이므로 더 이상 앱에 아무런 영향을 주지 못합니다. 대신, ShortcutManager 클래스에서 requestPinShortcut() 메서드를 사용하여 앱 단축키를 만들어야 합니다. Pinning shortcuts (고정 단축키) 앱 단축키와 유사한 Pinning shortcuts를 사용하면 앱의 특정 기능을 빠르게 시작할 수 있습니다. 고정 단축키는 별도의 아이콘으로 런처에 표시됩니다. Note: 지원되는 런처로..
앱이 백그라운드 상태일 때 위치 업데이트가 매시간 단 몇 차례만 업데이트 받도록 제한됩니다. 이 변경사항은 Google Play Service를 포함한 위치 업데이트를 수신하는 모든 앱에 영향을 미칩니다. 위치 제한 대응 방법 앱을 포그라운드로 가져옵니다. 앱에서 포그라운드 서비스를 사용합니다. 이 서비스가 활성일 때 앱은 알림 영역에 진행 중인 알림을 표시해야 합니다. GeofencingApi 인터페이스와 같이, 전력 사용량 최소화를 위해 최적화된 API 요소를 사용합니다. 관련 API FLP (Fused Location Provider) 앱이 백그라운드에서 실행 중인 경우 매시간 몇 차례만 위치 업데이트를 받을 수 있습니다. 앱이 포어그라운드에 있을 경우 문제 없습니다. GeofencingApi 앱이..
Android Application Component 안드로이드 어플리케이션을 구성하는 4가지 컴포넌트 Activity Broadcast Receiver Content Provider Service 모든 컴포넌트들은 Main Thread 에서 실행됩니다. 따라서 Service 사용시 Thread 작업이 필요한 경우 별도의 작업 Thread를 만들어 사용해야 합니다. Service 란? Service는 Android Application을 구성하는 4가지 Component 중 하나입니다.Activity 처럼 사용자와 상호작용하는 컴포넌트가 아니고 Background에서 동작하는 컴포넌트입니다.Activity 화면에서의 동작 뿐만 아니라 Acitivity가 종료되어 있는 상태에서도 동작하기 위해 사용되는 컴..
Service 액티비니와 프래그먼트는 화면에 표시되는 동안은 생존하지만 표시되지 않게 되면 onStop이나 onDestroy가 호출되어 폐기될 가능성이 있습니다.백그라운드 처리를 위해 준비된 컴포넌트가 Service 입니다. 3.3.1 Service의 종류와 수명주기를 이해하자 Service의 종류 1. 백그라운드에서 동작하는 Service Context.startService()를 호출해 시작되는 서비스입니다. 2. Binder 를 통해 바인드하는 Service Context.bindService()를 호출해서 Service에 바인드하는 종류의 서비스입니다. 3. AIDL로 앱을 연계할 수 있는 Service AIDL(Android Interface Definition Language: 안드로이드 인터..
어떤 이벤트가 발생한 사실을 앱에 알리고 싶을 때 BroadcastReceiver에 통지한다.단말기 전원이 들어왔거나 디스크 용량 부족 등 시스템의 이벤트를 앱에 알리거나, 앱간의 연계를 위해 이벤트를 알리고 싶을 때 이용한다. 3.2.1 BroadcastReceiver의 기본을 이해하자 BroadcastReceiver는 브로드캐스트 Intent를 받았을 때의 처리를 onReceive에서 구현한다.어느 브로드 캐스트 Intent를 받을 지는 IntentFilter로 정의한다. public abstract void onReceive(Context context, Intent intent); 두 번째 인수로 전달되는 Intent는 Context.sendBroadcast() 등에서 보내진 블로드캐스트 Inte..
어떤 이벤트가 발생한 사실을 앱에 알리고 싶을 때 BroadcastReceiver에 통지한다.단말기 전원이 들어왔거나 디스크 용량 부족 등 시스템의 이벤트를 앱에 알리거나, 앱간의 연계를 위해 이벤트를 알리고 싶을 때 이용한다. 3.2.1 BroadcastReceiver의 기본을 이해하자 BroadcastReceiver는 브로드캐스트 Intent를 받았을 때의 처리를 onReceive에서 구현한다.어느 브로드 캐스트 Intent를 받을 지는 IntentFilter로 정의한다. public abstract void onReceive(Context context, Intent intent); 두 번째 인수로 전달되는 Intent는 Context.sendBroadcast() 등에서 보내진 블로드캐스트 Inte..
ContentProvider를 공부하던 중 UriMatcher를 보게되었다. UriMatcher란? 두 개의 Uri를 비교하여 해당하는 값을 출력해주는 기능을 하는 class 이다. URI 구성 content://com.androidhuman.phoneprovider/phones/lg/3 URI는 크게 authority와 path로 구성되어 있다. Description content:// 컨텐트 프로바이더에 의해 제공되는 데이터임을 알린다. 이부분은 변하지 않는다. com.androidhuman.phoneprovider 컨텐트 프로바이더의 authority 부분이다. 각 컨텐트 프로바이더의 고유 이름이다. phones/lg 컨텐트 프로바이더의 path 부분이다. 어떤 데이터를 변환할지를 이 부분을 통해 ..
jCenter는 Bintray에서 운영 중인 Maven Repository 입니다. 1. Sign up to Bintray Bintray 홈페이지는 무료로 가입이 가능합니다.서비스 이용은 개인일 경우 모두 오픈 조건으로 무료로 사용 가능합니다.회사 또는 private을 원하는 사용자를 위한 유료 서비스도 추가 제공됩니다.가격 정보 및 서비스 조건은 Bintray pricing에서 확인 가능합니다. 2. Apply the plugin to your Gradle build script jCenter 또는 Maven Central에 배포하기 위해서는 Plugin을 dependencies에 추가해야합니다. Bintray Plugin buildscript { repositories { jcenter() } dep..
Android O에서는 사용자 경험을 개선시키기 위해 백그라운드에서 실행되는 동안 앱이 할 수 있는 것들에 제한을 두고 있다.한번에 많은 앱을 실행할 수록 시스템에는 많은 부하가 걸린다. 이런 경우를 낮추기 위해, Android O에서는 사용자가 직접 상호작용하지 않는 동안 앱들이 무엇을 할 수 있는지에 대한 제한을 두었다.만약, 앱의 타겟이 Android O인 경우 아래 두가지 방법으로 제한된다. Background Service 제한 앱이 Idle 상태인 동안, 백그라운드 서비스 사용에 제한이 있다. 사용자에게 좀 더 잘 보이는 Foreground service에는 적용되지 않는다. Broadcast 제한 앱은 예외를 제외하고, Implicit broadcasts를 등록하기 위해 manifest를 사..