首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >展示BatteryService.java的祝酒词

展示BatteryService.java的祝酒词
EN

Stack Overflow用户
提问于 2014-02-26 01:59:18
回答 1查看 365关注 0票数 0

我正在为我自己的设备开发我自己的android系统,而不是使用一些商业手机。这意味着我控制了平台/android的构建。也就是说,我不是在开发android上的应用程序,而是在android内部工作。

我正在尝试显示祝酒词(或以其他方式通知用户),说明shutdownIfOverTemp()关闭的原因(例如,播放“电池过热,关闭”)。原因是我正在运行的电池有额外的关机条件,我希望用户知道哪个电池在运行(而不必查看一些日志)。

虽然谷歌调用文件AndroidService.java,但它不是服务,因为它没有扩展服务,它扩展了Binder (完整的源代码:r1.2/com/android/server/BatteryService.java/)

我不知道如何将上下文传递给Toast:

代码语言:javascript
复制
Toast toast = Toast.makeText( getApplicationContext(), "Battery overheating!", Toast.LENGTH_LONG);

不工作,我在getApplicationContext()上得到一个未定义的符号:

代码语言:javascript
复制
target Java: services (out/target/common/obj/JAVA_LIBRARIES/services_intermediates/classes)
frameworks/base/services/java/com/android/server/BatteryService.java:244: cannot find symbol
symbol  : method getApplicationContext()
location: class com.android.server.BatteryService
        Toast toast = Toast.makeText(getApplicationContext(), "Battery overheating!", Toast.LENGTH_SHORT);

添加这一点也没有帮助:

代码语言:javascript
复制
import android.widget.Toast;
import android.content.Context;
import android.content.ContextWrapper;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-26 06:42:46

该类扩展了绑定器。

代码语言:javascript
复制
class BatteryService extends Binder {

但是调用方法BatteryService时,已经将上下文作为其参数之一:

代码语言:javascript
复制
public  BatteryService(Context context, LightsService lights) {
    mContext = context;

因此,在调用土司时使用mContest而不是getApplicationContest

试试看,汇报一下。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22030196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档