Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh kode untuk AWS IoT menggunakan AWS SDKs
Contoh kode berikut menunjukkan cara menggunakan AWS IoT kit pengembangan AWS perangkat lunak (SDK).
Dasar-dasar adalah contoh kode yang menunjukkan kepada Anda bagaimana melakukan operasi penting dalam suatu layanan.
Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Memulai
Contoh kode berikut menunjukkan cara untuk mulai menggunakan AWS IoT.
- C++
-
- SDKuntuk C ++
-
Kode untuk CMakeLists file.txtCMake.
# Set the minimum required version of CMake for this project.
cmake_minimum_required(VERSION 3.13)
# Set the AWS service components used by this project.
set(SERVICE_COMPONENTS iot)
# Set this project's name.
project("hello_iot")
# Set the C++ standard to use to build this target.
# At least C++ 11 is required for the AWS SDK for C++.
set(CMAKE_CXX_STANDARD 11)
# Use the MSVC variable to determine if this is a Windows build.
set(WINDOWS_BUILD ${MSVC})
if (WINDOWS_BUILD) # Set the location where CMake can find the installed libraries for the AWS SDK.
string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all")
list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH})
endif ()
# Find the AWS SDK for C++ package.
find_package(AWSSDK REQUIRED COMPONENTS ${SERVICE_COMPONENTS})
if (WINDOWS_BUILD AND AWSSDK_INSTALL_AS_SHARED_LIBS)
# Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging.
# set(BIN_SUB_DIR "/Debug") # If you are building from the command line, you may need to uncomment this
# and set the proper subdirectory to the executables' location.
AWSSDK_CPY_DYN_LIBS(SERVICE_COMPONENTS "" ${CMAKE_CURRENT_BINARY_DIR}${BIN_SUB_DIR})
endif ()
add_executable(${PROJECT_NAME}
hello_iot.cpp)
target_link_libraries(${PROJECT_NAME}
${AWSSDK_LINK_LIBRARIES})
Kode untuk file sumber hello_iot.cpp.
#include <aws/core/Aws.h>
#include <aws/iot/IoTClient.h>
#include <aws/iot/model/ListThingsRequest.h>
#include <iostream>
/*
* A "Hello IoT" starter application which initializes an AWS IoT client and
* lists the AWS IoT topics in the current account.
*
* main function
*
* Usage: 'hello_iot'
*
*/
int main(int argc, char **argv) {
Aws::SDKOptions options;
// Optional: change the log level for debugging.
// options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Debug;
Aws::InitAPI(options); // Should only be called once.
{
Aws::Client::ClientConfiguration clientConfig;
// Optional: Set to the AWS Region (overrides config file).
// clientConfig.region = "us-east-1";
Aws::IoT::IoTClient iotClient(clientConfig);
// List the things in the current account.
Aws::IoT::Model::ListThingsRequest listThingsRequest;
Aws::String nextToken; // Used for pagination.
Aws::Vector<Aws::IoT::Model::ThingAttribute> allThings;
do {
if (!nextToken.empty()) {
listThingsRequest.SetNextToken(nextToken);
}
Aws::IoT::Model::ListThingsOutcome listThingsOutcome = iotClient.ListThings(
listThingsRequest);
if (listThingsOutcome.IsSuccess()) {
const Aws::Vector<Aws::IoT::Model::ThingAttribute> &things = listThingsOutcome.GetResult().GetThings();
allThings.insert(allThings.end(), things.begin(), things.end());
nextToken = listThingsOutcome.GetResult().GetNextToken();
}
else {
std::cerr << "List things failed"
<< listThingsOutcome.GetError().GetMessage() << std::endl;
break;
}
} while (!nextToken.empty());
std::cout << allThings.size() << " thing(s) found." << std::endl;
for (auto const &thing: allThings) {
std::cout << thing.GetThingName() << std::endl;
}
}
Aws::ShutdownAPI(options); // Should only be called once.
return 0;
}
Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara pengaturan dan menjalankannya di Repositori Contoh Kode AWS.
- Java
-
- SDKuntuk Java 2.x
-
Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara pengaturan dan menjalankannya di Repositori Contoh Kode AWS.
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.iot.IotClient;
import software.amazon.awssdk.services.iot.model.ListThingsRequest;
import software.amazon.awssdk.services.iot.model.ListThingsResponse;
import software.amazon.awssdk.services.iot.model.ThingAttribute;
import software.amazon.awssdk.services.iot.paginators.ListThingsIterable;
import java.util.List;
public class HelloIoT {
public static void main(String[] args) {
System.out.println("Hello AWS IoT. Here is a listing of your AWS IoT Things:");
IotClient iotClient = IotClient.builder()
.region(Region.US_EAST_1)
.build();
listAllThings(iotClient);
}
public static void listAllThings(IotClient iotClient) {
iotClient.listThingsPaginator(ListThingsRequest.builder()
.maxResults(10)
.build())
.stream()
.flatMap(response -> response.things().stream())
.forEach(attribute -> {
System.out.println("Thing name: " + attribute.thingName());
System.out.println("Thing ARN: " + attribute.thingArn());
});
}
}
- Kotlin
-
- SDKuntuk Kotlin
-
Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara pengaturan dan menjalankannya di Repositori Contoh Kode AWS.
import aws.sdk.kotlin.services.iot.IotClient
import aws.sdk.kotlin.services.iot.model.ListThingsRequest
suspend fun main() {
println("A listing of your AWS IoT Things:")
listAllThings()
}
suspend fun listAllThings() {
val thingsRequest =
ListThingsRequest {
maxResults = 10
}
IotClient { region = "us-east-1" }.use { iotClient ->
val response = iotClient.listThings(thingsRequest)
val thingList = response.things
if (thingList != null) {
for (attribute in thingList) {
println("Thing name ${attribute.thingName}")
println("Thing ARN: ${attribute.thingArn}")
}
}
}
}