Android状态栏通知未加载

时间:2012-04-22 12:35:10

标签: java android

我希望这个问题只是与模拟器有关,基本上我有一个设置定时器的服务,一旦timertask运行,下面的代码应该执行:

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

        int icon = R.drawable.androidapplogo;
        CharSequence tickerText = "Ticker Text";
        long when = System.currentTimeMillis();

        Notification notification = new Notification(icon, tickerText, when);
        Context context = getApplicationContext();
        CharSequence contentTitle = "My Notification";
        CharSequence contentText = "Hello World!";          

        //Do i need this?
        Intent notificationIntent = new Intent();
        PendingIntent contentIntent = PendingIntent.getActivity(ctx, 0, notificationIntent, 0);         

        notification.setLatestEventInfo(context, contentTitle, contentText, null);
        mNotificationManager.notify(1, notification);

我遇到的问题是,当通知被调用时,它会出现在状态栏中,但是当我点击图标时,它只有一个蓝色圆圈。我不拥有一部Android手机所以我猜这意味着它试图加载一些东西。

顺便说一句,我几乎从这里解除了代码:http://developer.android.com/guide/topics/ui/notifiers/notifications.html

所以我的问题有两个:   - 发生了什么,是否未能加载某些内容?   - 关于如何修复它的任何想法,或者是否值得寻找新的通知形式

编辑:我很抱歉,发现问题是你需要拖下通知窗口 - 我很少使用android x)

1 个答案:

答案 0 :(得分:0)

package com.androidtest.notification;

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class SimpleNotification extends Activity {

    private NotificationManager mNotificationManager;
    private int SIMPLE_NOTFICATION_ID;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
        final Notification notifyDetails = new Notification(R.drawable.android,
                "New Alert, Click Me!", System.currentTimeMillis());

        Button start = (Button) findViewById(R.id.notifyButton);
        Button cancel = (Button) findViewById(R.id.cancelButton);

        start.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {

                Context context = getApplicationContext();
                CharSequence contentTitle = "TITLES....";
                CharSequence contentText = "TEXT FOR DETAIL";
                Intent notifyIntent = new Intent(
                        android.content.Intent.ACTION_VIEW, Uri
                                .parse("CONTACT NO / OR ANY OTHER ACTION WHICH YOU WANT ON NOTIfic. ICON TAP"));
                PendingIntent intent = PendingIntent.getActivity(
                        SimpleNotification.this, 0, notifyIntent,
                        android.content.Intent.FLAG_ACTIVITY_NEW_TASK);

                notifyDetails.setLatestEventInfo(context, contentTitle,
                        contentText, intent);
                mNotificationManager.notify(SIMPLE_NOTFICATION_ID,
                        notifyDetails);
            }
        });

        cancel.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {

                mNotificationManager.cancel(SIMPLE_NOTFICATION_ID);
            }
        });
    }
}


XML测试文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <Button
        android:id="@+id/notifyButton"
        android:text="@string/notify"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
    ></Button>
    <Button
        android:id="@+id/cancelButton"
        android:text="@string/cancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"      
    ></Button>
</LinearLayout>

等待意图调用一些意图通知tap..gve ans frm whtevr我理解你的任务 如果有任何问题,请留下评论...