applinker


applinker는 3.0.0 버전 이상 부터 제공되며 해당 라이브러리를 추가하여 사용해야 된다.

start

앱 링크를 실행한다.

 

options

필드설명
iosiOS 디바이스에 전달 되는 값
androidAndroid 디바이스에 전달 되는 값
  

ios options

필드설명M/O
scheme연결할 앱의 스키마 값 (mailto, tel, sms 등)M
contents전달 되는 값O
   

android options

필드설명M/O
packageName패키지 명O
activityActivity 클래스 명O
action액션 명O
uri전달 되는 값O
   

successCallback

필드설명
없음없음
  

errorCallback

필드설명
code에러코드
message에러메세지
  

iOS Example

var options = {"ios": {
   "scheme":"sms",
   "contents":"1-408-555-1212"
}};

hone.channel.execute('applinker', 'start', [options],
   function () {
    }, function (e) {
        alert(JSON.stringify(e));
    }
);

앱 연동을 위해 plist 파일에 연결할 앱의 스키마를 아래와 같이 등록해 주시기 바랍니다.

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>연결할 스키마</string>
</array>

Android Example

var options = {"android": {
   "packageName":"com.hanwha.honeapplication"
}};

hone.channel.execute('applinker', 'start', [options],
   function () {
    }, function (e) {
        alert(JSON.stringify(e));
    }
);

var options = {"android": {
   "action":"android.intent.action.SENDTO",
   "uri": "smsto:0800000123"
}};

hone.channel.execute('applinker', 'start', [options],
   function () {
    }, function (e) {
        alert(JSON.stringify(e));
    }
);

targetSdkVersion이 안드로이드 11 이상인 앱에서는 디바이스에 설치된 다른 앱 목록을 알 수 없고, 미리 매니페스트 파일에 지정한 앱의 정보만 가져올 수 있다.
쿼리 하고 싶은 앱을 지정하려면 AndroidManifest.xml에 <queries> 요소를 추가해서 쿼리 할 패키지 이름 또는 인텐트 필터 서명을 포함해야 한다.

패키지 이름 지정 방법
<manifest package="com.hanwha.testmobile">
    <queries>
        <package android:name="com.example.sample" />
    </queries>
    ...
</manifest>

인텐트 필더 지정 방법
<manifest package="com.hanwha.testmobile">
    <queries>
        <intent>
            <action android:name="android.intent.action.SEND" />
            <data android:mimeType="image/jpeg" />
        </intent>
    </queries>
    ...
</manifest>


Error Code

CodeCauseComment
E11600파라메터 값이 잘못되어 있을 경우 
E11601전달된 액션 값이 알 수 없는 액션일 경우 
E11650실행 중 오류가 발생 되었을 경우 
E11699알 수 없는 오류가 발생 되었을 경우