我正在尝试使用Twilio AP从android(kotlin)发送消息。
我添加了twilio库
implementation group: "com.twilio.sdk", name: "twilio", version: "7.17.+"
这是我的科特琳课:
package com.example.new_pharma_project
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import com.twilio.http.TwilioRestClient
import com.twilio.rest.api.v2010.account.Message
import com.twilio.type.PhoneNumber
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val client = TwilioRestClient.Builder (
"username",
"passowrd"
).build()
val message = Message.creator(
PhoneNumber("+213777875776"),
PhoneNumber("+213777877556"),
"Ahoy from Twilio"
).create(client)
println(message.sid)
}
}
我希望在手机上收到一条消息,但这是我在日志输出中得到的信息
java.lang.NoSuchFieldError: No static field INSTANCE of type Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; in class Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; or its superclasses (declaration of 'org.apache.http.conn.ssl.AllowAllHostnameVerifier' appears in /system/framework/framework.jar!classes3.dex)
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
我们强烈建议您不要在Android应用程序中使用Twilio API SDK。为此,您需要在应用程序中嵌入或使用Twilio凭据,从而使它们容易受到恶意用户的攻击,这些恶意用户可能会反编译应用程序,窃取凭据并滥用您的帐户。
相反,我们建议您创建一个服务器端应用程序,该服务器端应用程序可用于将API请求从应用程序代理到Twilio API。 Here is an example of how to do that (using Java, I'm afraid)。希望您也可以将其应用于Kotlin。
让我知道是否有帮助。
答案 1 :(得分:0)
这是我为TwilioSMS创建的一个Android库,不需要服务器端应用程序。 https://github.com/hihi-dev/android-twilio-sms
在API 14 +上运行
implementation 'com.github.hihi-dev:twiliosms:0.1.1'