iteye_13835 2011-09-02 09:56
浏览 410
已采纳

能否重写这个类android.telephony.TelephonyManager

android中的android.telephony.TelephonyManager这个类可以获得手机的串号和手机号等信息。
现在我想重写这个类。我在我的应用中创建了相同路径名的类(android.telephony.TelephonyManager)
然后从android.jar中把这个类反编译出来了,但反编译的结果好像是错误的:
public class TelephonyManager {
TelephonyManager() {
throw new RuntimeException("Stub!");
}
public String getDeviceSoftwareVersion() {
throw new RuntimeException("Stub!");
}
public String getDeviceId() {
throw new RuntimeException("Stub!");
}
public CellLocation getCellLocation() {
throw new RuntimeException("Stub!");
}
public List getNeighboringCellInfo() {
throw new RuntimeException("Stub!");
}
public int getPhoneType() {
throw new RuntimeException("Stub!");
}

.
.
.
}
并且把这个类改成我要的效果后,重新生成apk后好像也没有生效 。结果还是没变。
请问有谁遇到相似的问题没

  • 写回答

1条回答 默认 最新

  • Jack_tianzhenhai 2011-09-02 10:47
    关注

    这个类首先你是可以拿到源码的,不需要反编译。对应的路径如下。另外,从这个类的实现来看是可以进行重写,但是在telephony下是需要对应的读取权限的,而且这些类是在Phone进程中的,是在开机的时候就已经被加载到后台一直运行的,因为这其中有很多东西在开机的时候就需要读取、使用。所以重写应该是存在问题。
    frameworks\base\telephony\java\android\telephony\TelephonyManager.java

    public class TelephonyManager {
    private static final String TAG = "TelephonyManager";

    private Context mContext;
    private ITelephonyRegistry mRegistry;
    
    
    /** @hide */
    public TelephonyManager(Context context) {
        mContext = context;
        mRegistry = ITelephonyRegistry.Stub.asInterface(ServiceManager.getService(
                    "telephony.registry"));
    }
    
    /** @hide */
    private TelephonyManager() {
    }
    
    private static TelephonyManager sInstance = new TelephonyManager();
    
    /** @hide */
    public static TelephonyManager getDefault() {
        return sInstance;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。