Уровень API 11 мин. 9, что я могу сделать, чтобы это исправить

В одном из моих классов много ошибок, потому что уровень API 11 (минимум 9) лучше исправить или изменить мин. Если да, то как мне это исправить или как я могу изменить мин. Я очень новичок в этом, а также из того, что является хорошим источником для изучения с помощью нового кода

package com.ramos.science;
import android.os.Bundle;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;

public class Prefs extends PreferenceActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getFragmentManager().beginTransaction().replace(android.R.id.content, new       MyPreferenceFragment()).commit();
}
public static class MyPreferenceFragment extends PreferenceFragment
{

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(com.ramos.science.R.xml.prefs);
}

}
}

4 ответа

Изменить файл AndroidManifest.xml

добавлять

 <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="17"/>

Это действительно зависит от того, что вы хотите и на кого вы нацеливаетесь. поскольку Fragment был введен в API 11, если вы хотите использовать их, то вы должны сделать minimum >= 11, Если вы посмотрите на DashBoard Docs, то увидите, что большинство устройств, которые загружают приложения из Play Store, - это Gingerbread (API 9). Если вы хотите охватить как можно больше людей, вы можете не использовать FragmentЕсли вы хотите программировать на будущее, я бы предложил использовать минимум 11.

Это действительно зависит от того, на кого вы ориентируетесь. Но ICS приобрела большой успех за последние 6 месяцев или около того. Я бы порекомендовал программировать для этих новых устройств, потому что их срез будет только увеличиваться. Если, конечно, вы не знаете, что у многих ваших пользователей будут старые устройства

Поддержка разных версий

Внутри класса вы можете использовать аннотации Android следующим образом:

@TargetApi(11)
public void functionName() {
   ...
}

В дополнение к тому, что объяснил codeMagic. Это дополнительные ресурсы для того, что вам нужно: на какой уровень API я должен ориентироваться.


Кроме того, у меня возникают трудности, когда я впервые запускаю Android, вот несколько действительно хороших книг для Android для начинающих:

  1. Pro Android 3 (разработчик Android будет хранить это на своей полке)
  2. Head First Android Development (он ведет вас примером)
  3. Изучение Android (Отличная книга, чтобы овладеть своими основами)

Чтобы освоить лучшие практики андроида, учитесь по его коду: https://github.com/yuriykulikov/AlarmClock

В конце концов, я надеялся, что это поможет:) Удачи.

Другие вопросы по тегам