IoT Platform SDK untuk Java memungkinkan Anda mengelola sumber daya IoT Platform secara efisien menggunakan program Java. Anda dapat menambahkan SDK sebagai dependensi ke proyek Maven Anda atau mengunduh paket instalasi ke direktori lokal dan menginstal SDK.
Instal SDK
Instal lingkungan pengembangan Java.
Unduh paket instalasi Java dari situs resmi Java dan instal Java sesuai petunjuk.
Instal IoT Platform SDK untuk Java.
Unduh paket instalasi Maven dari situs resmi Apache Maven.
Tambahkan dependensi berikut ke proyek Maven Anda:
Dependensi untuk IoT Platform SDK untuk Java versi terbaru:
<!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-iot --> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-iot</artifactId> <version>7.41.0</version> </dependency>Dependensi untuk Alibaba Cloud SDK untuk Java:
<dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.5.6</version> </dependency>
Inisialisasi SDK
Buat objek profil dari kelas IClientProfile untuk menyimpan informasi inisialisasi SDK. Kemudian, buat instance klien dari kelas DefaultAcsClient. Panggil metode DefaultAcsClient(profile) untuk memuat informasi inisialisasi SDK.
String accessKey = System.getenv("ACCESS_KEY_ID");
String accessSecret = System.getenv("ACCESS_KEY_SECRET");
IClientProfile profile = DefaultProfile.getProfile("${RegionId}", accessKey, accessSecret);
DefaultAcsClient client = new DefaultAcsClient(profile); // Inisialisasi klien SDK. Parameter | Deskripsi |
profile | Objek yang digunakan untuk menyimpan informasi inisialisasi SDK. Anda dapat melihat wilayah di pojok kiri atas konsol IoT Platform. Untuk informasi lebih lanjut tentang ID wilayah, lihat Wilayah dan Zona. |
Contoh berikut menunjukkan cara menginisialisasi SDK jika layanan IoT Platform Anda berada di wilayah China (Shanghai):
String accessKey = System.getenv("ACCESS_KEY_ID");
String accessSecret = System.getenv("ACCESS_KEY_SECRET");
IClientProfile profile = DefaultProfile.getProfile("cn-shanghai", accessKey, accessSecret);
DefaultAcsClient client = new DefaultAcsClient(profile); // Inisialisasi klien SDK. Ajukan permintaan
SDK mengenkapsulasi dua kelas untuk setiap operasi API. Nama kelas dalam format ${Nama Operasi API}+"Request" dan ${Nama Operasi API}+"Response".
${Nama Operasi API}+"Request": Kelas ini digunakan untuk memanggil operasi API. Anda dapat membuat instancerequestdari kelas ini dan memanggil metodeset +${parameter permintaan}untuk menentukan parameter permintaan.${Nama Operasi API}+"Response": Anda dapat memanggil metodegetAcsResponse(request)dari instance klien yang dibuat dari DefaultAcsClient untuk mendapatkan respons. Anda dapat memanggil metodeget +${parameter respons}dari instance respons kelas ${Nama Operasi API}+"Response" untuk mendapatkan nilai parameter respons.Sebagai contoh, Anda dapat memanggil metode
response.getSuccess()untuk mendapatkan parameter Success. Parameter ini adalah parameter respons umum yang menunjukkan apakah permintaan berhasil. Parameter respons umum lainnya termasuk RequestId, ErrorMessage, dan Code.
Untuk informasi lebih lanjut tentang operasi API IoT Platform, lihat Daftar operasi berdasarkan fungsi. Untuk informasi lebih lanjut tentang parameter request dan response dari setiap operasi API, lihat dokumentasi API.
Contoh berikut menunjukkan cara memanggil operasi Pub untuk menerbitkan pesan ke topik. Untuk informasi lebih lanjut tentang parameter permintaan, lihat Pub.
Dalam kode sampel berikut, ${iotInstanceId} menentukan ID suatu instans. Anda dapat melihat ID instans pada halaman Ikhtisar di konsol IoT Platform.
Jika instans Anda memiliki ID, Anda harus menentukan ID untuk parameter ini. Jika tidak, permintaan akan gagal.
Jika tidak ada halaman Ikhtisar atau ID yang dihasilkan untuk instans Anda, Anda tidak perlu menentukan parameter ini. Anda harus menghapus kode permintaan yang terkait dengan parameter IotInstanceId atau menentukan string kosong (
"") untuk parameter tersebut. Jika tidak, permintaan akan gagal.
Untuk informasi lebih lanjut tentang instans IoT Platform, lihat Ikhtisar. Untuk informasi lebih lanjut tentang cara membeli instans, lihat Beli instans Edisi Perusahaan. Untuk informasi lebih lanjut tentang pertanyaan yang sering diajukan, lihat FAQ tentang instans IoT Platform.
PubRequest request = new PubRequest();
request.setIotInstanceId("${iotInstanceId}");
request.setProductKey("${productKey}");
request.setMessageContent(Base64.encodeBase64String("hello world".getBytes()));
request.setTopicFullName("/${productKey}/${deviceName}/user/get");
request.setQos(0); // QoS 0 dan QoS 1 didukung.
try
{
PubResponse response = client.getAcsResponse(request);
System.out.println(response.getSuccess());
System.out.println(response.getCode());
System.out.println(response.getErrorMessage());
}
catch (ServerException e)
{
e.printStackTrace();
}
catch (ClientException e)
{
System.out.println("ErrCode:" + e.getErrCode());
System.out.println("ErrMsg:" + e.getErrMsg());
e.printStackTrace();
}Lampiran: Contoh kode
Anda dapat melihat atau mengunduh contoh kode operasi API di IoT Platform SDK Sample Center. Contoh kode SDK untuk Java, Python, PHP, .NET, dan Go disediakan.
OpenAPI Explorer Alibaba Cloud menyediakan alat debugging online untuk operasi API. Di halaman Debugging API, Anda dapat mencari operasi API, memanggil operasi API, dan menghasilkan contoh kode untuk operasi API dari SDK yang berbeda. Di sisi kanan halaman, Anda dapat melihat contoh kode SDK di tab Contoh Kode. Di tab Hasil Debugging, Anda dapat melihat URL permintaan sebenarnya dan respons dalam format JSON.