1

我的一门课程有很多错误,因为 API 级别 11(最小值为 9)是修复它还是更改最小值更好。如果是这样,我该如何修复它或如何更改 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

4 回答 4

3

修改 AndroidManifest.xml 文件

添加

 <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="17"/>
于 2013-05-08T01:08:53.607 回答
2

这真的取决于你想要什么以及你的目标是谁。自从Fragment引入以来API 11,如果你想使用它们,那么你应该制作你的minimum >= 11. 如果您查看DashBoard 文档,您会发现从 Play 商店下载应用程序的大多数设备都是 Gingerbread ( API 9)。如果你想接触最广泛的人,那么你可能不想使用Fragments,但如果你想为未来编程,那么我建议至少使用 11 个。

这真的取决于你的目标是谁。但 ICS 在过去 6 个月左右的时间里取得了很大进展。我的建议是为那些较新的设备编程,因为它们的切片只会变得更大。当然,除非您知道您的许多用户将拥有较旧的设备

支持不同版本

于 2013-05-08T01:15:07.037 回答
1

在类内部,您可以像这样使用 Android 注释:

@TargetApi(11)
public void functionName() {
   ...
}
于 2013-05-08T01:15:31.723 回答
0

除了 codeMagic 解释的内容。这是您需要的附加资源: 我应该针对哪个 API 级别


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

  1. Pro Android 3(Android 开发者会把它放在他们的书架上)
  2. Head First Android 开发(通过示例指导您)
  3. 学习 Android (掌握基础知识的完美书籍)

要掌握最佳的 android 实践,请从他的代码中学习: yuriykulikov/AlarmClock

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

于 2013-05-08T02:26:08.590 回答