package com.example.tcl.magicwindow;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import com.zxinsight.MLink;
import com.zxinsight.MWConfiguration;
import com.zxinsight.MagicWindowSDK;
import com.zxinsight.Session;
import com.zxinsight.mlink.MLinkCallback;
import com.zxinsight.mlink.MLinkIntentBuilder;
import com.zxinsight.mlink.annotation.MLinkDefaultRouter;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initMW();
registerForMLinkCallback();
Uri mLink = getIntent().getData();
MLink.getInstance(this).deferredRouter();
if (mLink != null) {
MLink.getInstance(this).router(mLink);
finish();//important
} else {
MLink.getInstance(this).checkYYB();
}
}
private void initMW() {
MWConfiguration config = new MWConfiguration(this);
config.setDebugModel(true)
.setPageTrackWithFragment(true)
.setWebViewBroadcastOpen(true)
.setSharePlatform(MWConfiguration.ORIGINAL);
MagicWindowSDK.initSDK(config);
}
private static void registerForMLinkCallback() {
MLink mLink = MagicWindowSDK.getMLink();
mLink.registerDefault(new MLinkCallback() {
@Override
public void execute(Map<String, String> paramMap, Uri uri, Context context) {
//todo: 获取动态参数,用来处理
String id = "";
if (paramMap != null) {
id = paramMap.get("articleId");
} else if (uri != null) {
id = uri.getQueryParameter("articleId");
}
//todo: 此处可以根据获取的动态参数id来做相应的处理
Log.d("*******articleId", id);// ****已经获取到动态参数****
}
});
}
@Override
protected void onStart() {
super.onStart();
Uri mLink = getIntent().getData();
if (mLink != null) {
MagicWindowSDK.getMLink().router(mLink);
} else {
Log.d("请您安装软件", "请您安装软件");
}
}
@Override
protected void onPause() {
Session.onPause(this);
super.onPause();
}
@Override
protected void onResume() {
Session.onResume(this);
super.onResume();
}
@Override
public void onNewIntent(Intent intent) {
super.onNewIntent(intent);
this.setIntent(intent);
}
}
魔窗SDK集成
最新推荐文章于 2019-11-14 16:53:56 发布