发布
社区首页 >问答首页 >不能从静态上下文引用通知` `notify()`

不能从静态上下文引用通知` `notify()`
EN

Stack Overflow用户
提问于 2018-07-26 14:50:56
回答 2查看 633关注 0票数 1

我正在使用一个简单的代码通过一个函数在Android中推送通知。此函数如下所示:

代码语言:javascript
代码运行次数:0
复制
public void sendNotification(View view) {

        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this).setContentTitle("My notification").setContentText("Hello World!");

        NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

        NotificationManager.notify().mNotificationManager.notify(001, mBuilder.build());
    }}

这是我在一个网站上选择的示例函数。

一切正常,NotificationCompat.builder不会返回任何错误。但是最后一行的第一个notify()返回以下错误:Non-static method 'notify()' cannot be referenced from a static context

我真的不明白为什么。空白被放置在我的public class MainActivity extends AppCompatActivity {}内的MainActivity.java

编辑:

解决方案是从mNotificationManager.notify(001, mBuilder.build());中删除NotificationManager.notify().

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-26 14:52:42

使用这个

代码语言:javascript
代码运行次数:0
复制
mNotificationManager.notify(001, mBuilder.build());

而不是这个

代码语言:javascript
代码运行次数:0
复制
NotificationManager.notify().mNotificationManager.notify(001, mBuilder.build());
票数 1
EN

Stack Overflow用户

发布于 2018-07-26 14:59:29

请参阅下面的解决方案。

代码语言:javascript
代码运行次数:0
复制
public void sendNotification(View view) {

    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this).setContentTitle("My notification").setContentText("Hello World!");

    NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    mNotificationManager.notify(001, mBuilder.build());
}}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51532639

复制
相关文章

相似问题

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