Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我的应用程序无法识别我设置的通知和警报?_Android_Android Intent_Notifications_Sharedpreferences_Alarmmanager - Fatal编程技术网

Android 我的应用程序无法识别我设置的通知和警报?

Android 我的应用程序无法识别我设置的通知和警报?,android,android-intent,notifications,sharedpreferences,alarmmanager,Android,Android Intent,Notifications,Sharedpreferences,Alarmmanager,我正在尝试将我的应用程序设置为每天在同一时间向用户发送通知。我设置了运行应用程序前后的时间,以便在模拟器上运行应用程序时显示。但它显示有一个报警集,但它不显示我设置的通知? 我创建了一个Alarm.java类来保存Alarm manager,然后在onCreate方法的Main.java类中添加了通知 这是我的Alarm.java类 import android.app.Activity; import android.app.AlarmManager; import android.app.P

我正在尝试将我的应用程序设置为每天在同一时间向用户发送通知。我设置了运行应用程序前后的时间,以便在模拟器上运行应用程序时显示。但它显示有一个报警集,但它不显示我设置的通知? 我创建了一个Alarm.java类来保存Alarm manager,然后在onCreate方法的Main.java类中添加了通知

这是我的Alarm.java类

import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;

import java.util.Calendar;


public class Alarm extends Activity {
Intent myIntent = new Intent(Alarm.this , Main.class);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
PendingIntent pendingIntent = PendingIntent.getService(Alarm.this, 0, myIntent, 0);

Calendar today = Calendar.getInstance();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    today.set(Calendar.HOUR_OF_DAY, 12);
    today.set(Calendar.MINUTE, 00);
    today.set(Calendar.SECOND, 00);

    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, today.getTimeInMillis(), 24 * 60 * 60 * 1000, pendingIntent);  //set repeating every 24 hours

    }



}
nm=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
    notify=new Notification(R.drawable.feet,"Almost here!",today.getTimeInMillis());
    CharSequence from="Here!";
    CharSequence message=arriving.getText().toString();
    Intent intent=new Intent(Main.this,Main.class);
    PendingIntent pendingIntent=PendingIntent.getActivity(Main.this,0,intent,0);
    Notification.Builder builder=new Notification.Builder(Main.this);
    builder.setAutoCancel(false);
    builder.setContentTitle(from);
    builder.setContentTitle(message);
    builder.setSmallIcon(R.drawable.fee);
    builder.setContentIntent(pendingIntent);
    builder.build();

    notify=builder.getNotification();
    nm.notify(0,notify);
    finish();
这是来自MainActivity.java类的通知

import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;

import java.util.Calendar;


public class Alarm extends Activity {
Intent myIntent = new Intent(Alarm.this , Main.class);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
PendingIntent pendingIntent = PendingIntent.getService(Alarm.this, 0, myIntent, 0);

Calendar today = Calendar.getInstance();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    today.set(Calendar.HOUR_OF_DAY, 12);
    today.set(Calendar.MINUTE, 00);
    today.set(Calendar.SECOND, 00);

    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, today.getTimeInMillis(), 24 * 60 * 60 * 1000, pendingIntent);  //set repeating every 24 hours

    }



}
nm=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
    notify=new Notification(R.drawable.feet,"Almost here!",today.getTimeInMillis());
    CharSequence from="Here!";
    CharSequence message=arriving.getText().toString();
    Intent intent=new Intent(Main.this,Main.class);
    PendingIntent pendingIntent=PendingIntent.getActivity(Main.this,0,intent,0);
    Notification.Builder builder=new Notification.Builder(Main.this);
    builder.setAutoCancel(false);
    builder.setContentTitle(from);
    builder.setContentTitle(message);
    builder.setSmallIcon(R.drawable.fee);
    builder.setContentIntent(pendingIntent);
    builder.build();

    notify=builder.getNotification();
    nm.notify(0,notify);
    finish();
另外,我放置了intent Main.this和Main.class,因为我想调用Main类,在单击通知时保存了用户输入,但当我单击通知时,它打开了Main类,但没有用户以前输入的内容


感谢您的帮助

在通知代码中,您已经连续设置了ContentTitleString。Android要求你有图标、标题和文本。我想你自动完成了?尝试用setContentTextString替换一个。希望这能解决它。

它解决了我的一些问题!谢谢对于文本,它没有显示。我想这是因为它是一种getText方法,我不确定,但谢谢你的帮助!好好看看Android的通知网站。