Android开发笔记-DeepLink唤醒APP

        最近接到一个需要从任意一个邮箱直接进入APP登录页的需求,其中会用到DeepLink技术,简单做一个笔记,DeepLink(深度链接)就是支持在移动App自由跳转的技术。从拦截外部请求到app内并定位到具体页面的技术.也就是你在手机上点击一个链接之后,可以直接链接到app内部的某个页面,而不是app正常打开时显示的首页。不似web,一个链接就可以直接打开web的内页,app的内页打开,必须用到deeplink技术。

      作用:1 deeplink能够将外部流量引导到app内, 并提供连贯的浏览体验, 实在是引流的大杀器,2 deeplink还做高效的流量分发. 通过外部url的投放和内部拦截, 可以针对不同场景直接分发流量到具体页面, 将用户直接引导到各个垂直频道.

            其中涉及到URL Scheme, 类似一种路由,它是iOS,Android平台都支持,只需要原生APP开发时注册scheme, 那么用户点击到此类链接时,会自动唤醒APP,借助于URL Router机制,则还可以跳转至指定页面。

      简单写一个Demo:

   启动链接:
模拟邮箱点击: private void open() { String url = "http://www.wwe.com/login"; Uri uri = Uri.parse(url); Intent intent = new Intent(); intent.setData(uri); startActivity(intent); }

APK页面
 

            
                
                
                
                
            
        

scheme:判别启动的App。 
host:主页地址
path:传值时必须的key     非必需
query:获取值的Key和Value  非必需

 public class DeepLinkActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_deep_link);

        Intent intent = getIntent();
        if (intent != null && intent.getData() != null) {
            Uri uri = Uri.parse(intent.getData().toString());
            Toast.makeText(DeepLinkActivity.this, uri.toString(), Toast.LENGTH_LONG).show();
        }
    }
}

 

你可能感兴趣的:(android,Android基础)