java - 无法编译 Kotlin 错误 - 无法调用以下函数
问题描述
我正在尝试按照以下步骤编译应用程序->
https://github.com/wlvpn/ConsumerVPN-Android/blob/master/VPN%20SDK%20-%20documentation/SETUP.md
但是当我在应用程序文件中复制该代码时,在最后一步显示“库初始化”时,“SdkConfig”表示不能这样调用。我使用 Kotlin 方法。
在 Application.kt:
import com.gentlebreeze.vpn.sdk.IVpnSdk
import com.gentlebreeze.vpn.sdk.VpnSdk
import com.gentlebreeze.vpn.sdk.config.SdkConfig
override fun onCreate() {
super.onCreate()
vpnSdk = VpnSdk.init(this, SdkConfig(
BuildConfig.ACCOUNT_NAME,
BuildConfig.API_KEY,
BuildConfig.AUTH_SUFFIX,
BuildConfig.CLIENT,
BuildConfig.BASE_HOSTNAME,
BuildConfig.IP_GEO,
BuildConfig.LOGIN_API,
BuildConfig.REFRESH_API,
BuildConfig.PROTOCOL_LIST_API,
BuildConfig.SERVER_LIST_API
))
}
companion object {
var vpnSdk: IVpnSdk? = null
}
}
在 build.gradle:
android {
compileSdkVersion 28
defaultConfig {
buildConfigField 'String', 'ACCOUNT_NAME', '"xxxxx"'
buildConfigField 'String', 'AUTH_SUFFIX', '"xxxxx"'
buildConfigField 'String', 'API_KEY', '"xxxxxx"'
buildConfigField 'String', 'CLIENT', "\"Android-${versionName}b${versionCode}\""
buildConfigField 'String', 'BASE_HOSTNAME', '"https://api.colomovers.com/wlapi/%s"'
buildConfigField 'String', 'PROTOCOL_LIST_API', '"protocols"'
buildConfigField 'String', 'LOGIN_API', '"login"'
buildConfigField 'String', 'REFRESH_API', '"refresh"'
buildConfigField 'String', 'SERVER_LIST_API', '"servers"'
buildConfigField 'String', 'IP_GEO', '"https://ipgeo.wlvpn.com/v2?apikey=xxxxxx"'
}
def versions = [
os : [
support : "1.0.0",
lifecycle : "2.0.0",
constraintLayout: "1.1.3",
material : "1.1.0-alpha05",
appCompat : "1.1.0-alpha04"
],
rxJava : "2.2.5",
rxAndroid : "2.1.1",
rxKotlin : "2.3.0",
rxBinding : "3.0.0-alpha2",
gson : "2.8.5",
dagger : "2.21",
retrofit : "2.5.0",
leakCanary : "1.6.3",
fresco : "1.13.0",
vpnSdk : "1.5.3.39705@aar",
nativeEncrypt: "1.0.036399@aar",
timber : "4.7.1",
autoValue : "1.6.2",
loganSquare : "1.3.7",
evernoteJobs : "1.2.6",
test : [
junit : "4.12",
mockito: "2.24.0"
]
]
dependencies{
implementation("com.gentlebreeze.vpn.sdk:sdk:$versions.vpnSdk") {
transitive = true
}
出现的错误:
它是唯一缺少编译和尝试的步骤。正如链接描述的那样,添加了所有其他步骤。
谢谢您的帮助。
解决方案
推荐阅读
- bash - 如何检查是否安装了 vim 版本 8.1+
- excel - 在 VBA 中将数组另存为制表符分隔的文本文件
- xcode - 将图像从图像选择器保存到不同的视图控制器
- typescript - 3.9+ 扩展任何成为扩展未知
- android - 如何在一项任务中使用多库模块生成多 aar?
- python - AttributeError:在 Tensorflow federated 中使用多个特征输入时启用急切执行时,Tensor.op 毫无意义
- javascript - JS 中是否有等效的“Array.None”?
- postgresql - 默认帐户没有密码错误
- c++ - 检索未命名结构的类型以在成员函数中使用它
- excel - VBA 如何删除表格行