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

Как игнорировать ошибку "избегать ошибок, отличных от стандартных по фрагментам"?

Я получил эту ошибку, пытаясь сгенерировать подписанный APK. Дело в том, что мое приложение может нормально работать и отлаживаться на моем устройстве. Я не знаю, почему, когда я пытаюсь создать APK, эта ошибка появилась. Как игнорировать эту ошибку и сгенерировать подписанный APK? Я использую Android Studio 1.2.1.1 для Mac.

4b9b3361

Ответ 1

Нашел решение. Более простой способ - добавить их в gradle:

 android {
          lintOptions {
              checkReleaseBuilds false
          }
      }

Или другим способом является добавление @SuppressLint("ValidFragment")

Ответ 2

выключение lint полностью не является достойным решением, если вы все еще хотите использовать его преимущества. Если кто-то сталкивается с этим, я считаю, что отключить конкретную ошибку только более элегантное решение:

android {
    lintOptions {
        disable 'ValidFragment'
    }
}

Ответ 3

В контракте Фрагмента: "Каждый фрагмент должен иметь пустой конструктор, поэтому он может быть создан при восстановлении его состояния активности. Настоятельно рекомендуется, чтобы в подклассах не было других конструкторов с параметрами, поскольку эти конструкторы не будут вызываемый при повторном создании фрагмента, вместо этого аргументы могут предоставляться вызывающим абонентом с помощью setArguments (Bundle), а затем извлекаются фрагментом с помощью getArguments()."

Ответ 4

Для меня работала только комбинация двух предыдущих ответов:

android {
    lintOptions {
        disable 'ValidFragment'
        checkReleaseBuilds false
    }
}

Но помните, что это плохой патч, чтобы избежать предупреждений/ошибок lint, решение состоит в том, чтобы адаптировать конструктор фрагментов к публичному статическому конструктору фрагментов newInstance (params).