Android - 웹( or 모바일웹) 에서 App(어플,앱) 호출하기
1. manifest.xml 에서 스키마 만들기
- 매인 엑티비티여도 괜찮고, 자신이 호출했을때 기본으로 띄울 인트로 화면이어도 좋다. 원하는 액티비티 하위에 스키마를 작성하자.
<activity
android:name="com.xxx.myapp.intro"
>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp" />
</intent-filter>
</activity>
intro 라는 Activity 에게 myapp 이라는 스키마를 설정해줌으로써
웹에서 <a href="myapp://"></a> 이런식으로 어플리케이션의 스키마를 사용해서 호출할 수 있다.
또한 웹에서 사용하는 url 과 같은 방식으로 뒤에 파라미터를 이어붙일 수 있으며
Activity 는 파라미터를 수신받아 특정 기능을 수행 할 수도있다.
ex )
<a href="myApp://goActivity?activity_name=main"></a>
- 호출받은 activity 내부에서 파라미터 수신받기
Uri req_data = getIntent().getData();
if(!req_data.equals(null)){
// 호출 URL 예시 : jusikon://play?anal_id=111 << 이 URL 로 모바일웹에서 호출될 경우
Log.i(DEBUG_TAG, req_data.toString());
// 출력결과 : myApp://goActivity?activity_name=main
Log.i(DEBUG_TAG, req_data.getHost());
// 출력결과 : goActivity
Log.i(DEBUG_TAG, req_data.getQuery());
// 출력결과 : activity_name=main
Log.i(DEBUG_TAG, req_data.getQueryParameter("activity_name"));
// 출력결과 : main
}
댓글
댓글 쓰기