2014-09-01 174 views
1

我正在使用Twilio Android客户端。 device.connect()工作正常,但不能断开连接的呼叫,虽然用户(我拨打)如果挂断,然后呼叫将断开连接。我已经尝试使用device.disconnectAll()connection.disconnect(),两者都不起作用。请指导我,我错了。使用Twilio Android客户端断开连接呼叫

简单: 来电者无法在被叫方可以断开通话。

感谢提前。

连接呼叫

HashMap<String, String> p = new HashMap<String, String>(); 
p.put("PhoneNumber", personToCall); 
p.put(Connection.IncomingParameterFromKey, (String) device.getCapabilities().get(Device.Capability.CLIENT_NAME)); 
p.put(Connection.IncomingParameterToKey, personToCall); 
device.connect(p, this); 

和断开

connection.disconnect() 
+0

第一步,发布代码。在没有看到代码的情况下,我们所能做的只是猜测你可能做错了什么,这就像浪费你的时间一样。 :D)您可以使用此[编辑]链接添加更多详细信息。祝你好运! – jmort253 2014-09-01 07:57:54

+0

另外,如果您看到任何错误消息,请将其发布。 – jmort253 2014-09-01 08:00:58

+0

@ jmort253我可以看到没有错误消息。 – user2771222 2014-09-01 08:06:55

回答

0

这不是在你的代码清楚你是如何获取的连接对象,这是的Twilio的两个关键作品之一客户。

的Twilio Client文档对making outbound calls一个例子:

import com.twilio.client.Connection; 
import com.twilio.client.Device; 
import com.twilio.client.Twilio; 


public class MonkeyPhone implements Twilio.InitListener 
{ 
    private Device device; 
    private Connection connection; 

    /* ... other methods ... */ 

    public void connect() 
    { 
     connection = device.connect(null /* parameters */, null /* ConnectionListener */); 
     if (connection == null) 
      Log.w(TAG, "Failed to create new connection"); 
    } 

    @Override 
    protected void finalize() 
    { 
     if (connection != null) 
      connection.disconnect(); 
     if (device != null) 
      device.release(); 
    } 
} 

在该示例中,当调用device.connect(),则返回并存储为在对象中的属性,以便它可以在连接对象稍后再次参考。在finalize方法中,我们调用connection.disconnect()来终止调用。

如果您没有从device.connect()返回的连接对象上调用断开连接,则调用可能无法正确断开连接。有关更多详细信息,请参阅Device.connect的Twilio文档。

+0

现在我已经从'device.connect()',但没有成功:(:.. – user2771222 2014-09-01 09:02:08

+0

抓住连接对象你真的开始下载他们的演示,并得到它运行?通常,当你使用新的东西时首先要做的就是让他们的项目先运行,这样你就可以在开始做自己的事情之前有一些真正有用的东西... – jmort253 2014-09-01 09:04:39

+0

在演示中他们只是初始化Twilio – user2771222 2014-09-01 09:06:02

相关问题