Do not use a boolean to validate the API. Place it directly in the if statement:
if (Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.KITKAT) { smsIntent.setPackage("vnd.android-dir/mms-sms"); } else { smsIntent.setPackage(Telephony.Sms.getDefaultSmsPackage(getActivity())); }
This should make the warning go away. TargetApi annotations must be run at the method level:
@TargetApi(Build.VERSION_CODES.KITKAT) public void yourKitkatMethod() {}
source share