Exemplo n.º 1
0
const std::string CCNative::getDeviceID(void)
{
#define UDID_KEY "__UDID_KEY__"
	std::string udid;
	UserDefault* userDefault = UserDefault::getInstance();
	if( NULL != userDefault )
	{
		udid = userDefault->getStringForKey( UDID_KEY );
	}
	if( udid.size() == 0 )
	{   
		//GUID uuid; 
		//CoCreateGuid(&uuid); 
		//// Spit the address out 
		//char mac_addr[18]; 
		//sprintf(mac_addr,"%02X:%02X:%02X:%02X:%02X:%02X", 
		//uuid.Data4[2],uuid.Data4[3],uuid.Data4[4], 
		//uuid.Data4[5],uuid.Data4[6],uuid.Data4[7]); 
		udid = GetNetBiosMacAddresses();
		if( userDefault )
		{
			userDefault->setStringForKey(UDID_KEY, udid);
            userDefault->flush();
		}
	}
	return udid;
}
Exemplo n.º 2
0
NS_CC_EXTRA_BEGIN
const std::string CCNative::getDeviceID(void)
{
#define UDID_KEY "__UDID_KEY__"
	std::string udid;
	UserDefault* userDefault = UserDefault::getInstance();
	if( NULL != userDefault )
	{
		udid = userDefault->getStringForKey( UDID_KEY );
	}
	if( udid.size() == 0 )
	{
		//GUID guid = {0};
		//char szGuid[128]={0};
		//CoCreateGuid(&guid);
		//sprintf(szGuid, "%08X%04X%04X%02X%02X%02X%02X%02X%02X%02X%02X", guid.Data1, guid.Data2, guid.Data3, guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3], guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
		//udid = "aaaaaaaaaaaaaaaaaaaa";
		udid = Application::getInstance()->getMacAddress();
		/// xx:xx:xx:xx:xx
		///一共有16位
		///4个冒号
		std::string::iterator end_pos = std::remove(udid.begin(), udid.end(), ' ');
		udid.erase(end_pos, udid.end()); 
		if( userDefault && udid.size() >= 16 )
		{
			userDefault->setStringForKey(UDID_KEY, udid);
		}
	}
	return udid;
}
Exemplo n.º 3
0
//Callback
void TrivialAPI::onHttpRequestCompleted(HttpClient* client, HttpResponse* response)
{
    const char *responseTag;

    if (!response)
        return;
    
    if (!response->isSucceed())
    {
        log("response failed");
        log("error buffer: %s", response->getErrorBuffer());
        log("HTTP Status Code: %ld", response->getResponseCode());
        
        std::vector<char> *buffer = response->getResponseData();
        
        printf("Http Test, dump data: ");
        for (unsigned int i = 0; i < buffer->size(); i++)
        {
            printf("%c", (*buffer)[i]);
        }
        printf("\n");
        
        UserDefault *pUserDefaults = UserDefault::getInstance();
        std::string hash = pUserDefaults->getStringForKey("hash");
        
        if (hash.length() == 0) {
            MessageBox("Interneta beharrezkoa da", "Error");
        } else {
             _finishCalbback->execute();
        }

    } else {
        responseTag = response->getHttpRequest()->getTag();
        int statusCode = (int) response->getResponseCode();
        char statusString[64] = {};
        sprintf(statusString, "HTTP Status Code: %d, tag = %s", statusCode, responseTag);
        //log(statusString);
    }

    std::vector<char> *buffer = response->getResponseData();
    std::string str(buffer->begin(), buffer->end());
        
    if (!strcmp(responseTag, "generalToken")) {
        UserDefault *pUserDefault = UserDefault::getInstance();
        std::string savedHash = pUserDefault->getStringForKey("hash");
        std::string token = parseGeneralToken(str);
        if (savedHash.compare(token) != 0) {
            _hash = token;
            _sqlHelper->resetDB();
            updateKategoriak(emptyPrivateCode);
        } else {
            //updatePrivateData();
            _finishCalbback->execute();
        }
    } else if(!strcmp(responseTag, "kategoriak")) {
        parseKategoriak(str);
        updateMultzoak(emptyPrivateCode);
    } else if(!strcmp(responseTag, "multzoak")) {
        parseMultzoak(str);
        updateGalderak(emptyPrivateCode);
    } else if(!strcmp(responseTag, "galderak")) {
        parseGalderak(str);
        
        UserDefault *pUserDefault = UserDefault::getInstance();
        std::string savedHash = pUserDefault->getStringForKey("hash");
        
        if (savedHash.empty()) {
            _sqlHelper->initUserData();
        } else {
            _sqlHelper->updateUserData();
        }
        
        pUserDefault->setStringForKey("hash", _hash);
        pUserDefault->flush();
        
        //updatePrivateData();
        _finishCalbback->execute();
    }
}