我现在在Android上处理分支io。 这很奇怪。如果我先关闭我的应用程序并单击该链接,该链接会将我引导至我的应用程序并打开应该显示的页面。但是,如果我打开我的应用程序并单击主页按钮,然后单击该链接,该链接会将我引导至...但页面未显示。我只能通过分支io看到主页面没有路由。
这是我的代码。
@Override
protected void onStart() {
super.onStart();
branchIO();
}
private void branchIO() {
Branch branch= Branch.getInstance();
branch.initSession(new Branch.BranchReferralInitListener(){
@Override
public void onInitFinished(JSONObject referringParams, BranchError error) {
if (error == null) {
try{
Log.d("log", referringParams.toString());
//...my routing logic...
}catch(Exception e){
Log.e("log", "branch io error",e);
}
} else {
Log.i("log", error.getMessage());
}
}
}, this.getIntent().getData(), this);
BranchIO.branchUniversalObject.generateShortUrl(this, BranchIO.linkProperties, new Branch.BranchLinkCreateListener() {
@Override
public void onLinkCreate(String url, BranchError error) {
if (error == null) {
}
}
});
}
如果我先关闭我的应用程序,那么日志就是这个
D / log:{" $ og_title":"₩230000"," ~create_source":5," $ og_description": " blah blah"," + click_timestamp":1512100123,........"}
但是如果我先打开我的应用并将其放在后台,那么日志就是这个
D / log:{" + clicked_branch_link":false," + is_first_session":false}
我阅读了很多StackOverflow和GitHub页面,但无法找到解决方案。 谢谢你的阅读!
修改
我忘了在onNewIntent中使用this.setIntent(intent)。 所以在添加之后,它运作良好。
@Override
public void onNewIntent(Intent intent) {
this.setIntent(intent);
}
谢谢!
答案 0 :(得分:1)