الحصول برمجياً على رقم هاتف خاص في سيمبيان

StackOverflow https://stackoverflow.com/questions/60461

  •  09-06-2019
  •  | 
  •  

سؤال

كيفية الحصول على رقم هاتف الجهاز في سيمبيان؟

هل كانت مفيدة؟

المحلول

وفقًا لمواصفات GSM، فقط IMSI يشترط أن يكون متاحا على سيم بطاقة.

رقم الهاتف الفعلي MSISDN يتم تخزينها على HLR قاعدة البيانات في شبكة المشغل ولا يلزم أن تكون متاحة على بطاقة SIM أو تنتقل إلى الهاتف.

لذا، بغض النظر عن التقنية التي تستخدمها (Symbina، Java...) لا يمكنك أبدًا الاعتماد على قدرتك على الحصول باستمرار على رقم هاتفك الخاص من الجهاز أو بطاقة SIM.قد تكون محظوظًا إذا قام المشغل بتخزينه على بطاقة SIM أو إذا كان الهاتف يوفر للمستخدم إمكانية إدخاله يدويًا، ولكن ليس من الضروري أن يكون الأمر بهذه الطريقة.

نصائح أخرى

كما قال بات، على الرغم من وجود واجهات برمجة التطبيقات (APIs) للوصول إلى فتحة "الرقم الخاص" على بطاقة SIM، إلا أنه نادرًا ما يتم ملء هذه الفتحة حسب تجربتي.

تتمثل الإستراتيجية المعتادة للحصول على رقم الهاتف لتطبيق متصل في إرسال رسالة نصية قصيرة كجزء من عملية التحقق.أيضاً:

  1. قم بإرسال رسالة نصية قصيرة بشكل برمجي من الهاتف إلى الخادم الخاص بك (الكثير من موفري خدمة التوصيل البيني لبوابة الرسائل القصيرة الجيدة هناك).ستصل الرسالة القصيرة إلى الخادم الخاص بك "من" رقم الهاتف (أو بطاقة SIM بشكل أكثر صحة).بالطبع يجب أن تحتوي الرسالة النصية القصيرة على بعض الرموز المميزة حتى يتمكن الخادم من ربطها بجلسة/مستخدم معين.يتمتع هذا بميزة أنك لا تحتاج إلى قيام المستخدم بإدخال رقم هاتفه الخاص (وهو ما يمثل صعوبات طفيفة نظرًا لأن القليل من الأشخاص يفهمون كيفية تنسيق الأرقام بتنسيق E.164).أحد العيوب هو أن العملية يمكن أن تكلف أموال المستخدم (رسالة قصيرة واحدة).

  2. اطلب من المستخدم إدخال رقم هاتفه (موقع الويب أو على الهاتف) والاتصال بالخادم الخاص بك، وتمرير رقم الهاتف هذا.اطلب من الهاتف ثم انتظر وصول رسالة نصية قصيرة ترسلها من الخادم الخاص بك.إذا وصلت هذه الرسالة النصية القصيرة بالفعل، فقد تأكدت من صحة وصلاحية رقم الهاتف الذي أدخلته.العيب الواضح هو أن هذا يعتمد على قيام المستخدم بإدخال رقمه بشكل صحيح - مرة أخرى، نظرًا للعدد الكبير من طرق كتابة أرقام الهواتف حول العالم، فإن تسوية الأرقام إلى E.164 ليست تافهة كما يبدو....

للأسف، لا تعتبر أي من هذه الطرق مقاومة للرصاص، خاصة وأن الرسائل القصيرة هي وسيلة نقل غير متصلة.اعتمادًا على حمل شبكة GSM، قد يستغرق وصول الحمل على مزود البوابة ومرحلة القمر واتجاه نفخ النافذة من ثانية إلى شهر (نعم، لدي خبرة في هذا الأخير).غالبًا ما يكون متوسط ​​وقت التسليم بالثواني، ولكن يتعين عليك التلاعب بمهلة العملية وقد يتعين عليك تعديلها على أساس جغرافي وشبكة GSM.[ولا، لا تعتمد على تقارير التسليم - فهي غير موثوقة أكثر من تسليم الرسائل النصية القصيرة]

لعِلمِكَ:في الواقع لقد وجدت هذا.

http://www3.symbian.com/faq.nsf/AllByDate/100335073FFD8FEF80256E3200571A49?OpenDocument

ولكن الحقيقة هي أن رقم الهاتف لا يتم تخزينه دائمًا في بطاقة SIM.يختار المشغل أن يفعل ذلك أم لا!

لا يمكنك.بقدر ما أعلم.

تحقق من هذه المناقشة:http://discussion.forum.nokia.com/forum/showthread.php?t=65117

ليس من الممكن عمومًا الحصول على MSISDN من جهاز Symbian (أو BREW، أو أي نظام أساسي آخر).لقد حاولنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top