0

setStyle или bigText функция не работает. На самом деле, я хочу создать уведомление о большой картине, например, flipkart amazon или других торговых сайтах. но он не работает, поэтому я просто попытался проверить работу setStyle с простым кодом, но он также не работает.Функция уведомлений AndroidStyle или bigText не работает

ПРИМЕЧАНИЕ: Я не делал никаких конфигураций в файлах xml (внутри res) .. пожалуйста, дайте мне знать, если есть какие-либо требования для дополнительной настройки или требований. я только что создал MainActivity.java и записал ниже код для уведомления.

MainActivity.java

import android.app.NotificationManager; 
import android.app.PendingIntent; 
import android.content.Context; 
import android.content.Intent; 
import android.media.RingtoneManager; 
import android.net.Uri; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.app.NotificationCompat; 
import android.view.View; 
import android.widget.Button; 

import com.google.android.gms.appindexing.Action; 
import com.google.android.gms.appindexing.AppIndex; 
import com.google.android.gms.appindexing.Thing; 
import com.google.android.gms.common.api.GoogleApiClient; 

public class MainActivity extends AppCompatActivity { 
    Button b1; 
    /** 
    * ATTENTION: This was auto-generated to implement the App Indexing API. 
    * See https://g.co/AppIndexing/AndroidStudio for more information. 
    */ 
    private GoogleApiClient client; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     b1 = (Button) findViewById(R.id.button); 
     b1.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       notificationinfo(); 
      } 
     }); 
     // ATTENTION: This was auto-generated to implement the App Indexing API. 
     // See https://g.co/AppIndexing/AndroidStudio for more information. 
     client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build(); 

    } 
    public void notificationinfo() 
    { 
     Intent intent = new Intent(this,MainActivity.class); 
     intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
     PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT); 

     Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); 
     NotificationCompat.Builder notificationBuilder = (NotificationCompat.Builder) new NotificationCompat.Builder(this) 
       .setSmallIcon(R.mipmap.ic_launcher) 
       .setContentTitle("test") 
       .setStyle(new NotificationCompat.BigTextStyle().bigText("body")) 
       .setAutoCancel(true) 
       .setSound(defaultSoundUri) 
       .setContentIntent(pendingIntent); 
     NotificationManager notificationManager = 
       (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
     notificationManager.notify(0, notificationBuilder.build()); 
    } 

    /** 
    * ATTENTION: This was auto-generated to implement the App Indexing API. 
    * See https://g.co/AppIndexing/AndroidStudio for more information. 
    */ 
    public Action getIndexApiAction() { 
     Thing object = new Thing.Builder() 
       .setName("Main Page") // TODO: Define a title for the content shown. 
       // TODO: Make sure this auto-generated URL is correct. 
       .setUrl(Uri.parse("http://[ENTER-YOUR-URL-HERE]")) 
       .build(); 
     return new Action.Builder(Action.TYPE_VIEW) 
       .setObject(object) 
       .setActionStatus(Action.STATUS_TYPE_COMPLETED) 
       .build(); 
    } 

    @Override 
    public void onStart() { 
     super.onStart(); 

     // ATTENTION: This was auto-generated to implement the App Indexing API. 
     // See https://g.co/AppIndexing/AndroidStudio for more information. 
     client.connect(); 
     AppIndex.AppIndexApi.start(client, getIndexApiAction()); 
    } 

    @Override 
    public void onStop() { 
     super.onStop(); 

     // ATTENTION: This was auto-generated to implement the App Indexing API. 
     // See https://g.co/AppIndexing/AndroidStudio for more information. 
     AppIndex.AppIndexApi.end(client, getIndexApiAction()); 
     client.disconnect(); 
    } 
} 
+0

Не работает как в вашем уведомлении, не размещен или что-то еще? – ianhanniballake

+0

он отправляется .. но только заголовок появляется bigText содержит не появляются. То же самое происходит с функцией bigPictute. –

+0

Вы действительно расширили уведомление? Только самое верхнее уведомление автоматически разворачивается - вам нужно сделать два пальца на любом другом уведомлении, чтобы их расширить. – ianhanniballake

ответ

0

Я не уверен, что я вовремя. Но я знаю, что если вы не добавите простой текст в свой нотификатор (setContentText (текст)), вы не увидите ничего, кроме вашего названия. Я понимаю, чего вы хотите. Но вам нужно перетащить свое уведомление. Но я не уверен, что эта функция будет работать во всех версиях Android.

И последний трюк, который может быть очень полезен для вас! Вы можете добавить приоритет в свой notificationBuilder. Просто сделайте setPriority (Уведомление.PRIORITY_MAX). Помогает мне. Таким образом, ваше сообщение будет постоянно расширяться, и будет показан большой текст. Надеюсь, это поможет вам.

 Смежные вопросы

  • Нет связанных вопросов^_^