因此,使用谷歌地点参考(详细的网络服务)我检索了一个“格式化的电话号码”,其格式为(256)922-0556。目标是拨打这个号码。我正在尝试的方式是使用意图。但是,上面的数字并不是一个使用 Uri 解析方法的格式。有人知道拨打此号码的解决方案吗?是否有不同的意图或好方法将其转换为 Uri 数据?我见过与此相反的做法:1234567890 → (123) 456-7890
String formattedNumber = PhoneNumberUtils.formatNumber(unformattedNumber);
但我想做相反的事情。任何想法或替代解决方案?这是我的代码:
protected void onPostExecute(Boolean result){
Intent callintent = new Intent(Intent.ACTION_CALL);
callintent.setData(Uri.parse(phoneNum));
try {
startActivity(callintent);
}catch (Exception e) {e.printStackTrace();}
}
其中 phoneNum 是通过 JSON 从 GooglePlaces 检索到的格式化电话号码字符串
扩展 Peotropo 的评论:有没有比以下更好的方法来替换值?
phoneNum = phoneNum.replace(" ", ""); // gets rid of the spaces
phoneNum = phoneNum.replace("-", ""); // gets rid of the -
phoneNum = phoneNum.replace("(", ""); // gets rid of the (
phoneNum = phoneNum.replace(")", ""); // gets rid of the )