Bildirimleri doğru şekilde oluşturmak ve göndermek için bu sorunu yaşıyorum. https://material.google.com/style/icons.html ve https://material.google.com/patterns/notifications.html numaralı yeni Lollipop 5.0 update
bildirimi tasarım belirtimini okudum ve düzgün görüntülenebilmesi için Simgelerin white
olması gerektiğini farkettim. Bu iyi ve ben bunu tamamen anlıyorum, ancak bildirimimin açık bir şekilde beyaz olamayacak bir resim göstermesini istiyorum. Ancak, gerçekten kafamı karıştıran şey, bildirimi telefonuma koymaya çalıştığımda, her şeyin yolunda gitmesi. o, beyaz bir kare gibi şuna benzer,Büyük Simge Bildirimi olarak Facebook resmi farklı telefonlarda beyaz olarak görünüyor mu?
Ancak arkadaşımın telefonda: Bu şuna benzer ikimiz de aynı çünkü
Tuhaf Android sürümü, sürüm 6.0.1.
private class NotificationPicture extends AsyncTask<String, Void, Bitmap> {
Context context;
String userId;
String postId;
String name;
String notificationBody;
String from;
public NotificationPicture(Context context) {
super();
this.context = context;
}
@Override
protected Bitmap doInBackground(String... params) {
userId = params[0];
postId = params[1];
name = params[2];
notificationBody = params[3];
from = params[4];
try {
URL url = new URL("https://graph.facebook.com/" + userId + "/picture?type=large");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream in = connection.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(in);
Bitmap output;
Rect srcRect;
if (bitmap.getWidth() > bitmap.getHeight()) {
output = Bitmap.createBitmap(bitmap.getHeight(), bitmap.getHeight(), Bitmap.Config.ARGB_8888);
srcRect = new Rect((bitmap.getWidth()-bitmap.getHeight())/2, 0, bitmap.getWidth()+(bitmap.getWidth()-bitmap.getHeight())/2, bitmap.getHeight());
} else {
output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getWidth(), Bitmap.Config.ARGB_8888);
srcRect = new Rect(0, (bitmap.getHeight()-bitmap.getWidth())/2, bitmap.getWidth(), bitmap.getHeight()+(bitmap.getHeight()-bitmap.getWidth())/2);
}
Canvas canvas = new Canvas(output);
final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
float r;
if (bitmap.getWidth() > bitmap.getHeight()) {
r = bitmap.getHeight()/2;
} else {
r = bitmap.getWidth()/2;
}
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawCircle(r, r, r, paint);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
canvas.drawBitmap(bitmap, srcRect, rect, paint);
return output;
} catch (IOException e) {
FirebaseCrash.report(e);
return null;
}
}
@Override
protected void onPostExecute(Bitmap result) {
super.onPostExecute(result);
try {
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context)
.setContentTitle(getString(R.string.app_name))
.setContentText(notificationBody)
.setTicker(from + " has responded!")
.setAutoCancel(true)
.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
.setStyle(new NotificationCompat.BigTextStyle().bigText(notificationBody))
.setSmallIcon(R.drawable.ic_tabs_notification_2)
.setLargeIcon(result);
Intent resultIntent = new Intent(context, CommentsActivity.class);
setupPostDetails(notificationBuilder, resultIntent, postId, userId, name, context);
} catch (Exception e) {
e.printStackTrace();
}
}
}
build.gradle yapılandırmaları:
compileSdkVersion 23
buildToolsVersion "23.0.1"
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
defaultConfig {
applicationId 'com.schan.tabs'
multiDexEnabled true
minSdkVersion 19
targetSdkVersion 23
versionCode 16
versionName "1.16"
signingConfig signingConfigs.Tabs
}
herkes bu neden oluyor herhangi bir fikir varsa, bazı fikir çok takdir İşte bildirim göndermek için kullanılan koddur. Ben bir Samsung SM-G900V (Samsung S5) var ve bu yardımcı olursa arkadaşım bir artı bir telefon var.
https://medium.com/exploring-android/android-n-introducing-upgraded-notifications-d4dd98a7ca92#.3xrmucoq2 –