5

I am trying to make a call with a long number that looks something like this.

tel:883994555,,,32343#,,,#

with code that looks like this.

        Intent intent = new Intent(Intent.ACTION_CALL);
        Uri uri = Uri.parse(number);
        intent.setData(uri);
        startActivity(intent);

What I see is that, the phone does not dial after the first '#' sigh. Any one knows how to make this to work.

Thanks.

prakash
  • 507
  • 1
  • 4
  • 9

2 Answers2

9

How I got this to work was to use ';' (semicolon) for the hard wait instead of the 'w', and ',' (comma) for the pause, and then encode the phone number first, like this -

Uri.parse(String.format("tel:%s", Uri.encode(number)))
ScottTx
  • 1,483
  • 8
  • 12
2

Uri.parse(String) parses an RFC 2396-compliant, encoded URI.

RFC 2396 says:

The character "#" is excluded because it is used to delimit a URI from a fragment identifier in URI references.

pawelzieba
  • 16,082
  • 3
  • 46
  • 72