2016-02-26 70 views

回答

0

什麼ü可以做的是使用:

startForeground()

注:你可以使用這個標誌,如果殺死你的服務將是破壞性的用戶,例如,如果你的服務是執行後臺音樂播放,所以用戶會注意他們的音樂是否停止播放。

Example 1

Example2

,並停止這種用法:

stopForeground()

注:從前臺狀態刪除此服務,允許它是否被殺死需要更多的內存。

希望這有助於你。

+0

謝謝,我試了一下,但沒有用。 @Strider –

0

activityfragment中創建類似如下的方法,即您希望通知服務的位置。然後在那裏調用這個方法。

private void buildNotification(){ 

    Intent intent = new Intent(getActivity(), NotificationReceiver.class); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(getActivity(), 0, intent, 0); 

    AlarmManager am = (AlarmManager) getActivity().getSystemService(getActivity().ALARM_SERVICE); 
    am.set(AlarmManager.RTC_WAKEUP, myCalendar.getTimeInMillis(), pendingIntent); 
} 

現在創建(在這裏我創建NotificationReceiver.class)延伸BroadcastReceiver如下一類。

public class NotificationReceiver extends BroadcastReceiver{ 

private static final int NOTIFICATION_ID = 1991; 

@Override 
public void onReceive(Context context, Intent intent) { 

    int num = 0; 

    Intent contentIntent = new Intent(context, MainActivity.class); 

    PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, contentIntent, PendingIntent.FLAG_ONE_SHOT); 

    NotificationCompat.Builder builder = new NotificationCompat.Builder(context); 
    builder.setSmallIcon(R.drawable.ic_notifications_black_24dp); 
    builder.setContentTitle("your title."); 
    builder.setContentText("your text."); 
    builder.setContentIntent(pendingIntent); 
    builder.setTicker("ticker text."); 
    builder.setAutoCancel(true); 
    builder.setOnlyAlertOnce(true); 
    builder.setDefaults(Notification.DEFAULT_ALL); 
    builder.setNumber(++num); 

    NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
    mNotificationManager.notify(NOTIFICATION_ID, builder.build()); 
    } 
} 

這將解決您的問題。

更新

我忘了提,你也必須在AndroidManifest.xml添加receiver。你必須把你的class文件receiver

+0

我試試這個,但無法解決我的問題。謝謝@Neel –

0

您的通知

<receiver android:name=".NotificationReceiver"/> 

即需要的東西我已經關閉,就像一個Service活動後依舊擁有。創建一個管理您的通知的小型Service。您的活動可以將意圖發送到服務,或綁定到服務並通過連接直接調用方法,以修改通知的狀態。

我在移動設備上,因此無法輕鬆構建示例...敬請期待。^_^