Broadcast receiver does not reaceive sms in android? : I am using broadcast receiver in my app to read Otp sent from server,I did not mentioned any permission in menifest.xml . but it does not read OTP  .I don't know where is the problem kindly rectify it please.please help me.

    public BroadcastReceiver br = new BroadcastReceiver() {
		@Override
		public void onReceive(Context context, Intent intent) {
			final Bundle bundle = intent.getExtras();
			try {
				if (bundle != null) {
					Object[] pdusObj = (Object[]) bundle.get("pdus");
					assert pdusObj != null;
					for (Object aPdusObj : pdusObj) {
						@SuppressWarnings("deprecation") SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) aPdusObj);
						String phoneNumber = currentMessage.getDisplayOriginatingAddress();
						String message = currentMessage.getDisplayMessageBody();

						Log.e(s_szTAG, "Received SMS: " + message + ", Sender: " + phoneNumber);

						// checking sms sender address....
						if (phoneNumber.toLowerCase().contains("+919971599909".toLowerCase())) {
							// verification code from sms
							m_szOtpCode = getVerificationCode(message);
							assert m_szOtpCode != null;
							String input = m_szOtpCode.trim();

							Log.e(s_szTAG, "OTP received: " + m_szOtpCode);
							COTPVerificationDataStorage.getInstance().setM_szOtp(input);// getting otp from SMS and set to otpverificationstorage class

						} else {
							return;
						}

					}
				}
			} catch (Exception e) {
				Log.e(s_szTAG, "Exception: " + e.getMessage());
			}
		}

		@SuppressWarnings("JavaDoc")
		private String getVerificationCode(String message) {
			String code;
			int index = message.indexOf(":");

			if (index != -1) {
				int start = index + 2;
				int length = 6;
				code = message.substring(start, start + length);
				return code;
			}
			COTPVerificationDataStorage.getInstance().setM_szOtp(m_szOtpCode);
			return null;
		}
	};
	private IntentFilter inf;

	@Nullable
	@Override
	public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
		m_Main = inflater.inflate(R.layout.otp_auto_verified, container, false);

		inf = new IntentFilter();
		inf.addAction("android.provider.Telephony.SMS_RECEIVED");


		getUserDetails();// getuser deatails....
		init();// initialize controls...
		return m_Main;

	}


