새로운 task 생성하기 ◼ Manifest android:launchMode = ["standard" | "singleTop" | "singleTask" | "singleInstance"] ◼ Intent flag FLAG_ACTIVITY_SINGLE_TOP FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_MULTIPLE_TASK taskAffinity 새로운 task 생성 시 taskAffinity 는 굉장히 중요하기 때문에 정확히 이해하자. [Android] - Task (2) - taskAffinity 가령, taskAffinity 설정 없이 "FLAG_ACTIVITY_NEW_TASK" 로 activity 를 활성화 한다면 신규 task 가 생성되지 않고 기존의 task(root..
excludeFromRecents? 안드로이드 단말에서는 task 단위의 recent list(최근 사용한 앱 리스트) 를 보여주는 기능이 있다. - Android KK 이하는 home key 를 길게 눌러 recent list 를 볼 수 있었다. - Android L 이상은 overview key(네모 키) 를 눌러 recent list 를 볼 수 있다. Recent list 에 나온 아이콘 or 화면을 click 하면 해당 activity 로 이동 가능하다. 하지만, 간혹가다 이 recent list 에 나오면 안 되는 app 도 있고, 나오기 싫어하는 activity 도 있을 수 있다. (ex: Notification click 시 activity 에 메시지를 전달하는 일회용 activity) Ho..
taskAffinity? taskAffinity 를 설명하기 전에 task 에 대한 개념을 정확히 이해해야 한다. [Android] - Task (1) Task 에 대한 개념을 이해했다면 taskAffinity 는 아래와 같이 설명할 수 있다. ◼ Activity 실행 시 신규 task 를 만들 경우 어느 task 에 속할 지 지정 (AndroidManifest.xml에 "android:taskAffinity" 로 지정한다.) - FLAG_ACTIVITY_SINGLE_TOP - FLAG_ACTIVITY_NEW_TASK - FLAG_ACTIVITY_MULTIPLE_TASK ◼ 모든 activity 는 affinity 를 가지고 있다. ◼ 값을 명시하지 않을 시 디폴트로 앱의 패키지명이 된다. taskAff..
Activity Task? 사용자의 입장에서 하나의 어플리케이션 처럼 보여지는 activity 들의 집합 (A 라는 앱의 activity 에서 B 라는 앱의 activity 를 실행해도 사용자 입장에서는 하나의 앱으로 보여질 수 있다.) Task 는 activity 를 stack 형태로 관리한다. - Root activity : task 를 시작한 activity - Top activity : task stack 의 가장 상위 activity Home key 하단 그림과 같이 Home key 를 누른다고 해서 activity stack 이 사라지지 않는다. Task 제거 Activity 종료(Back key 등..) 시 task 에서 제거되며 모든 activity 를 종료하면 해당 task 가 사라진다.
Intent 관련 글을 쓰다 흥미로운 blog 가 있어 소개한다. Blog | The Intent extras size limit 내용을 보면 intent 로 전달하는 extra size 의 한계에 관한 것으로 아래와 같이 요약할 수 있다. Size limit? 아래와 같이 Intent 에 대량의 data 를 전달하도록 하면 app 이 crash 될 것이다. Intent intent = new Intent(this, ActivityB.class); intent.putExtra("bytes", new byte[1000 * 1000]); startActivity(intent); Android 6 (API 23) 에서는 exception 발생 시 상세 정보를 알려준다. android.os.Transaction..
Pending(보류) intent? 외부 애플리케이션에 내 권한을 허가해서 전달하는 intent. Intent 를 하나 생성한 후, 특정 시점에 다른 component 들이 pending intent 를 사용하여 다른 component 에게 작업을 요청한다. 예를 들어, 인터넷에서 음악을 다운로드 할 때 notification 에 다운로드 완료를 알리고 해당 알림을 클릭하면 다운로드가 완료된 음악 재생 activity 가 실행되는 것이 여기에 해당. - 사용자가 Notification 으로 작업을 수행할 때 인텐트가 실행되도록 선언(Android 시스템의 NotificationManager가 인텐트를 실행). - 사용자가 AppWidget 으로 작업을 수행할 때 인텐트가 실행되도록 선언(홈 스크린이 인텐..
Implicit(암시적) intent? 활성화할 패키지명과 component 명 없이 component 의 동작 만으로 활성화. Component 의 이름을 대지 않았지만, 수행할 동작(작업)을 선언하여 또 다른 앱의 component 가 이를 처리할 때 쓰임. 예를 들어, 카톡을 하다 URL link 를 click 할 경우 브라우저가 해당 URL 을 처리하는 것이 여기에 해당. Implicit intent 수신 ◼ Intent filter Implicit intent 에 사용하며 외부에서 해당 component 를 활성화 할 조건을 명시함. 하단과 같이 implicit intent 대상을 manifest 에 선언하여 해당 component 가 tag 안에 있는 내용을 처리할 수 있다고 android s..
Explicit(명시적) intent? 활성화할 패키지명과 component 명을 정확히(명시적) 지칭하여 component 를 활성화. 일반적으로 본인의 앱 안에서 구성 요소를 시작할 때 쓰임. (시작하고자 하는 액티비티 또는 서비스의 클래스 이름을 알고 있기 때문) 예를 들어, 사용자 작업에 응답하여 새 액티비티를 시작하거나 백그라운드에서 파일을 다운로드하기 위해 서비스를 시작하는 것 등이 여기에 해당. Explicit intent 로 외부 패키지 활성화 아래와 같이 서로 다른 패키지의 activity 를 활성화 할 때 쓰임. - com.parkho.intent1 패키지에서 com.parkho.intent2 의 TestActivity 를 실행 만약, 해당 option 이 없었다면 아무 패키지의 act..
- Total
- Today
- Yesterday
- onCreateContextMenu
- StringUtils
- 앱테크
- M2E
- bindservice
- onContextItemSelected
- 채굴앱
- Android Service
- android flag activity
- task 생성
- mPANDO
- 리워드앱
- task
- 무료 채굴
- 앱테크 추천
- RoomDatabase
- registerForContextMenu
- BroadcastReceiver
- android activity flag
- notifyDataSetChanged
- Intent
- 안드로이드 인텐트
- StartService
- android intent
- p2e
- 안드로이드 서비스
- 리워드 어플
- android task
- WEMIX
- 무료채굴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |