Select .mp3 file from sdcard in settings window

How can I select mp3 file from sdcard in android settings menu.

here is my preference screen:

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> <PreferenceCategory android:title="@string/app_setting"> <Preference android:title="@string/ChooseRingtone" android:key="sdPref" /> </PreferenceCategory> </PreferenceScreen> 

here is my SettingActivity:

 public class SettingsActivity extends AppCompatPreferenceActivity{ @Override public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) { super.onCreate(savedInstanceState, persistentState); if(savedInstanceState == null){ android.app.Fragment infoFragment = new MyPreferenceFragment(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.add(R.id.fragment_container, infoFragment); ft.commit(); } public static class MyPreferenceFragment extends PreferenceFragment { private AppSettings settings; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.pref); Preference sdPrefs = findPreference("sdPref"); sdPrefs.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { return false; } }); } } 

that I don’t know how to open sdcard and select only .mp3 extension files from the entire SD card. and how to save this mp3 file in my resource / raw directory, if possible

0
source share
1 answer

Try entering the code to select only mp3 files,

  sdPrefs.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { Intent intent_upload = new Intent(); //intent_upload.setType("audio/*"); // For All Audio Files intent_upload.setType("audio/mp3"); // For only MP3 Files intent_upload.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(intent_upload,1); return false; } }); 
0
source

All Articles