Network Verification Functions
Overview
- The network verification module is an official EasyClick module. Retrieve license keys from the user center at http://uc.ieasyclick.com
- For APK versions below 9.13.0, download the network verification SDK separately and integrate it into your script manually
- For 9.13.0+, call functions directly without SDK integration
- License keys include heartbeat verification automatically — no separate call needed
- License keys also validate script integrity to increase anti-tamper difficulty, unlike many third-party verification platforms
- Both integrated and SDK versions use the same ecNetCard module prefix
- Platform usage guide: View here
License Key Operations
ecNetCard.setDeviceId Custom Device ID
- [Network verification] Set a custom device ID
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 11.21.0+
- @param deviceId Custom device ID you generate; max 32 characters
- @return
{boolean}true on success
function main() { // Start writing your code here!! logd("Checking automation environment...")
logd("Starting script...")// Example only — do not copy verbatim; use android_id or generate your own ecNetCard.setDeviceId("123") let appId = "sjfjvkpw" let appSecret = "ykjscxcs"let cardNo = "cbwolrftnw"
let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } }
sleep(5000) if (!bindResult) { return }
// Cloud variable demo let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") // Returned JSON data loge("user age=> " + JSON.stringify(user_ageJson)) // Get the value loge("user age value=> " + user_ageJson['data'])
// Update user_age let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") }
// Unbind (call as needed) // Can also unbind from the admin console let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000)
while (true) { sleep(1000) }}
main();ecNetCard.netCardInit Initialize License Key
- [Network verification] Initialize license key module
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param appId Application appId from the user center
- @param appSecret Application secret from the user center
- @return
{json}null on success; JSON data on failure
function main() { // Start writing your code here!! logd("Checking automation environment...")
logd("Starting script...")
let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw"
let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } }
sleep(5000) if (!bindResult) { return }
// Cloud variable demo let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") loge("user age=> " + JSON.stringify(user_ageJson)) loge("user age value=> " + user_ageJson['data'])
let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") }
let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000)
while (true) { sleep(1000) }}
main();ecNetCard.netCardBind Bind License Key
- [Network verification] Bind a license key
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param cardNo License key from the user center
- @return
{null|JSON}JSON object, e.g.{"code":0,"msg":""}
function main() { logd("Checking automation environment...") logd("Starting script...") let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw" let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } } sleep(5000) if (!bindResult) { return } let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") loge("user age=> " + JSON.stringify(user_ageJson)) loge("user age value=> " + user_ageJson['data']) let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") } let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000) while (true) { sleep(1000) }}main();ecNetCard.netCardUnbind Unbind License Key
- [Network verification] Unbind a license key
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param cardNo License key from the user center
- @param password Unbind password; required if one was set
- @return
{null|JSON}JSON object, e.g.{"code":0,"msg":""}
function main() { logd("Checking automation environment...") logd("Starting script...") let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw" let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } } sleep(5000) if (!bindResult) { return } let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") loge("user age=> " + JSON.stringify(user_ageJson)) loge("user age value=> " + user_ageJson['data']) let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") } let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000) while (true) { sleep(1000) }}main();ecNetCard.getCardInfo Get License Key Info
- [Network verification] Get license key information
- Can be called from UI to display info on screen
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param appId Application appId from the user center
- @param appSecret Application secret from the user center
- @param cardNo License key
- @return
{null|JSON}JSON object, e.g.{"code":0,"msg":""}
function main() { logd("Starting script...") let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw"
let card = ecNetCard.getCardInfo(appId, appSecret, cardNo) logd("card " + JSON.stringify(card))}
main();Cloud Variables
ecNetCard.netCardGetCloudVar Get Remote Variable
- [Network verification — remote variables] Get a remote variable
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param key Remote variable name
- @return
{null|JSON}JSON object, e.g.{"code":0,"msg":""}
function main() { logd("Checking automation environment...") logd("Starting script...") let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw" let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } } sleep(5000) if (!bindResult) { return } let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") loge("user age=> " + JSON.stringify(user_ageJson)) loge("user age value=> " + user_ageJson['data']) let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") } let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000) while (true) { sleep(1000) }}main();ecNetCard.netCardUpdateCloudVar Update Remote Variable
- [Network verification — remote variables] Update a remote variable
- Key management: [http://uc.ieasyclick.com]
- Requires EC Android 9.13.0+
- @param key Remote variable name
- @param value Remote variable content
- @return
{null|JSON}JSON object, e.g.{"code":0,"msg":""}
function main() { logd("Checking automation environment...") logd("Starting script...") let appId = "sjfjvkpw" let appSecret = "ykjscxcs" let cardNo = "cbwolrftnw" let inited = ecNetCard.netCardInit(appId, appSecret) logd("inited card => " + JSON.stringify(inited)); let bind = ecNetCard.netCardBind(cardNo) logd("bind " + JSON.stringify(bind)) loge("bind {}", JSON.stringify(bind)) let bindResult = false; if (bind != null && bind != undefined && bind["code"] == 0) { loge("License key bound successfully") loge("Remaining time: " + bind['data']['leftDays'] + " days") loge("Activation time: " + bind['data']['startTime']) loge("Expiration time: " + bind['data']['expireTime']) bindResult = true; } else { if (bind == null || bind == undefined) { loge("License key binding failed, no return value ") } else { loge("License key binding failed: " + bind["msg"]) } } sleep(5000) if (!bindResult) { return } let user_ageJson = ecNetCard.netCardGetCloudVar("user_age") loge("user age=> " + JSON.stringify(user_ageJson)) loge("user age value=> " + user_ageJson['data']) let up = ecNetCard.netCardUpdateCloudVar("user_age", "12222"); loge("netCardUpdateCloudVar => " + JSON.stringify(up)) if (up['code'] == 0) { loge("netCardUpdateCloudVar updated successfully") } let unddd = ecNetCard.netCardUnbind(cardNo, "12323") loge("netCardUnbind {}", JSON.stringify(unddd)) sleep(2000) while (true) { sleep(1000) }}main();