[android]AddPreferencesFromResource 作为其已被否决的替代




在我的应用程序允许用户启动/停止背景初始屏幕音乐在按照上创建优惠活动:

public class Prefs extends PreferenceActivity{

@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);    
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.prefs);


    }    
}

并在 xml 文件夹内创建 prefs.xml:

  
    
      
    

和初始活动此代码:

 public class Splash extends Activity{  
    MediaPlayer ourSong;
@Override
protected void onCreate(Bundle Drandroid) {
    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    // TODO Auto-generated method stub
    super.onCreate(Drandroid);
         setContentView(R.layout.splash);  

    ourSong = MediaPlayer.create(Splash.this, R.raw.splashsound); 

     SharedPreferences getPrefs = 
               PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    boolean music = getPrefs.getBoolean("checkbox", true);
    if (music == true)      
    ourSong.start();

    Thread timer = new Thread(){
        public void run(){
            try{
                sleep(5000); }
              catch (InterruptedException e){
                e.printStackTrace(); }
              finally{
    Intent openTurkeyTrip = new Intent("com.android.dr.MENU");

        startActivity(openplanet); }}                                   
                                };
         timer.start();   }

@Override
protected void onPause() {
            // TODO Auto-generated method stub
    super.onPause();
    ourSong.release();
    finish();
          } 
       }

我怎样才能解决它与其他类的不否决我的应用程序也将支持旧的和新的设备,如下所示:

  

任何意见将受到赞赏,谢谢你。

解决方法 1:

PreferenceActivity不推荐使用。

addPreferencesFromResource()关于 PreferenceActivity 不推荐使用。但是,如果您在支持 API 级别 10 或更低,你有没有选择,只能要使用它,至少在这些设备上。

非不推荐使用的方法是使用 PreferenceFragmentPreferenceActivity 中所述, PrefereceActivity 文档。如果您的应用程序是唯一支持的 API 级别 11 和较高的只是使用的。如果您的应用程序也支持较旧的设备,则:

  • 使用 addPreferencesFromResource() 所有时间,作为它仍然都有效,直至您删除较旧的版本中,支持或

  • 使用 addPreferencesFromResource() 仅在较旧的设备上 (通过检查 Build.VERSION.SDK_INT ),并依靠新的基于片段的系统上较新的设备

你可能感兴趣的:([android]AddPreferencesFromResource 作为其已被否决的替代)