Quick Start
최초의 NFT-FIRST 지갑, 크툴루로 당신의 NFT 경험을 업그레이드하세요.
Android
iOS
Web
Language : Kotlin
Minimum SDK : API: 27: Android 8.1 (Oreo)
SDK는 gradle을 사용하는 방법과 로컬에서 직접 사용하는 방법 두가지 모드를 지원합니다.
1) build.gradle
build.gradle(Module: app) :
- 최신 버전 사용하기
dependencies {
...
implementation 'com.github.companyAbcDev:kthuluAndroidSDK:latest.release'
}
- 특정 버전 사용하기
dependencies {
...
// 사용 버전은 깃허브 릴리즈 참고 : https://github.com/companyAbcDev/kthuluAndroidSDK
implementation 'com.github.companyAbcDev:kthuluAndroidSDK:1.0.0' // 사용할 버전
}
settings.gradle(Project Settings) :
pluginManagement {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencyResolutionManagement {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2) import
import io.kthulu.sdk.*
코루틴 함수를 사용하여 SDK 이용이 가능합니다.
package io.kthulu.sdk
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import io.kthulu.sdk.*
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// 코루틴 함수 사용
CoroutineScope(Dispatchers.IO).launch {
// SDK version을 확인하는 SDK 내장 함수
kthuluSdkVersion()
/*
{
"result": "OK",
"value": [
{
"version": "1.0.0"
}
]
}
*/
}
}
}
SDK에 포함된 함수 setConfiguration을 사용하여 DB에 연결
// DB set configuration, CoroutineScope 밖에서 셋팅
val database_url = "jdbc:mariadb://kthulu.io:3306/kthulu?useUnicode=true&characterEncoding=UTF-8&useSSL=false"
val database_username = "userName"
val database_password = "userPassword"
val database_driver_class_name = "org.mariadb.jdbc.Driver"
setConfiguration(
database_url,
database_username,
database_password,
database_driver_class_name
)
CoroutineScope(Dispatchers.IO).launch {
...
}
iOS --> App 생성
interface : Storyboard
Language : Swift
Minimum Deployments : 13
1) SPM으로 SDK 추가
(2) Dependency Rule : branch 선택
(3) Add Package
2) import
import kthuluSDK
import UIKit
import kthuluSDK
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
// Task : 비동기 함수 사용 -> async 코드를 수행할 수 있도록 제공
Task{
do{
// SDK version을 확인하는 SDK 내장 함수
KthuluSdkVersion()
/*
{
"result": "OK",
"value": [
{
"version": "1.0.0"
}
]
}
*/
}
}
}
}
SDK에 포함된 함수 dbSetting을 사용하여 DB에 연결
// DB config setting
let server = "kthulu.io" // host url
let user = "userName" // 유저 이름
let passwd = "userPassword" // 유저 비밀번호
let name = "databaseName" // Database 이름
dbSetting(server: server, user:user, passwd: passwd, name: name)
Task{
do{
...
}
}

Android
iOS
Kthulu SDK function list
자세한 내용은 설명란 링크를 클릭하세요.
메소드명 | 설명 |
---|---|
createAccountAsync() | |
restoreAccountAsync() | |
getAccountInfoAsync() | |
getUsersAsync() | |
getEstimateGas() | |
deployErc20Async() | |
getTokenInfoAsync() | |
getTokenListAsync() | |
getBalanceAsync() | |
getTokenHistoryAsync() | |
sendTransactionAsync() sendTokenTransactionAsync() | |
tokenSwapAppoveAsync() | |
coinForTokenSwapAsync()
tokenForTokenSwapAsync()
tokenForCoinSwapAsync() | |
bridgeCoinAsync() bridgeTokenAsync() | |
deployErc721Async()
deployErc1155Async() | |
mintErc721Async()
mintErc1155Async() | |
batchMintErc721Async()
batchMintErc1155Async() | |
getNFTsByWallet() | |
getNFTsTransferHistory() | |
sendNFT721TransactionAsync()
sendNFT1155TransactionAsync() | |
sendNFT721BatchTransactionAsync()
sendNFT1155BatchTransactionAsync() | |
burnErc721Async()
burnErc1155Async() | |
setNFTsHide()
deleteNFTsHide() | |
getNFTsHide() | |
| |
verifyNFT() |
Kthulu SDK function list
자세한 내용은 설명란 링크를 클릭하세요.
메소드명 | 설명 |
---|---|
createAccountAsync() | |
restoreAccountAsync() | |
getAccountInfoAsync() | |
getUsersAsync() | |
getEstimateGas() | |
deployErc20Async() | |
getTokenInfoAsync() | |
getTokenListAsync() | |
getBalanceAsync() | |
getTokenHistoryAsync() | |
sendTransactionAsync() sendTokenTransactionAsync() | |
tokenSwapAppoveAsync() | |
coinForTokenSwapAsync()
tokenForTokenSwapAsync()
tokenForCoinSwapAsync() | |
bridgeCoinAsync() bridgeTokenAsync() | |
deployErc721Async()
deployErc1155Async() | |
mintErc721Async()
mintErc1155Async() | |
batchMintErc721Async()
batchMintErc1155Async() | |
getNFTsByWallet() | |
getNFTsTransferHistory() | |
sendNFT721TransactionAsync()
sendNFT1155TransactionAsync() | |
sendNFT721BatchTransactionAsync()
sendNFT1155BatchTransactionAsync() | |
burnErc721Async()
burnErc1155Async() | |
setNFTsHide()
deleteNFTsHide() | |
getNFTsHide() | |
| |
verifyNFT() |
Last modified 1mo ago