Quick Start

최초의 NFT-FIRST 지갑, 크툴루로 당신의 NFT 경험을 업그레이드하세요.

SDK 사용하기

1. SDK 기본 설정

Language : Kotlin

Minimum SDK : API: 27: Android 8.1 (Oreo)

2. SDK 연결

SDK는 gradle을 사용하는 방법과 로컬에서 직접 사용하는 방법 두가지 모드를 지원합니다.

github : https://github.com/companyAbcDev/kthuluAndroidSDK

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.*

3. 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"
                        }
                    ]
                } 
            */
        }

    }
}

4. 데이터베이스 설정

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 {
    ...  
}

SDK 기능 목록

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 updated