NoSuchMethodError Bundle.getString()

LeD*_*Don 3 android

我得到了一些奇怪的日志,这显然只发生在版本低于3的Android设备上(使用模拟器检查).当您更改方向时,使用非空的Bundle调用onCreate()或onRestoreInstanceState()时它会崩溃

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_menu);}
    if (savedInstanceState != null) {
        mSlug = savedInstanceState.getString(KEY_SLUG, null);
    }
}@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString(KEY_SLUG, mSlug);
}@Override
protected void onRestoreInstanceState(Bundle outState) {
    super.onRestoreInstanceState(outState);
    if (outState != null) {
        mSlug = outState.getString(KEY_SLUG, mSlug);
    }
}
Run Code Online (Sandbox Code Playgroud)

LogCat-Log看起来像:http: //i.stack.imgur.com/WbivQ.png 有人知道这里发生了什么吗?

Cod*_*man 8

具有2个参数的Bundle.getString仅在API级别12及更高版本中可用.您必须自己指定默认值,而不是将其作为参数传递.

您可以通过单击"按API级别过滤"下拉列表并在文档的右上角选择相应的API级别来自行检查.