【问题标题】:Properly Using Android Listeners正确使用 Android 监听器
【发布时间】:2013-05-09 02:59:34
【问题描述】:

我是 Android 编程新手,虽然我已成功记录了 Telephony API 中状态更改的侦听器输出,但我无法访问该值并将其写入数据库。我可以从内部类中写入日志,但无法保存到 DB,因为我无法从内部类中访问帮助程序。我也无法调用 getSignalStrengths() 方法。这些都是学习练习,任何建议都将不胜感激。

public class MyPhoneStateListener extends PhoneStateListener {

String sSstr = "initial value";

public String getSignalStrengths(){
 return sSstr;
}

public void onSignalStrengthsChanged(SignalStrength signalStrength) {
 super.onSignalStrengthsChanged(signalStrength);
 sSstr = signalStrength.toString();
 Log.v("Test", sSstr);
 }
}

【问题讨论】:

  • MyPhoneStateListener 是内部类吗?
  • 是的,应该已经澄清了。
  • 什么是外部类名,它是一个活动吗?
  • MainActivity 扩展了 Activity,是的。

标签: android sqliteopenhelper telephonymanager sqlite


【解决方案1】:

您可以通过多种方式访问​​ MyPhoneStateListener 中的数据库

  1. 使用 Context 参数创建一个 MyPhoneStateListener 构造函数,并使用此上下文实例化您的数据库类。
  2. 只需使用

    实例化您的数据库类
    MyDatabase db = new MyDatabase(MainActivity.this)
    

【讨论】:

  • 非常感谢。正是我需要理解的。
猜你喜欢
  • 1970-01-01
  • 2018-08-25
  • 2020-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多