
Web3j yra lengva, labai modulinė, reaktyvi ir tipo saugi Java ir Android biblioteka, sukurta dirbti su išmaniosiomis sutartimis ir integruoti su klientais (mazgais) Ethereum tinkle. Ši galinga biblioteka leidžia kūrėjams sąveikauti su Ethereum blokų grandine be papildomų išlaidų rašant pasirinktinį integravimo kodą. Šiame straipsnyje apžvelgsime veiksmus, kaip nustatyti „Web3j“, skirtą „Android“ kūrimui naudojant naujausią versiją.
Būtinos sąlygos
Prieš pradėdami įsitikinkite, kad turite šiuos dalykus:
- Android studija įdiegta.
- Pagrindinis „Android“ kūrimo ir „Gradle“ supratimas.
- JDK 17 versija
1 veiksmas: pridėkite Web3j priklausomybę
Naudojant Maven:
Pridėkite šią priklausomybę prie savo pom.xml failas:
<dependency>
<groupId>org.web3j</groupId>
<artifactId>core</artifactId>
<version>4.12.0</version>
</dependency>
Gradle (Kotlin) naudojimas:
Pridėkite Web3j priklausomybę prie savo build.gradle.kts failas:
dependencies {
implementation("org.web3j:core:4.12.0")
}
2 veiksmas: atnaujinkite pakuotės parinktis
Norėdami išvengti konfliktų su tam tikrais failais, įtrauktais į Web3j biblioteką, turite išskirti konkrečius išteklius. Pridėkite šį kodo fragmentą prie savo modulio build.gradle.kts failą viduje Android blokas:
android {
packagingOptions {
resources {
excludes += "/META-INF/DISCLAIMER"
}
}
}
3 veiksmas: sinchronizuokite „Gradle“.
Pridėję priklausomybes ir atnaujinę pakavimo parinktis, sinchronizuokite „Gradle“ failus, kad įsitikintumėte, jog taikomi visi pakeitimai. Tai galima padaryti spustelėjus „Sinchronizuoti dabar“ raginimą, rodomą viršutiniame dešiniajame „Android Studio“ kampe arba pasirinkę „Failas > Sinchronizuoti projektą su Gradle failais“.
4 veiksmas: patikrinkite sąranką
Norėdami patikrinti, ar Web3j buvo sėkmingai integruotas, galite sukurti paprastą prisijungimo prie Ethereum tinklo testą.
- Sukurkite naują Kotlin failą savo projekte, pvz. Web3jTest.kt.
- Pridėkite šį kodą, kad prisijungtumėte prie viešojo Ethereum mazgo ir atsispausdintumėte naujausią bloko numerį:
import org.web3j.protocol.Web3j
import org.web3j.protocol.http.HttpService
import kotlinx.coroutines.runBlocking
fun main() = runBlocking {
val web3 = Web3j.build(HttpService("https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID"))
val latestBlockNumber = web3.ethBlockNumber().send().blockNumber
println("Latest Ethereum block number: $latestBlockNumber")
}
Pakeiskite YOUR_INFURA_PROJECT_ID su savo tikruoju Infura projekto ID.
Atlikę šiuos veiksmus, sėkmingai integravote Web3j į savo Android projektą. Dabar galite pradėti kurti programas, kurios sąveikauja su Ethereum blokų grandine, išnaudodamos galingas Web3j funkcijas, nesudėtingai rašydami pasirinktinį integravimo kodą.
Norėdami gauti daugiau informacijos apie Web3j, galite patikrinti oficialius dokumentus.