0

我正在尝试运行以下内容,该内容来自互联网教程:

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    // Prepare intent which is triggered if the
    // notification is selected

    Intent homeIntent = new Intent(Intent.ACTION_MAIN);
    homeIntent.addCategory(Intent.CATEGORY_HOME);
    //Intent intent = new Intent(this, ReceiveAndGoHome.class);
    PendingIntent pIntent = PendingIntent.getActivity(this, 0, homeIntent, 0);


    // Build notification
    // Actions are just fake
    Notification noti = new NotificationCompat.Builder(this)
    .setContentTitle("Fraz Go Home!!!")
            .setContentTitle("Fraz Go Home!!!")
            .setContentText("Fraz Go Home!!!")
            .setContentIntent(pIntent)
            .addAction(R.drawable.ic_launcher, "Call", pIntent)
            .addAction(R.drawable.ic_launcher, "More", pIntent)
            .addAction(R.drawable.ic_launcher, "And more", pIntent).build();


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

    // Hide the notification after its selected
    noti.flags |= Notification.FLAG_AUTO_CANCEL;


    notificationManager.notify(25, noti); 

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}
}

当我在 froyo AVD 中运行上述内容时,我根本没有看到通知出现 - 我是否遗漏了一些明显的东西?

4

1 回答 1

3

你忘了设置小图标。添加这个:

.setSmallIcon (R.drawable.ic_launcher)

在你NotificationCompat.Builder的方法链中的某个地方。

当然,启动器可绘制是我在那里使用的,因为它就在手边,您需要为正确的 UI 制作实际的通知图标。这只是为了演示您需要的方法调用。

Android 文档概述了显示通知所需的内容:

所需的通知内容

Notification 对象必须包含以下内容:

• 一个小图标,由 setSmallIcon() 设置

• 标题,由 setContentTitle() 设置

• 详细文本,由 setContentText() 设置

于 2013-02-13T22:22:04.540 回答