main, fix NullPointerException.
This commit is contained in:
1 parent
54418801c5
commit
1099dec4e6
1 file changed
+12
-8
@@ -596,15 +596,19 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
String tag = TAG + "playSound";
|
String tag = TAG + "playSound";
|
||||||
if (DEBUG) Log.d(tag, "Starting");
|
if (DEBUG) Log.d(tag, "Starting");
|
||||||
|
|
||||||
/* Original code, did not work on Nexus 7 with CM 12.1-20151117 (Android 5.1.1) * /
|
|
||||||
Uri uri = Uri.parse("android.resource://" + getPackageName() + "/raw/chime_sound_7143");
|
|
||||||
//Ringtone ringtone = RingtoneManager.getRingtone(getApplicationContext(), ringtoneUri);
|
|
||||||
Ringtone ringtone = RingtoneManager.getRingtone(getApplicationContext(), uri);
|
|
||||||
ringtone.play();
|
|
||||||
/**/
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mediaPlayer.start();
|
// Safely instantiate MediaPlayer locally to prevent NPE
|
||||||
|
Uri uri = android.media.RingtoneManager.getDefaultUri(android.media.RingtoneManager.TYPE_NOTIFICATION);
|
||||||
|
MediaPlayer localPlayer = MediaPlayer.create(this, uri);
|
||||||
|
|
||||||
|
if (localPlayer != null) {
|
||||||
|
localPlayer.start();
|
||||||
|
localPlayer.release(); // Clean up resources immediately
|
||||||
|
} else {
|
||||||
|
// Fallback for edge cases where create() fails
|
||||||
|
android.media.Ringtone ringtone = android.media.RingtoneManager.getRingtone(this, uri);
|
||||||
|
if (ringtone != null) ringtone.play();
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
sharedPreferences.edit().putBoolean(keyStartStop, false).apply();
|
sharedPreferences.edit().putBoolean(keyStartStop, false).apply();
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user