我已经创建了一个地址簿应用程序,并正在尝试为其添加一些功能。我现在要做的是添加长按电话号码的功能,然后拨打/发短信/发送电话号码。这一切都适用于手机,但我想知道如何在平板电脑上做到这一点,因为它们不会有同样的能力。我正在调试的设备是平板电脑,我使用 HeyWire 发短信。我知道那里也有可以通过 WiFi 拨打电话的应用程序。到目前为止,这是我的 switch 语句的短信部分的内容:
case 1: //SMS
if(CanCallAndText)
{
CustomSMSDialog SendSMSDialog = new CustomSMSDialog(BrowseListActivity.this, ParsedPhoneNum);
SendSMSDialog.setTitle("Sending text to " + PhoneNum);
SendSMSDialog.setCancelable(false);
SendSMSDialog.show();
}
else
{
try
{
Intent WiFiSMS = new Intent(Intent.ACTION_VIEW);
WiFiSMS.setData(Uri.parse("sms:" + PhoneNum));
WiFiSMS.setType("vnd.android-dir/mms-sms");
startActivityForResult(Intent.createChooser(WiFiSMS, ""), 0);
}//endtry
catch(Exception e)
{
Toast.makeText(getApplicationContext(), "Error: " + e.getMessage(), Toast.LENGTH_LONG).show();
}//endcatch
}//endelse
break;
我不知道我是否错误地执行了创建选择器,但它只是告诉我没有应用程序可以处理它。谢谢!
编辑:哦,发现了一个我明天应该修复的小错误。URI 应包括 ParsedPhoneNum,而不是 PhoneNum。PhoneNum 中将包含除数字之外的任何内容,例如 -。