android 에서 통신하는 방법
android 에서 통신하는 방법은 크게 3가지가 있다
intent
handler
aidl
이중 intent 로 통신하는 것은 activity 간 통신하는 것으로 가장 간단하고 기본적인 방식이다.
intent 통신 특징
intent 통신 특징은 포그라운드에서 진행되기 때문에 항상 Main Thread 에서 동작해야만 한다는 단점이 있다.
백그라운드에서 데이터를 주고받고 싶다면 aidl 혹은 socket 혹은 handler 를 이용해야만 한다.
intent 통신 절차
Mainactivity 에서 진행
1. intent 를 선언해준다. 첫번째엔 보낼 activity class, 두번째에는 수신받는 activity class 를 설정한다
Intent myIntent = new Intent(this, secondActivity.class);
2. intent 에 필요한 값을 저장한다
intent.putExtra("text", input);
startActivity(intent);
putExtra 로 key, value 쌍으로 추가해준다
Secondactivity 에서 진행
(activity 추가시 AndroidManifest.xml 에 추가해줘야 한다)
<activity android:name=".SubActivity"/>
3. getIntent 를 통해 intent 를 수신받고 getStringExtra(key) 로 보낸 값을 수신한다
Intent intent = getIntent();
String text = intent.getStringExtra("text");
'개발 > Android Studio' 카테고리의 다른 글
[android] aidl, multiprocess 통신 (0) | 2023.10.12 |
---|---|
[Android] aidl 로 양방향 통신하기 (0) | 2023.04.12 |
[Android] Aidl 로 class 옮기기 (0) | 2023.04.04 |
[Android] PackageManager (0) | 2023.03.25 |
[Android] activity 를 intent 로 실행하는법 (startActivity startActivityForResult) (0) | 2023.03.24 |