आप IMEI नंबर वापस जाने के लिए एक phonegap प्लगइन लिख सकते हैं। चूंकि फोनगैप एंड्रॉइड उपकरणों के लिए आईमेई नहीं लौटाता है, यह एक यादृच्छिक 64-बिट संख्या देता है।
फोनगैप एप्लिकेशन में असली आईएमईआई नंबर प्राप्त करने के लिए यहां एक पूर्ण प्लगइन है (कृपया ध्यान दें कि यह प्लगइन "प्लगमेबल" नहीं है, लेकिन अगर निर्देशों का पालन करें तो यह काम करेगा। मैंने फोनगैप 2.9 पर परीक्षण किया है। मैं योजना बना रहा हूं फोनगैप 3.0 के लिए कुछ डिवाइस जानकारी के साथ एक असली "प्लगमेबल" प्लगइन लिखना)।
यहाँ (DeviceInfo.java) उस के लिए जावा वर्ग CordovaPlugin तक फैली हुई है:
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import android.content.Context;
import android.telephony.TelephonyManager;
import android.util.Log;
public class DeviceInfo extends CordovaPlugin {
public DeviceInfo(){
}
public String DeviceImeiNumber(){
TelephonyManager tManager = (TelephonyManager)cordova.getActivity().getSystemService(Context.TELEPHONY_SERVICE);
return tManager.getDeviceId();
}
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) {
if (action.equals("imeiNumber")) {
callbackContext.success(this.DeviceImeiNumber());
return true;
}
else {
return false;
}
}
}
और फिर आप एक js वस्तु की जरूरत है ताकि आप (deviceinfo.js दूसरे पक्ष पर अपने प्लगइन का उपयोग कर सकते):
(function(cordova) {
function DeviceInfo() {}
DeviceInfo.prototype.imeiNumber = function(win, fail) {
return cordova.exec(
function (args) { if(win !== undefined) { win(args); } },
function (args) { if(fail !== undefined) { fail(args); } },
"DeviceInfo", "imeiNumber", []);
};
if(!window.plugins) {
window.plugins = {};
}
if (!window.plugins.DeviceInfo) {
window.plugins.DeviceInfo = new DeviceInfo();
}
})(window.cordova);
इस तरह अपनी परियोजना के अंदर रेस/xml/config.xml फ़ाइल पर अपने प्लगइन जोड़ें:
<plugins>
<plugin name="DeviceInfo" value="com.XXX.XXXXX.DeviceInfo"/>
</plugins>
और अपने AndroidManifest.xml अंदर READ_PHONE_STATE अनुमति जोड़ें:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
यह आप आप अपने पेज में फ़ाइल deviceinfo.js जोड़ने की जरूरत है के बाद, और deviceready अपने इस तरह प्लगइन आप उपयोग कर सकते हैं के बाद:
plugins.DeviceInfo.imeiNumber(function(imei){
console.log("imei "+ imei);
});
अपना IMEI पुष्टि करने के लिए, यह आमतौर पर बैटरी के तहत मुद्रित है या कहीं पर छुपे हुए (और बॉक्स पर उस में आया है कि यदि उपलब्ध है)। – StackOverflowed
@StackOverflowed जैसा कि आपने सही ढंग से इंगित किया है, यह आमतौर पर ** ** बैटरी के नीचे मुद्रित होता है, इसलिए इसे पढ़ने के लिए, डिवाइस को बंद करना और बैटरी को निकालना आवश्यक है। '* # 06 #' त्वरित कोड का उपयोग करके, ओपी द्वारा metioned रास्ता है, रास्ता तेज और आसान है। डिवाइस को बंद करने की आवश्यकता नहीं है। – trejder
@StackOverflowed सुपर सहायक होगा यदि आप बैटरी को प्रोग्रामेटिक रूप से हटाने और मुद्रित IMEI को पढ़ने के लिए कुछ कोड प्रदान कर सकते हैं। –