`
王树雄
  • 浏览: 242959 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

使用J2ME技术获得手机的运营商类型

    博客分类:
  • J2ME
阅读更多

 

作者:陈跃峰

出自:http://blog.csdn.net/mailbomb

 

      在手机软件开发中,通过短信SP进行收费已经很普及了,而对于短信SP来说,一般短信的通道号码(106开通的号码)中,中国移动和中国联通、中国电信的都不一样,也就说如果使用短信SP的话,手机属于的运营商不同,则需要发送不同的内容到不同的通道号码,这样就使手机软件在扣费时必须处理这个问题。

      一般解决这个问题的思路有2种:

1、         出现选择界面,让用户自己选择

这种方式对于程序实现来说,是最为简单的一种,但是在实现功能方面的弊端也是最大的。主要有2个问题:a、每次都弹出选择界面不太友好,b、如果用户选择错误则无法扣费。

所以一般不使用这种方式进行处理。

2、         通过获得短信服务中心号码进行判断

如果手机支持WMA则可以通过获得属性“wireless.messaging.sms.smsc”的值,来获得短信服务中心号码。对于国内的三个运营商来说,中国移动的短信服务中心号码是13800XXX500,其中XXX为号码所属的地区电话区号,中国联通的短信服务中心号码比较乱,但是均以130开头,包括3G的手机,而对于中国电信的手机,咨询客服以后均告知不需要设置短信服务中心号码。

基于以上的内容,则判断手机所属网络的方法代码如下:

      /**

       * 获得手机网络类别

       */

      private int getPhoneNetworkType(){

           //获得短信中心号码

           String smsc = System.getProperty("wireless.messaging.sms.smsc");

           //判断类别

           if(smsc != null){

                 //移动短信中心号码

                 if(smsc.startsWith("138") || smsc.startsWith("+138") || smsc.startsWith("+86138")){

                      return MessageThread.CHINA_MOBILE_TYPE;

                 }else if(smsc.startsWith("+86130") || smsc.startsWith("0086130") || smsc.startsWith("130")|| smsc.startsWith("+130")){

                      return  MessageThread.CHINA_UNICOM_TYPE;

                 }

           }

           //默认为电信手机类型

           return  MessageThread.CHINA_TELECOM_TYPE;

      }

 

      其它通过获得手机号码来判断手机所属的网络,由于获得手机号码不被J2ME技术通用支持,而且需要了解手机号段的信息,而不是很实用。

分享到:
评论

相关推荐

    J2ME联网不同运营商网络方案

    通过理解GCF的工作原理和使用方法,开发者可以构建适应不同运营商网络环境的J2ME应用,实现跨网络的通信需求。然而,实际开发中还需要考虑网络状况、安全策略以及用户隐私等因素,确保应用的稳定性和合规性。

    《J2ME手机游戏开发技术详解》

    《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》...

    J2ME手机游戏开发技术详解源码

    本压缩包文件提供了J2ME手机游戏开发的技术详解源码,旨在帮助开发者深入理解J2ME游戏开发的过程,通过实际的代码示例进行学习和实践。 在J2ME手机游戏开发中,有几个核心知识点: 1. **MIDP (Mobile Information ...

    j2me手机浏览器/j2me手机浏览器

    在2000年代初期,J2ME是许多非智能手机上实现互联网浏览的主要技术,其中“j2me手机浏览器”就是这样一个应用。这个应用允许用户在他们的手机上访问网页,尽管其功能和性能可能与现代智能手机上的高级浏览器相比有限...

    j2me手机游戏开发技术详解

    ### j2me手机游戏开发技术详解 #### J2ME概述 **1.1 J2ME体系结构** **1.1.1 JAVA技术的版本** Java技术根据不同的应用场景分为三个主要版本: - **J2SE(Java 2 Platform, Standard Edition)**:标准版,面向...

    基于J2ME技术的手机游戏开发.doc

    《基于J2ME技术的手机游戏开发》 随着科技的飞速发展,手机已经不再仅仅局限于通话功能,而是成为了一个多功能的智能设备。在这样的背景下,J2ME(Java 2 Micro Edition)作为专为消费嵌入式系统设计的Java版本,...

    手机J2ME程序编写教程

    4. **签名和发布**:为了在某些平台上运行,JAR文件可能需要签名,然后通过运营商或其他分发渠道发布。 ### 七、优化与性能 1. **内存管理**:由于手机资源有限,开发者需要关注内存使用,避免内存泄漏。 2. **...

    j2me编写手机RPG游戏

    在这个标题中,“j2me编写手机RPG游戏”意味着开发者使用J2ME技术来创建了一款角色扮演游戏(Role-Playing Game,简称RPG)。RPG游戏通常包含丰富的剧情、角色发展和互动元素,玩家在游戏中扮演一个或多个角色,通过...

    j2me手机游戏开发技术详解.pdf

    j2me手机游戏开发技术详解.pdf 讲手机游戏开发的书籍.从基本开始讲解.

    J2ME手机游戏开发技术与实践 ppt与源代码 李政仪

    在2000年代中期,J2ME是开发手机游戏的主流技术之一,尤其在诺基亚、摩托罗拉等早期智能手机上广泛使用。本资源提供了“J2ME手机游戏开发技术与实践”的PPT和源代码,由李政仪编著,旨在帮助开发者深入理解J2ME游戏...

    基于j2me的手机游戏开发

    综上所述,基于J2ME的手机游戏开发涉及到多个技术层面,包括环境配置、用户界面、游戏逻辑、资源管理以及测试和分发。尽管现在有更多先进的平台可以选择,但J2ME的历史地位和其背后的编程思想仍然值得学习和借鉴。

    J2ME技术手册

    **J2ME技术手册概述** Java 2 Micro Edition(J2ME)是Java平台的一个子集,主要用于开发和部署在嵌入式设备、移动电话、智能家电等资源有限的环境中运行的应用程序。J2ME提供了丰富的功能,允许开发者创建功能丰富...

    J2ME 手机程序开发

    J2ME在手机程序开发中的应用广泛,因为它允许开发者创建跨平台的应用,可以在多种不同类型的移动设备上运行。 **第二章:高级界面开发** 在J2ME中,高级界面开发涉及到创建用户友好的交互体验。这一章节可能涵盖了...

    J2me飞机射击手机游戏完整代码版

    在移动设备技术早期,Java 2 Micro Edition(J2ME)是开发手机应用程序的主流平台之一,尤其是对于游戏开发而言。本篇文章将深入探讨“J2ME飞机射击手机游戏完整代码版”所涉及的核心知识点,帮助开发者理解和学习...

    获取J2ME平台手机系统属性

    总的来说,获取J2ME平台手机系统属性是移动开发中的基础操作,通过理解和使用`MIDlet`类、`Connector`类,以及相关的JSR扩展API,开发者能够获取到丰富的设备信息,以实现更加智能和定制化的应用。而`SystemProperty...

    J2ME技术手册.part1

    J2ME技术手册.part1

    J2ME技术手册03

    J2ME技术手册J2ME技术手册J2ME技术手册J2ME技术手册J2ME技术手册J2ME技术手册J2ME技术手册J2ME技术手册

    J2ME手机游戏开发技术详解 完整版 part1

    J2ME手机游戏开发技术详解 完整版 分成4部分

Global site tag (gtag.js) - Google Analytics