15

MSISDNについていくつか質問があります。理解します:

  1. MSISDNは基本的に電話番号です
  2. IMSIではありません

私がさらに知る必要があるのは:

  1. MSISDN番号はSIMカードに焼き付けられていますか?はいの場合、すべてのプロバイダーはSIMカードにMSISDN情報があることを確認していますか?いいえの場合、明確にするために、どのプログラミングコードもMSISDN番号をフェッチできませんか?

  2. 以下のコードとしてMSISDNをフェッチすることを提案する人もいます。ただし、デバイスに「私の電話番号」が設定されていない場合、両方のコードはnullを返します。逆に、設定されている場合は「私の電話番号」が返されます。したがって、問題は次のとおりです。「私の電話番号」はMSISDNと同じですか。

    TelephonyManager.getLine1Number(); ->Android用

    Phone.getDevicePhoneNumber(true); ->ブラックベリーの場合

  3. 上記のコードのように、返される文字列データはデバイス自体またはSIMカードからフェッチされますか?

4

3 に答える 3

26

私はあなたのためにその問題についていくらかの洞察を持っています。

  1. MSISDNはSIMカードに保存できますが、ほとんどのネットワークプロバイダー(南アフリカのすべてのプロバイダー)はMSISDNをSIMカードに保存しません。これにはいくつかの理由がありますが、最も注目すべきものは次のとおりです。
    • 動的MSISDN割り当て:プリペイドSIMは、最初に使用されたときにMSISDNが割り当てられることがあります。これは、ネットワークに利用可能なMSISDNのプールがあり、新しいプリペイドSIMがオンラインになるたびにそれらを割り当てることを意味します。これは、SIMが出荷されるとき、まだMSISDNがないことを意味します。つまり、SIMを出荷する前にMSISDNを保存することはできません。一部のネットワークは、特に使用可能な数が少なくなっている場合に、非アクティブな期間の後にMSISDN割り当てを「期限切れ」にし、これらの数を使用可能なプールに戻します。
    • 携帯電話番号ポータビリティ:一部の国では、モバイル加入者はMSISDNを維持しながら、ネットワークを変更できます。これは、MSISDNが1つのネットワーク用のSIMから別のネットワーク用のSIMに移動されることを意味します。

そのため、ユーザーはSIMのMSISDNエントリが空白になることがよくあります。ユーザーは引き続きMSISDNをSIM自体に保存できますが、これにより任意の番号を保存することもでき、設定されていることや、加入者の実際の電話番号であることが保証されるわけではありません。

   2. SIMカードに保存されている番号を取得するために、あなたが尋ねた電話。番号が設定されていない場合は取得できません。また、ユーザーが間違った番号を設定している場合は、詳細が正しくありません。

   3.正解です。この文字列は、SIM自体からフェッチされます。

MSISDNを検出するための唯一の半信頼性の高い方法は、モバイルオペレーターがヘッダーにMSISDNを含める場合にWAP / WEBを使用することです(Webビューのトリックを実行して、どのヘッダーが通過するかを確認できます)。ただし、これらはネットワークの場合にのみ表示されます。それをサポートし、ユーザーがモバイルデータを使用している場合-つまり、ユーザーがWiFiを使用している場合は機能しません。

私が考えることができる他のメカニズム(私が考えることができる唯一の保証されたメカニズム)は、常にオペレーターから正しいMSISDNを取得するため、USSDセッションを介したものですが、プログラムでUSSDセッションを開いて読み取る方法が見つかりませんでした応答(少なくともAndroidでは)。私はUSSDサービスを持っていますが、その出力はMSISDNだけですが、残念ながら、これはまだ使用可能であることが証明されていません。

于 2012-06-21T09:45:24.887 に答える
1

あなたが質問を投稿してから過去1時間に誰も返信しなかったので、私が知っていることは次のとおりです(私はこの分野の専門家ではありませんが、経験があります)。

  1. MSISDNは電話番号です。人々があなたに電話をかけることができる数。
  2. SIMカードを変更(アップグレードまたは他のオペレーターに変更)して電話番号= MSISDNを維持できるため、SIMカードに「焼き付ける」ことはできません。オペレーターには、SIMカードIDからMSISDNに変換し、通話/データ転送が行われたときに戻るマッピングテーブルがあると思います。MSISDNがカードに保存されている可能性があります。
于 2012-05-22T05:44:19.997 に答える
0

MSISDNにはBIGINTタイプがあることを考慮に入れる必要があります。したがって、それを出力すると、このように事前に型変換が行われます。

于 2016-10-12T14:42:09.590 に答える