Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
Mario Danic 2018-08-17 21:57:24 +02:00
parent b7a47b3972
commit 5948aaec0a
5 changed files with 32 additions and 14 deletions

View File

@ -15,8 +15,8 @@ android {
targetSdkVersion 27
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
versionCode 57
versionName "3.0.0beta6"
versionCode 58
versionName "3.0.0beta7"
flavorDimensions "default"
renderscriptTargetApi 19

View File

@ -24,7 +24,7 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.media.AudioManager;
import android.media.AudioAttributes;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Build;
@ -328,7 +328,9 @@ public class CallNotificationController extends BaseController {
if (ringtoneUri != null) {
mediaPlayer = MediaPlayer.create(getApplicationContext(), ringtoneUri);
mediaPlayer.setLooping(true);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_RING);
AudioAttributes audioAttributes = new AudioAttributes.Builder().setContentType(AudioAttributes
.CONTENT_TYPE_SONIFICATION).setUsage(AudioAttributes.USAGE_NOTIFICATION_RINGTONE).build();
mediaPlayer.setAudioAttributes(audioAttributes);
mediaPlayer.start();
}
}
@ -343,14 +345,14 @@ public class CallNotificationController extends BaseController {
VibrationEffect vibrationEffect;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
if (vibrator.hasAmplitudeControl()) {
vibrationEffect = VibrationEffect.createWaveform(vibratePattern, amplitudes, 0);
vibrationEffect = VibrationEffect.createWaveform(vibratePattern, amplitudes, -1);
vibrator.vibrate(vibrationEffect);
} else {
vibrationEffect = VibrationEffect.createWaveform(vibratePattern, 0);
vibrationEffect = VibrationEffect.createWaveform(vibratePattern, -1);
vibrator.vibrate(vibrationEffect);
}
} else {
vibrator.vibrate(vibratePattern, 0);
vibrator.vibrate(vibratePattern, -1);
}
}

View File

@ -205,6 +205,12 @@ public class ContactsController extends BaseController implements SearchView.OnQ
FlipView.resetLayoutAnimationDelay(true, 1000L);
FlipView.stopLayoutAnimation();
currentUser = userUtils.getCurrentUser();
if (currentUser != null) {
ncApi = ApplicationWideApiHolder.getInstance().getNcApiInstanceForAccountId(currentUser.getId(), null);
credentials = ApiUtils.getCredentials(currentUser.getUserId(), currentUser.getToken());
}
if (adapter == null) {
adapter = new FlexibleAdapter<>(contactItems, getActivity(), false);
@ -212,9 +218,6 @@ public class ContactsController extends BaseController implements SearchView.OnQ
currentUser = userUtils.getCurrentUser();
if (currentUser != null) {
ncApi = ApplicationWideApiHolder.getInstance().getNcApiInstanceForAccountId(currentUser.getId(), null);
credentials = ApiUtils.getCredentials(currentUser.getUserId(), currentUser.getToken());
fetchData(true);
}
}

View File

@ -152,17 +152,19 @@ public class ConversationsListController extends BaseController implements Searc
getActionBar().show();
}
currentUser = userUtils.getCurrentUser();
if (currentUser != null) {
ncApi = ApplicationWideApiHolder.getInstance().getNcApiInstanceForAccountId(currentUser.getId(), null);
credentials = ApiUtils.getCredentials(currentUser.getUserId(), currentUser.getToken());
}
if (adapter == null) {
adapter = new FlexibleAdapter<>(callItems, getActivity(), false);
currentUser = userUtils.getCurrentUser();
if (currentUser != null) {
shouldUseLastMessageLayout = currentUser.hasSpreedCapabilityWithName("last-room-activity");
ncApi = ApplicationWideApiHolder.getInstance().getNcApiInstanceForAccountId(currentUser.getId(), null);
credentials = ApiUtils.getCredentials(currentUser.getUserId(), currentUser.getToken());
fetchData(false);
}
}

View File

@ -27,6 +27,7 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.media.AudioAttributes;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.Uri;
@ -328,6 +329,16 @@ public class NotificationWorker extends Worker {
DoNotDisturbUtils.shouldPlaySound()) {
MediaPlayer mediaPlayer = MediaPlayer.create(context, soundUri);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);
AudioAttributes.Builder audioAttributesBuilder = new AudioAttributes.Builder().setContentType
(AudioAttributes.CONTENT_TYPE_SONIFICATION);
if (decryptedPushMessage.getType().equals("chat")) {
audioAttributesBuilder.setUsage(AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_INSTANT);
} else {
audioAttributesBuilder.setUsage(AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_REQUEST);
}
mediaPlayer.setAudioAttributes(audioAttributesBuilder.build());
mediaPlayer.start();
mediaPlayer.setOnCompletionListener(MediaPlayer::release);
}