package com.yeshi.location.plugins;
|
|
import android.content.Context;
|
|
import com.ut.device.UTDevice;
|
import com.yeshi.location.utils.ManifestDataUtil;
|
|
import java.util.Map;
|
|
import androidx.annotation.NonNull;
|
import androidx.annotation.Nullable;
|
import io.flutter.plugin.common.BasicMessageChannel;
|
import io.flutter.plugin.common.BinaryMessenger;
|
import io.flutter.plugin.common.StandardMessageCodec;
|
|
public class DeviceUtilPlugins implements BasicMessageChannel.MessageHandler<Object> {
|
|
private static final String TAG = "DeviceUtil";
|
|
private final Context activity;
|
private final BasicMessageChannel<Object> messageChannel;
|
|
|
|
|
private DeviceUtilPlugins(Context activity, BinaryMessenger messager) {
|
this.activity = activity;
|
this.messageChannel = new BasicMessageChannel<Object>(messager, "DeviceUtil", StandardMessageCodec.INSTANCE);
|
messageChannel.setMessageHandler(this);
|
}
|
|
public static DeviceUtilPlugins registerWith(Context activity, BinaryMessenger messager) {
|
return new DeviceUtilPlugins(activity, messager);
|
}
|
|
|
@Override
|
public void onMessage(@Nullable Object message, @NonNull BasicMessageChannel.Reply<Object> reply) {
|
Map<String, String> arguments = (Map<String, String>) message;
|
String method = arguments.get("method");
|
switch (method) {
|
//初始化
|
case "getUtdid":
|
reply.reply(UTDevice.getUtdid(activity));
|
break;
|
case "getChannel":
|
String channel = ManifestDataUtil.getAppMetaData(activity, "UMENG_CHANNEL");
|
reply.reply(channel);
|
break;
|
}
|
}
|
}
|