Подтвердить что ты не робот

Java.lang.NoSuchMethodError: android.os.Bundle.getString

game.multiplayer = bundle.getString("multiplayer" ,null);

дает ошибку:

java.lang.NoSuchMethodError: android.os.Bundle.getString

Другие методы, такие как

 game.word.word = bundle.getStringArray("word");

работает нормально.

Любая идея?

4b9b3361

Ответ 1

getString (key, defValue) добавлен в API 12. Используйте getString (key), так как это вернет null, если ключ не существует.

Ответ 2

Просто используйте эту функцию:

public static String getStringFromBundle(Bundle bundle, String key, String defaultValue){
    if (Build.VERSION.SDK_INT < 12){
        String returns = bundle.getString(key);
        if(returns==null) returns = defaultValue;

        return returns;
    } else
        return bundle.getString(key, defaultValue);
}

Ответ 3

Метод getString(String key, String defaultValue) в классе Bundle был добавлен на уровне API 12 (что, как я помню, Android 3.1), Если вы используете более раннюю версию, вы должны использовать одну из альтернатив, доступных на более ранних уровнях API (см. Ссылку).

Ответ 4

Попробуйте следующее:

game.multiplayer = bundle.getString("multiplayer");

Ответ 5

Используйте как этот пример

Intent intent = getIntent();
String fName = intent.getStringExtra("fname");
String lName = intent.getStringExtra("lname");