如何在Web服务中获取移动设备识别

时间:2014-10-21 10:32:12

标签: android web-services mdm

我有android原生应用程序&网络服务。我们的申请是大学申请。为会话问题生成长期令牌。所以我们计划去MDM,我在Google上搜索,我得到了一些解决方案

Open Mobster (Open Source Mobile Enterprise Backend)
Apache USerGrid_ (Mobile Backend as a service) 
OpenMeap - not support native

问题是我无法找到,这个MDM是否提供设备识别功能。如果有人知道,请告诉我。设备标识可以是任何唯一的id或mac地址

或者如果我要开发自己的中间层,我们如何从请求标头获取mac地址。没有传递给服务方法,从请求中应该采取。

有没有办法解决这个问题?

请帮帮我

1 个答案:

答案 0 :(得分:0)

以下是OpenMEAP如何抓取Mac地址并将其传递到标头中。

package com.openmeap.thinclient;

import java.io.ByteArrayInputStream;
import com.openmeap.http.HttpRequestExecuter;
import com.openmeap.http.HttpResponse;
import com.openmeap.util.Utils;

public class FirstRunCheck implements Runnable {
private SLICConfig config;
private String macAddress;
private HttpRequestExecuter executer;
public FirstRunCheck(SLICConfig config, String macAddress, HttpRequestExecuter executer) {
    this.config = config;
    this.macAddress = macAddress;
    this.executer = executer;
}
public void run() {
    if( config.isDevelopmentMode().equals(Boolean.TRUE) ) {
        return;
    }
    if( config.getNotFirstRun()==null ) {
        config.setNotFirstRun(Boolean.TRUE);
        try {
            String macWithSalt = macAddress+".OPENMEAP#$!@3__234";
            String hashValue = Utils.hashInputStream("sha1", new ByteArrayInputStream(macWithSalt.getBytes("UTF-8")));
            HttpResponse response = executer.get("http://usage.openmeap.com/tracker.gif?hash="+hashValue);
            Utils.consumeInputStream(response.getResponseBody());
        } catch( Exception ioe ) {
            return;
        }
    }
}

}