I would like to remove the deprecation warning for Html.fromHtml(string)
.
I tried to do like this:
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
htmlSpanned = Html.fromHtml(string,Html.FROM_HTML_MODE_LEGACY);
} else {
//noinspection deprecation
htmlSpanned = Html.fromHtml(string);
}
but it still gives me a warning during compilation:
Warning:(18, 31) [deprecation] fromHtml(String) in Html has been deprecated
Well, the one-parameter fromHtml()
is deprecated. The Build
checks ensure that you will not call it on older devices, but it does not change the fact that it is deprecated with a compileSdkVersion
of 24.
You have four choices:
Drop your compileSdkVersion
below 24. This has rippling effects (e.g., you cannot use 24.x.x versions of the support libraries) and is not a great option.
Set your minSdkVersion
to 24 and get rid of the one-parameter fromHtml()
call. This is impractical in 2016.
Live with the strikethrough and Lint complaints.
Add the appropriate @SuppressLint
annotation to the method, to get the IDE to stop complaining. As Ahlem Jarrar notes, the simplest way to add this is via the quick-fix.