跟踪iPhone用户是否拨打了USSD代码

时间:2014-02-15 06:57:20

标签: ios iphone objective-c

我正在开发一款需要呼叫转移功能的应用。我们知道我们不能在iOS中以编程方式拨打USSD代码,我们可以跟踪用户是否通过iPhone拨打USSD代码,或者如果可能,是否可以检查SIM是否用于拨打USSD代码?

Update1:​​尝试以编程方式调用ussd,但想检查用户是否拨打了它。例如,如果我们手动调用USSD代码,我们可以检查任何日志或任何类对象变量,这有助于找出是否用户拨打了特定的USSD代码

2 个答案:

答案 0 :(得分:0)

我认为在不使用私有API的情况下,您的应用程序无法做到这一点。

  

防止用户恶意重定向电话或更改   电话应用程序支持的电话或帐户的行为   tel方案中的大多数但不是全部的特殊字符。   具体来说,如果URL包含*或#字符,则为Phone   应用程序不会尝试拨打相应的电话号码。

如果您的项目打算部署在App Store之外,您可以使用CoreTelephony框架:

CTCallDialWithID(@"*100#", -1);

答案 1 :(得分:0)

参考此链接可能对您有所帮助

dial USSD code from iphone programatically

更新:

可悲的是,Apple禁止在开发者可用的(合法)iPhone沙箱中使用USSD代码(通过开放URL方法,传入tel:// xxxxxx URL)。这意味着您的运营商不会有任何应用程序可以轻松检索和更改可通过应用程序商店发布的网络设置 - 至少在Apple改变主意与USSD代码交互之前不会这样做。

ussd-codes-on-iphone

重新判断