현재 Titanium iOS-app에 Branch.io를 구현하고 있습니다. Titanium SDK 6.0과 함께 최신 4.8 Studio 사용.Branch.io - ContinueActivity가 올바른 ActivityType을 반환하지 않습니다.
"콜드 데드 (cold dead)"일 때 응용 프로그램을 열려고 할 때 생성 된 활동에서 올바른 activityType을 가져 오지 못한다는 점을 제외하면 모든 것이 잘 통합되어 작동합니다.
"continueactivity"의 eventlistener가 사용되지만 activityType은 "NSUserActivityTypeBrowsingWeb"이며 Entitlement.plist 파일에 지정된 것이 아닙니다.
var Branch = require("io.branch.sdk");
Branch.addEventListener("bio:initSession", branchInitCallback); // When opened via Branch, when app is "active"
Ti.App.iOS.addEventListener("continueactivity", branchContinueActivity); // If opened via Branch, when "hard closed"
// Create the Activity incase the app is Super-closed
var branchActivity = Ti.App.iOS.createUserActivity(
{
activityType: 'io.branch.{appname}.universalLink'
});
branchActivity.becomeCurrent();
Branch.initSession();
// Branch Callbacks
function branchInitCallback(_data)
{
Ti.API.info("inside onInitSessionFinished");
alert("init: " + JSON.stringify(_data));
console.log(_data);
if(_data)
{
if(_data["+clicked_branch_link"] != undefined && _data["+clicked_branch_link"] == 1)
{
alert("CLICKED BRANCH LINK");
}
}
}
function branchContinueActivity(e)
{
Ti.API.info("inside continueactivity: " + JSON.stringify(e));
if (e.activityType === 'io.branch.{appname}.universalLink')
{
Branch.continueUserActivity(e.activityType, e.webpageURL, e.userInfo);
}
alert("continue:" + JSON.stringify(e));
console.log(e);
var sessionParams = Branch.getLatestReferringParams();
alert("session: " + JSON.stringify(sessionParams));
console.log(sessionParams);
}
이 함수 "branchContinueActivity는"지점 기능 "continueUserActivity"을 fireing되지 않음을 의미합니다 :
는 여기에 우리의 현재 코드입니다.
우리는 당연히 추가했습니다 : tiapp.xml
에
<key>NSUserActivityTypes</key>
<array>
<string>io.branch.{appname}.universalLink</string>
</array>
우리가 잘못 여기서 뭐하는거야?
안녕하세요. Alex 님, 귀하의 회신에 감사드립니다. 나는 testbed-app를 설치했고 app-ID를 가진 개발자 포털에 추가했다. (그래서 나는 그것에 AD를 활성화 할 수 있었다.) 필자는 entitlements-file (test-app.link)에 추가 광고를 추가하여 제대로 설정되었는지 확인했습니다. 그래도 링크가있는 앱을 열 수는 없습니다. 수동으로 주소창에 작성하면 사파리에서 "testbed : //"와 함께 작동합니다. 그러나 어떤 Branch-io 링크를 통해서가 아닙니다. 이것에 기초해서, 나는 뭔가를 놓쳤을 가능성이 있는가? – Oakleaf
흠. 네, 그 일을해야합니다. 테스트 베드 앱 데이터로 지점 대시 보드 구성을 업데이트 했습니까 (아니면 새 대시 보드를 만드셨습니까?)? –
새 것을 만들고 유두 환경을 사용합니다. – Oakleaf