API等级11分钟是9,我该怎么做才能解决这个问题

时间:2013-05-08 01:06:34

标签: android android-manifest build-target

我的一个类有很多错误,因为API级别11(最小值为9)更好地修复它或更改min。如果是这样,我该如何解决它或如何更改min我对此非常新,也是从新代码中学习的好资源

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 个答案:

答案 0 :(得分:3)

修改AndroidManifest.xml文件

添加

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

答案 1 :(得分:2)

这实际上取决于你想要什么以及你的目标对象。由于Fragment中引入了API 11,如果您想使用它们,那么您应该创建minimum >= 11。如果您查看 DashBoard Docs ,您会发现大多数从Play商店下载应用的设备都是Gingerbread(API 9)。如果你想要接触到最多的人,那么你可能不想使用Fragment,但是如果你想为未来编程,那么我建议使用至少11个。

这实际上取决于您的目标对象。但ICS在过去6个月左右的时间里取得了很多进展。我的建议是为那些较新的设备编程,因为他们的切片只会变大。当然,除非您知道很多用户都会使用旧设备

Supporting different versions

答案 2 :(得分:1)

在课堂内你可以使用像这样的Android注释:

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

答案 3 :(得分:0)

除了codeMagic所解释的内容之外。这是您需要的附加资源: What API level should I target


除了我第一次启动android时遇到困难,这里有一些非常好的Android初学者书籍:

  1. Pro Android 3(Android开发人员会将其保留在书架中)
  2. Head First Android Development(它通过示例引导您)
  3. Learning Android (掌握基本原理的完美书籍)

  4. 要掌握最好的Android实践,请从他的代码中学习: yuriykulikov/AlarmClock

    毕竟,我希望它有所帮助:)祝你好运。