Hello, I would like to use this library, but I am experimenting this issue:
java.lang.NullPointerException:` Attempt to invoke virtual method 'java.util.Collection java.util.HashMap.values()' on a null object reference
at com.kevalpatel.ringtonepicker.RingtonePickerDialog.getUriPosition(RingtonePickerDialog.java:332)
at com.kevalpatel.ringtonepicker.RingtonePickerDialog.onCreateDialog(RingtonePickerDialog.java:271)
at android.support.v4.app.DialogFragment.onGetLayoutInflater(DialogFragment.java:310)
at android.support.v4.app.Fragment.performGetLayoutInflater(Fragment.java:1231)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1419)
at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1740)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1809)
at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:799)
at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2580)
at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2367)
at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2322)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2229)
at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:700)
at android.os.Handler.handleCallback(Handler.java:808)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7529)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
Can you help me?
This is my code:
if (ActivityCompat.checkSelfPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) {
com.kevalpatel.ringtonepicker.RingtonePickerDialog.Builder ringtonePickerBuilder = new com.kevalpatel.ringtonepicker.RingtonePickerDialog
.Builder(context, context.getSupportFragmentManager())
//Set title of the dialog.
//If set null, no title will be displayed.
.setTitle("Select ringtone")
//set the currently selected uri, to mark that ringtone as checked by default.
//If no ringtone is currently selected, pass null.
.setCurrentRingtoneUri(defaultSelectedRingtone)
//Set true to allow allow user to select default ringtone set in phone settings.
.displayDefaultRingtone(true)
//Set true to allow user to select silent (i.e. No ringtone.).
.displaySilentRingtone(true)
//set the text to display of the positive (ok) button.
//If not set OK will be the default text.
.setPositiveButtonText("SET RINGTONE")
//set text to display as negative button.
//If set null, negative button will not be displayed.
.setCancelButtonText("CANCEL")
//Set flag true if you want to play the sample of the clicked tone.
.setPlaySampleWhileSelection(true)
//Set the callback listener.
.setListener(new RingtonePickerListener() {
@Override
public void OnRingtoneSelected(@NonNull String ringtoneName, Uri ringtoneUri) {
//Do someting with selected uri...
}
});
//Add the desirable ringtone types.
ringtonePickerBuilder.addRingtoneType(com.kevalpatel.ringtonepicker.RingtonePickerDialog.Builder.TYPE_MUSIC);
ringtonePickerBuilder.addRingtoneType(com.kevalpatel.ringtonepicker.RingtonePickerDialog.Builder.TYPE_NOTIFICATION);
ringtonePickerBuilder.addRingtoneType(com.kevalpatel.ringtonepicker.RingtonePickerDialog.Builder.TYPE_RINGTONE);
ringtonePickerBuilder.addRingtoneType(com.kevalpatel.ringtonepicker.RingtonePickerDialog.Builder.TYPE_ALARM);
ringtonePickerBuilder.show();
}else {
ActivityCompat.requestPermissions(context, new String[]{
Manifest.permission.WRITE_EXTERNAL_STORAGE
},
123);
}
I am using version 1.3
Hello, I would like to use this library, but I am experimenting this issue:
Can you help me?
This is my code:
I am using version 1.3