티스토리 뷰
반응형
특정 텍스트나 이미지를 블럭하여 공유하기 목록에 앱 추가 및 데이터 받는 방법에 대해 알아보자.
Manifest에 공유 데이터를 받을 Activity 태그 안에 intent-filter를 등록해야 한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <activity android:name="ShareActivity 명"> <intent-filter> <action android:name="android.intent.action.SEND"/> <category android:name="android.intent.category.DEFAULT"/> <data android:mimeType="text/plain"/> </intent-filter> </activity> | cs |
참조 : https://developer.android.com/guide/components/intents-filters.html
mimeType이 공유하는 컨텐츠와 맞지 않을경우 공유 앱 리스트에 나타나지 않는다.
전달 받고 싶은 타입만 추가해서 사용하면 된다.
"*/*". "image/*", "video/*", "audio/*" 등등..
참고로 구글 문서에는 mimeType 타입별 intent-filter를 추가 하였지만
하나의 intent-filter에 여러개의 mimeType을 추가해도 동작한다.
<data android:mimeType="text/plain"/>
<data android:mimeType="image/*"/>
데이터를 확인할 때는 등록한 해당 Activity에 다음과 같이 처리하면 된다.
1 2 3 4 5 6 7 8 9 10 11 | Intent intent = getIntent(); String action = intent.getAction(); String type = intent.getType(); if (Intent.ACTION_SEND.equals(action) && type != null) { if ("text/plain".equals(type)) { String sharedText = intent.getStringExtra(Intent.EXTRA_TEXT); } else if (type.startsWith("image/")) { Uri imageUri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM); } } | cs |
반응형
'Android > 자료정리' 카테고리의 다른 글
[Oreo]OS 8.0 GCM 대응하기 (0) | 2018.06.21 |
---|---|
[kakao] kakaolink v2 대응하기. /font error / hash key error (0) | 2018.06.07 |
[android] retrofit - encode error (%2c, %3D, %0A...) (0) | 2017.12.04 |
[Android][FireBase] DebugView 사용해보기~ (0) | 2017.10.17 |
[Android]EditText focus 제거 /키패드 숨기기/ (0) | 2017.08.28 |
댓글
반응형