Уведомление перезапустить мою активность и кнопку паузы в уведомлении

Мое уведомление перезапускается, когда я нажимаю на него в строке состояния, когда я запускаю свое приложение, оно передает звук с сервера и показывает уведомление, пока я не удалю его из строки состояния, поэтому моя проблема заключается в том, что когда я нажимаю на уведомление моего приложения, оно перезапускает активность и остановить потоковую музыку.. поэтому, пожалуйста, предложите мне решение, чтобы остановить повторный перезапуск приложения из уведомления, и я хочу показать уведомление, которое остается на панели уведомлений до выхода из приложения. Также я хочу показать кнопку паузы и воспроизведения в уведомлении, поэтому, пожалуйста помогите мне это тоже

public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState); 

        setContentView(R.layout.activity_main);

        nm=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);

        Intent intent = new Intent(this,MainActivity.class);
        PendingIntent pi= PendingIntent.getActivity(this, 0, in`enter code here`tent, 0);
         String body = " Welcome to streaming ";
         String title = "radio";
         Notification n = new Notification(R.drawable.png, body, System.currentTimeMillis());
         n.setLatestEventInfo(this , title, body, pi);
         n.defaults=Notification.DEFAULT_ALL;
         nm.notify(uniid,n);`

person Community    schedule 29.08.2012    source источник


Ответы (1)


Добавьте это в свой файл манифеста внутри действия, которое вы запускаете через уведомление, как будто оно уже запущено, оно не будет перезапущено снова.

android:launchMode="singleTop"
android:configChanges="orientation|keyboardHidden" // fixes orientation

Не позволяйте уничтожать ваше приложение при обратном нажатии:

    @Override
public void onBackPressed()
{
    moveTaskToBack(true);
    //super.onBackPressed();   // comment this line else your app will be destroyed

}
person Daud Arfin    schedule 29.08.2012
comment
Нет, это не работает для меня. Я тоже пробовал singletop singleinstance некоторое время, он работает хорошо, но большую часть времени он перезапускает активность. Любое предложение - person ; 29.08.2012
comment
ориентацию вы исправили?? Активность перезапускается при изменении ориентации. - person Daud Arfin; 29.08.2012
comment
Я использовал 2 порта макета и земли, и я использовал android: configChanges = ориентация | screenSize, чтобы избежать новой активности при изменении ориентации. - person ; 29.08.2012
comment
и вы не сохраняете данные об изменении ориентации, я изменил свой ответ, чтобы исправить ориентацию, попробуйте то же самое, а затем дайте мне знать. - person Daud Arfin; 29.08.2012
comment
он отлично работает, когда вы нажимаете кнопку «Домой» и выполняете другую задачу, а когда вы открываете из строки состояния, он не создает новую активность. для этого - person ; 29.08.2012
comment
Я попробовал этот android:launchMode=singleTop, и он хорошо работает, когда вы выходите из своего приложения, нажимая кнопку «Домой». - person ; 29.08.2012
comment
хорошо, снова я обновляю свой ответ, который вам нужно обработать, onBackPress, чтобы избежать перезапуска вашего приложения. - person Daud Arfin; 29.08.2012
comment
Спасибо, я внедрил onbackpress, и он работает нормально .. не могли бы вы дать мне решение для отображения кнопки паузы в строке состояния - person ; 29.08.2012
comment
перейдите по этой ссылке и просмотрите пользовательское уведомление с помощью удаленного просмотра: developer.android. com/guide/topics/ui/notifiers/ - person Daud Arfin; 29.08.2012
comment
Я не нашел хорошей документации, которая хорошо объясняет мне удаленный просмотр ... пожалуйста, поделитесь любым хорошим учебником для настраиваемых уведомлений с удаленным просмотром. - person ; 31.08.2012