이번 포스팅에서는 Android 기기에 진동을 발생시키는 방법에 대해 알아보자. Vibrator Android 에서 제공하는 Vibrator 객체를 이용하여 진동을 발생시킬 수 있다. https://developer.android.com/reference/android/os/Vibrator ◼ vibrate(long milliseconds) 주어진 시간 동안 진동 발생 Android O(26) 부터 deprecated 됨. ◼ vibrate(android.os.VibrationEffect) 주어진 vibration effect 에 맞춰 진동 발생 Android O(26) 부터 추가됨. ◼ VibrationEffect.createOneShot(long milliseconds, int amplitude) 한..
System Broadcast Android system 에서 이벤트가 발생하여 보내는 Broadcast. 아래와 같이 특정 이벤트가 발생하여 개발자가 만든 app 에서 작업이 필요한 경우 사용한다. - 시스템이 부팅되어 바탕화면의 위젯 정보를 갱신한다. - 베터리가 부족하여 사용자에게 알려준다. - SD 카드가 추가되어 해당 드라이브를 표시한다. ...... Broadcasting action Action Description ACTION_AIRPLANE_MODE_CHANGED 비행기 모드 변경 시 호출된다. ACTION_APPLICATION_RESTRICTIONS_CHANGED 앱의 제약사항 변경 시 호출된다. ACTION_BATTERY_CHANGED 배터리의 충전상태가 변경되면 호출 - 동적 Rec..
LocalBroadcast Support library v4 에 포함된 기능으로 현재 프로세스 안에서만 유요한 Broadcast. - Broadcast message 가 앱 밖으로 전달되지 않기 때문에 앱의 정보가 노출될 걱정이 없다. - 다른 앱에서 보내는 LocalBroadcast 역시 우리 앱으로 들어오지 못한다. - System 에 global broadcast 를 보내는 것보다 훨씬 효율적이다. Global Broadcast vs Local Broadcast ◼ Global Broadcast 일반적으로 이야기하는 Broadcast. 프로세스 경계를 무시하고 안드로이드 시스템 상에 등록된 모든 Receiver 들에게 전달되는 Broadcast 이다. 보통 안드로이드 시스템 메시지를 수신하고, 이에..
동적, 명시적, Explicit BroadcastReceiver Receiver 를 원하는 시점에 등록(registerReceiver) 과 해제(unregisterReceiver) 하여 자유롭게 사용한다. - 메니페스트에 등록하지않고 소스상에 등록을 한다. - 자신이 등록한 component 의 생명 주기가 끝나면 사라진다. (Context 가 요효할 동안 동작한다.) [송신앱에서 broadcast] [수신앱에서 broadcast] 보내는 쪽 package (송신앱) 받는 쪽 package (수신앱) Reference ◼ unregisterReceiver 동적으로 등록한 receiver 의 경우 컴포넌트가 종료되면 동작하지 않는다. 따라서, unregisterReceiver 통해서 리시버를 해제하지 않으..
정적, 암시적, Implicit BroadcastReceiver Receiver 를 고정해서 등록해 놓고 원하는 방송만 수신하는 receiver 다. - 사용자가 직접 AndroidManifest.xml 파일에 receiver 를 등록하는 방식이다. - 한번 등록하면 해제할 수 없다. - 해당 앱이 설치될 때 자동으로 등록된다. [송신앱에서 broadcast] [수신앱에서 broadcast] 보내는 쪽 package (송신앱) 받는 쪽 package (수신앱) Reference ◼ targetSdkVersion Android O (API 26) 이상 부터 암시적 브로드캐스트 인텐트 제한이 적용된다. 쉽게말해 targetSdkVersion 이 26 이상이면 암시적 브로드캐스트를 이용할 수 없다. (브로드캐..
BroadcastReceiver? 각각의 component 들 간에 메시지를 전달하는 역할을 한다. (Android 4대 component : Activity, Service, Broadcast receiver, Contents provider) 라디오를 생각하면 이해가 빠를 것이다. 하단 그림과 같이 송신측에서 방송을 하면 채널이 같은 수신측에서 방송을 듣는 것이다. 송수신측의 채널 역활을 하는 녀석이 바로 intent 이다. [Android/Intent] - Intent (1) BroadcastReceiver 유형 ◼ 정적, 암시적, Implicit BroadcastReceiver Receiver 를 고정해서 등록해 놓고 원하는 방송만 수신하는 receiver 다. - 사용자가 직접 AndroidMa..
자주 발생하는 오류는 아니지만 예전 소스를 import 하거나 Android studio version 을 update 하면서 종종 아래와 같은 Gradle sync 오류가 발생하곤 한다. Error:Unsupported method: BaseConfig.getApplicationIdSuffix(). The version of Gradle you connect to does not support that method. To resolve the problem you can change/upgrade the target version of Gradle you connect to. Alternatively, you can ignore this exception and read other information..
앱을 업데이트 할때 adb 명령을 (adb install) 사용하면 아래와 같은 오류가 종종 나오기도 한다. - "Failure [INSTALL_FAILED_ALREADY_EXIST]" 동일한 패키지가 이미 존재하기 때문에 설치가 불가 하다는 메시지다. 이와 같은 오류가 발생할 때는 2 가지 방법으로 해결할 수 있다. 1. 기존 앱 제거 후 다시 설치 2. adb 에 "-r" option 으로 설치하기 (사용자 데이터는 유지하고 앱 다시 설치) - "adb install -r *.apk"
지난 포스팅에서는 객체 직렬화의 개념과 Serializable, Parcelable 에 대해 알아 보았다. [Android] - 객체 직렬화 - Serializable [Android] - 객체 직렬화 - Parcelable 이번 포스팅에서는 Bundle 에 대해 알아보자. Bundle Bundle 은 Parcelable 객체를 상속받아 구현된 직렬화 class 이다. Bundle 객체는 내부적으로 HashMap 을 사용하고 있으며 아래와 같이 primitive type 부터 각 type 별 Arrary, Parcelable 까지 구현되어 있어 간단한 데이터 전달에 유용하다. (boolean, byte, char, double, int, float, log, short, String, Parcelable..
지난 포스팅에서는 객체 직렬화의 개념과 Serializable 에 대해 알아 보았다. [Android] - 객체 직렬화 - Serializable 이번 포스팅에서는 Parcelable 에 대해 알아보자. Parcelable Parcelable 은 Android SDK interface 로 reflection 을 사용하지 않게 설계된 interface 이다. Parcelable 은 직렬화한 데이터 그 자체로 직렬화 처리 방법을 사용자가 명시적으로 작성하기 때문에 자동으로 처리하기 위한 reflection 이 필요 없다. (Reflection 을 사용하지 않아 성능 측면에서 좋다.) 직렬화의 방법은 Serializable 보다 복잡하다. - "implements Parcelable" 을 상속한다. - 객체를..
- Total
- Today
- Yesterday
- StringUtils
- WEMIX
- 채굴앱
- Android Service
- onCreateContextMenu
- onContextItemSelected
- BroadcastReceiver
- android flag activity
- 앱테크 추천
- task 생성
- task
- 리워드 어플
- RoomDatabase
- p2e
- 안드로이드 인텐트
- 안드로이드 서비스
- 앱테크
- 무료채굴
- 리워드앱
- Intent
- M2E
- bindservice
- android intent
- mPANDO
- notifyDataSetChanged
- StartService
- registerForContextMenu
- android task
- 무료 채굴
- android activity flag
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |