相关疑难解决方法(0)

如何实现Notification的弃用方法

我有一个小问题,但不明白如何摆脱这个.

我创建了一个用于提供通知的类,但这些行被标记为已弃用:

...
Notification notification = new Notification(icon, text, time); // deprecated in API level 11
...
notification.setLatestEventInfo(this, title, text, contentIntent); // deprecated in API level 11
...
Run Code Online (Sandbox Code Playgroud)

替代方法是:

...
Notification noti = new Notification.Builder(mContext)
         .setContentTitle("New mail from " + sender.toString())
         .setContentText(subject)
         .setSmallIcon(R.drawable.new_mail)
         .setLargeIcon(aBitmap)
         .build(); // available from API level 11 and onwards
...
Run Code Online (Sandbox Code Playgroud)

我可以编写类似的代码:

if(API_level < 11)
{
...
    Notification notification = new Notification(icon, text, time); // deprecated in API level 11
    ...
    notification.setLatestEventInfo(this, title, text, contentIntent); // deprecated …
Run Code Online (Sandbox Code Playgroud)

android android-notifications

31
推荐指数
2
解决办法
5万
查看次数

如何在android系统状态栏中显示文本

我正在尝试为Android Nougat开发一个应用程序,我想在状态栏中显示一些从android服务例程生成的信息/文本.所以我的问题是,我不知道如何在状态栏中显示文本.

我添加了一个示例图像,以显示我的意思(红色圆圈).我知道这是可能的,因为我在Play商店的电池监视器应用程序中看到了它.

样品

我已经尝试过NotificationCombat.Builder,但我认为这不是正确的方法.也许是叠加层,但搜索后我找不到东西.

有人可以告诉我该怎么做或者给我一个提示吗?

编辑:这是我的NotificationCompat.Builder的测试代码

MainActivity.java

import android.app.Notification;
import android.app.NotificationManager;
import android.os.Bundle;
import android.support.v4.app.NotificationCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;

public class MainActivity extends AppCompatActivity
{
    private final int NOTIFICATION_ID = 10;

    @Override
    protected void onCreate (Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);
        mBuilder.setContentTitle("Value");
        mBuilder.setContentText("123");
        mBuilder.setSmallIcon(R.mipmap.ic_launcher);
        mBuilder.setOngoing(true);
        mBuilder.setAutoCancel(false);

        //Intent resultIntent = new Intent(this, MainActivity.class);
        //PendingIntent resultPendingIntent = PendingIntent.getActivity(this, 0, resultIntent, PendingIntent.FLAG_UPDATE_CURRENT);
        //mBuilder.setContentIntent(resultPendingIntent);

        Notification notification = mBuilder.build();
        notification.flags |= Notification.FLAG_NO_CLEAR | Notification.FLAG_ONGOING_EVENT;

        NotificationManager …
Run Code Online (Sandbox Code Playgroud)

notifications android overlay android-statusbar

9
推荐指数
1
解决办法
4695
查看次数