Hızlı Başlangıç: Bir Android CİHAZDAN IOT telemetri göndermeQuickstart: Send IoT telemetry from an Android device

IoT Hub, IoT cihazlarınızdan buluta depolama veya işleme amacıyla yüksek hacimlerde telemetri almanızı sağlayan bir Azure hizmetidir.IoT Hub is an Azure service that enables you to ingest high volumes of telemetry from your IoT devices into the cloud for storage or processing. Bu hızlı başlangıçta, telemetri bir IOT Hub'ına fiziksel veya sanal bir cihaz üzerinde çalışan bir Android uygulamasından gönderirsiniz.In this quickstart, you send telemetry to an IoT Hub from an Android application running on a physical or simulated device.

Hızlı Başlangıç, telemetri göndermek için önceden yazılmış bir Android uygulaması kullanır.The quickstart uses a pre-written Android application to send the telemetry. Telemetriyi Azure Cloud Shell'i kullanarak IOT Hub'ından okur.The telemetry will be read from the IoT Hub using the Azure Cloud Shell. Uygulamayı çalıştırmadan önce IOT hub oluşturma ve hub'ı ile cihaz kaydetme.Before you run the application, you create an IoT hub and register a device with the hub.

Azure Cloud Shell kullanmaUse Azure Cloud Shell

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı Azure Cloud Shell.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell, ya da bash PowerShell Azure hizmetleriyle çalışmak için kullanmanıza olanak sağlar.Cloud Shell lets you use either bash or PowerShell to work with Azure services. Bu makaledeki kodu, yerel ortamınıza herhangi bir şey yüklemeye gerek kalmadan çalıştırmak için Cloud Shell önceden yüklenmiş komutları kullanabilirsiniz.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Azure Cloud Shell başlatmak için:To launch Azure Cloud Shell:

SeçenekOption Örnek/bağlantıExample/Link
Kod bloğunun sağ üst köşesindeki Deneyin’i seçin.Select Try It in the upper-right corner of a code block. Dene ' nin seçilmesi, kodu Cloud Shell otomatik olarak kopyalamaz.Selecting Try It doesn't automatically copy the code to Cloud Shell. Azure Cloud Shell için deneme örneği
Tarayıcınızda Cloud Shell açmak için Başlat Cloud Shell düğmesine gidin veyaseçin. https://shell.azure.comGo to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. Cloud Shell yeni bir pencerede BaşlatLaunch Cloud Shell in a new window
Azure Portalsağ üstteki menü çubuğunda Cloud Shell düğmesini seçin.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Azure portaldaki Cloud Shell düğmesi

Bu makaledeki kodu Azure Cloud Shell çalıştırmak için:To run the code in this article in Azure Cloud Shell:

  1. Cloud Shell'i açın.Open Cloud Shell.
  2. Kodu kopyalamak için bir kod bloğunda Kopyala düğmesini seçin.Select the Copy button on a code block to copy the code.
  3. Kodu Windows ve Linux 'ta CTRL+SHIFT+v veya MacOS 'ta cmd+Shift+v ile Cloud Shell oturumuna yapıştırın.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.
  4. Kodu çalıştırmak için ENTER tuşuna basın.Press Enter to run the code.

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.If you don’t have an Azure subscription, create a free account before you begin.

ÖnkoşullarPrerequisites

  • Android Studio'da https://developer.android.com/studio/.Android studio from https://developer.android.com/studio/. Android Studio yükleme hakkında daha fazla bilgi için bkz. android yükleme.For more information regarding Android Studio installation, see android-installation.

  • Android SDK 27 bu makaledeki örnek tarafından kullanılır.Android SDK 27 is used by the sample in this article.

  • Microsoft Azure IOT uzantısı için Azure CLI Cloud Shell Örneğinize eklemek için aşağıdaki komutu çalıştırın.Run the following command to add the Microsoft Azure IoT Extension for Azure CLI to your Cloud Shell instance. IOT uzantısı, Azure CLI için IOT Hub, IOT Edge ve IOT cihaz sağlama hizmeti (DPS) belirli komutları ekler.The IOT Extension adds IoT Hub, IoT Edge, and IoT Device Provisioning Service (DPS) specific commands to Azure CLI.

    az extension add --name azure-cli-iot-ext
    
  • Örnek Android uygulaması bu çalıştırma hızlı başlangıcı GitHub azure-IOT-samples-java havuzda bir parçasıdır.The sample Android application you run in this quickstart is part of the azure-iot-samples-java repository on GitHub. İndirin veya kopyalayın azure-IOT-samples-java depo.Download or clone the azure-iot-samples-java repository.

IoT hub oluşturmaCreate an IoT hub

Bu bölümde Azure Portalkullanarak IoT Hub 'ı oluşturma açıklanmaktadır.This section describes how to create an IoT hub using the Azure portal.

  1. Azure Portal oturum açın.Sign in to the Azure portal.

  2. Kaynak oluştur' u seçin ve ardından Market ' i Ara alanına IoT Hub girin.Choose Create a resource, and then enter IoT Hub in the Search the Marketplace field.

  3. Arama sonuçlarından IoT Hub seçin ve ardından Oluştur' u seçin.Select IoT Hub from the search results, and then select Create.

  4. Temel bilgiler sekmesinde, alanları aşağıdaki gibi doldurun:On the Basics tab, complete the fields as follows:

    • Abonelik: Hub 'ınız için kullanılacak aboneliği seçin.Subscription: Select the subscription to use for your hub.

    • Kaynak grubu: Bir kaynak grubu seçin veya yeni bir tane oluşturun.Resource Group: Select a resource group or create a new one. Yeni bir tane oluşturmak için Yeni oluştur ' u seçin ve kullanmak istediğiniz adı girin.To create a new one, select Create new and fill in the name you want to use. Var olan bir kaynak grubunu kullanmak için bu kaynak grubunu seçin.To use an existing resource group, select that resource group. Daha fazla bilgi için bkz. Azure Resource Manager kaynak gruplarını yönetme.For more information, see Manage Azure Resource Manager resource groups.

    • Bölge: Hub 'ınızın bulunmasını istediğiniz bölgeyi seçin.Region: Select the region in which you want your hub to be located. Size en yakın konumu seçin.Select the location closest to you.

    • IoT Hub adı: Hub 'ınız için bir ad girin.IoT Hub Name: Enter a name for your hub. Bu adın küresel olarak benzersiz olması gerekir.This name must be globally unique. Girdiğiniz ad kullanılabilir durumdaysa yeşil bir onay işareti görünür.If the name you enter is available, a green check mark appears.

    Önemli

    IOT hub'ı bir DNS uç noktası olarak herkes tarafından bulunabilir çünkü bu ad, tüm hassas veya kişisel olarak tanımlanabilen bilgileri girmekten kaçınmak emin olun.Because the IoT hub will be publicly discoverable as a DNS endpoint, be sure to avoid entering any sensitive or personally identifiable information when you name it.

    Azure portal hub oluşturma

  5. İleri ' yi seçin: Hub 'ınızı oluşturmaya devam etmek için boyut ve ölçek.Select Next: Size and scale to continue creating your hub.

    Azure portal kullanarak yeni bir hub için boyut ve ölçek ayarlama

    Bu ekran aşağıdaki değerleri ayarlamanıza olanak sağlar:This screen allows you to set the following values:

    • Fiyatlandırma ve ölçek katmanı: Seçtiğiniz katman.Pricing and scale tier: Your selected tier. İstediğiniz sayıda özelliğe ve her gün çözümünüz aracılığıyla kaç tane ileti gönderdiğinize bağlı olarak çeşitli katmanlardan seçim yapabilirsiniz.You can choose from several tiers depending on how many features you want and how many messages you send through your solution per day. Ücretsiz katman, test ve değerlendirme için tasarlanmıştır.The free tier is intended for testing and evaluation. 500 cihazların hub 'a ve günde en fazla 8.000 iletiye bağlanmasını sağlar.It allows 500 devices to be connected to the hub and up to 8,000 messages per day. Her Azure aboneliği ücretsiz katmanda bir IoT Hub oluşturabilir.Each Azure subscription can create one IoT Hub in the free tier.

    • IoT Hub birimleri: Günlük birim başına izin verilen ileti sayısı, hub 'ın fiyatlandırma katmanına bağlıdır.IoT Hub units: The number of messages allowed per unit per day depends on your hub's pricing tier. Örneğin, hub 'ın 700.000 ileti girişini desteklemesini istiyorsanız iki adet S1 katmanı birimi seçersiniz.For example, if you want the hub to support ingress of 700,000 messages, you choose two S1 tier units. Diğer katman seçenekleri hakkında daha fazla bilgi için, bkz. doğru IoT Hub katmanını seçme.For details about the other tier options, see Choosing the right IoT Hub tier.

    • Gelişmiş ayarlar > cihazdan buluta bölümler: Bu özellik cihazdan buluta iletileri, iletilerin eşzamanlı okuyucu sayısıyla ilişkilendirir.Advanced Settings > Device-to-cloud partitions: This property relates the device-to-cloud messages to the number of simultaneous readers of the messages. Çoğu hub 'da yalnızca dört bölüm olması gerekir.Most hubs only need four partitions.

  6. Bu öğreticide, varsayılan seçimleri kabul edin ve ardından seçimlerinizi gözden geçirmek için gözden geçir + oluştur ' u seçin.For this tutorial, accept the default choices, and then select Review + create to review your choices. Bu ekrana benzer bir şey görürsünüz.You see something similar to this screen.

    Yeni hub oluşturma bilgilerini gözden geçirin

  7. Yeni hub 'ınızı oluşturmak için Oluştur ' u seçin.Select Create to create your new hub. Hub 'ın oluşturulması birkaç dakika sürer.Creating the hub takes a few minutes.

Cihaz kaydetmeRegister a device

Bir cihazın bağlanabilmesi için IoT hub’ınıza kaydedilmesi gerekir.A device must be registered with your IoT hub before it can connect. Bu hızlı başlangıçta Azure Cloud Shell kullanarak bir simülasyon cihazı kaydedeceksiniz.In this quickstart, you use the Azure Cloud Shell to register a simulated device.

  1. Cihaz kimliği oluşturmak için Azure Cloud Shell'de aşağıdaki komutu çalıştırın.Run the following command in Azure Cloud Shell to create the device identity.

    YourIoTHubName: Aşağıda bu yer tutucu IOT hub'ınız için seçtiğiniz adıyla değiştirin.YourIoTHubName: Replace this placeholder below with the name you choose for your IoT hub.

    MyAndroidDevice: MyAndroidDevice için kayıtlı cihaza verilen addır.MyAndroidDevice: MyAndroidDevice is the name given for the registered device. MyAndroidDevice gösterildiği gibi kullanın.Use MyAndroidDevice as shown. Cihazınız için farklı bir ad seçerseniz bu makalenin geri kalan bölümünde aynı adı kullanmanız ve örnek uygulamaları çalıştırmadan önce bunlarda da cihaz adını güncelleştirmeniz gerekir.If you choose a different name for your device, you will also need to use that name throughout this article, and update the device name in the sample applications before you run them.

    az iot hub device-identity create --hub-name YourIoTHubName --device-id MyAndroidDevice
    
  2. Yeni kaydettiğiniz cihazın cihaz bağlantı dizesini almak için aşağıdaki komutları Azure Cloud Shell'de çalıştırın:Run the following commands in Azure Cloud Shell to get the device connection string for the device you just registered:

    YourIoTHubName: Aşağıda bu yer tutucu IOT hub'ınız için seçtiğiniz adıyla değiştirin.YourIoTHubName: Replace this placeholder below with the name you choose for your IoT hub.

    az iot hub device-identity show-connection-string --hub-name YourIoTHubName --device-id MyAndroidDevice --output table
    

    Şu ifadeye benzer şekilde görünen cihaz bağlantı dizesini not edin:Make a note of the device connection string, which looks like:

    HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyAndroidDevice;SharedAccessKey={YourSharedAccessKey}

    Bu hızlı başlangıcın ilerleyen telemetri göndermek için bu değeri kullanın.You use this value later in this quickstart to send telemetry.

Telemetri göndermeSend telemetry

  1. Android Studio'da GitHub örnek Android projesini açın.Open the GitHub sample Android project in Android Studio. Proje kopyalanmış veya indirilen kopyanızı şu dizinde bulunur azure IOT örnek java depo.The project is located in the following directory of your cloned or downloaded copy of azure-iot-sample-java repository.

     \azure-iot-samples-java\iot-hub\Samples\device\AndroidSample
    
  2. Android Studio'da açın gradle.properties değiştirin ve örnek proje için Device_Connection_String yer tutucusunu önceki ettiğiniz cihaz bağlantısı dizeniz ile.In Android Studio, open gradle.properties for the sample project and replace the Device_Connection_String placeholder with your device connection string you noted earlier.

    DeviceConnectionString=HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyNodeDevice;SharedAccessKey={YourSharedAccessKey}
    
  3. Android Studio'da dosya > projeyi Gradle dosyalarıyla Eşitle.In Android Studio, click File > Sync Project with Gradle Files. Derleme tamamlandığında doğrulayın.Verify the build completes.

    Not

    Proje eşitleme başarısız olursa aşağıdakilerden biri olabilir:If the project sync fails, it may be for one of the following reasons:

    • Eski Android Studio sürümünüz için Android Gradle eklentisi ve projede başvurulmuş Gradle sürümleridir.The versions of the Android Gradle plugin and Gradle referenced in the project are out of date for your version of Android Studio. İzleyin bu yönergeleri başvuru ve doğru sürümlerini eklentisi ve Gradle yüklemenizin yükleyin.Follow these instructions to reference and install the correct versions of the plugin and Gradle for your installation.
    • Android SDK için lisans anlaşması imzalı değil.The license agreement for the Android SDK has not been signed. Derleme çıkışını Lisans Sözleşmesi'ni imzalamak ve SDK'yı indirmek için yönergeleri izleyin.Follow the instructions in the Build output to sign the license agreement and download the SDK.
  4. Derleme tamamlandıktan sonra tıklayın çalıştırma > 'uygulamayı' Çalıştır.Once the build has completed, click Run > Run 'app'. Fiziksel bir Android cihazı veya Android öykünücüsünde çalıştırmak üzere uygulamayı yapılandırır.Configure the app to run on a physical Android device or an Android emulator. Bir Android uygulaması bir fiziksel cihaz veya öykünücü üzerinde çalışan daha fazla bilgi için bkz: uygulamanızı çalıştırma.For more information on running an Android app on a physical device or emulator, see Run your app.

  5. Uygulama yüklendikten sonra tıklayın Başlat IOT Hub'ınıza telemetri göndermeye başlaması düğmesi:Once the app loads, click the Start button to start sending telemetry to your IoT Hub:

    Uygulama

Hub’ınızdan telemetri okumaRead the telemetry from your hub

Bu bölümde, Azure Cloud Shell ile kullanacağınız IOT uzantısı Android cihaz tarafından gönderilen cihaz iletileri izlemeye yönelik.In this section, you will use the Azure Cloud Shell with the IoT extension to monitor the device messages that are sent by the Android device.

  1. Azure Cloud Shell'i kullanarak, IoT hub’ınızdan gelen iletilere bağlanmak ve bu iletileri okumak için aşağıdaki komutu çalıştırın:Using the Azure Cloud Shell, run the following command to connect and read messages from your IoT hub:

    YourIoTHubName: Aşağıda bu yer tutucu IOT hub'ınız için seçtiğiniz adıyla değiştirin.YourIoTHubName: Replace this placeholder below with the name you choose for your IoT hub.

    az iot hub monitor-events --hub-name YourIoTHubName --output table
    

    Aşağıdaki ekran görüntüsünde, IOT hub'ı Android cihaz tarafından gönderilen telemetriyi aldığında olarak çıktı gösterir:The following screenshot shows the output as the IoT hub receives telemetry sent by the Android device:

    Azure CLI kullanarak cihaz iletilerini okuma

Kaynakları temizlemeClean up resources

Bir sonraki önerilen makaleye geçecekseniz oluşturduğunuz kaynakları tutabilir ve yeniden kullanabilirsiniz.If you will be continuing to the next recommended article, you can keep the resources you've already created and reuse them.

Geçmeyecekseniz ücret kesilmesini önlemek için bu makalede oluşturulan Azure kaynaklarını silebilirsiniz.Otherwise, you can delete the Azure resources created in this article to avoid charges.

Önemli

Silinen kaynak grupları geri alınamaz.Deleting a resource group is irreversible. Kaynak grubu ve içindeki tüm kaynaklar kalıcı olarak silinir.The resource group and all the resources contained in it are permanently deleted. Yanlış kaynak grubunu veya kaynakları yanlışlıkla silmediğinizden emin olun.Make sure that you do not accidentally delete the wrong resource group or resources. IoT Hub'ı tutmak istediğiniz kaynakların bulunduğu mevcut bir kaynak grubunda oluşturduysanız kaynak grubunu silmek yerine IoT Hub kaynağını silin.If you created the IoT Hub inside an existing resource group that contains resources you want to keep, only delete the IoT Hub resource itself instead of deleting the resource group.

Bir kaynak grubunu adıyla silmek için:To delete a resource group by name:

  1. Azure portalda oturum açın ve Kaynak grupları’nı seçin.Sign in to the Azure portal and select Resource groups.

  2. Ada göre filtrele metin kutusuna IoT Hub içeren kaynak grubunun adını yazın.In the Filter by name textbox, type the name of the resource group containing your IoT Hub.

  3. Sonuç listesinde kaynak grubunuzun sağında . .. ' ı seçin ve kaynak grubunu silin.To the right of your resource group in the result list, select ... then Delete resource group.

    Sil

  4. Kaynak grubunun silinmesini onaylamanız istenir.You will be asked to confirm the deletion of the resource group. Onaylamak için kaynak grubunuzun adını yeniden yazın ve ardından Sil' i seçin.Type the name of your resource group again to confirm, and then select Delete. Birkaç dakika sonra kaynak grubu ve içerdiği kaynakların tümü silinir.After a few moments, the resource group and all of its contained resources are deleted.

Sonraki adımlarNext steps

Bu hızlı başlangıçta bir IOT Kurulum olduğunuz hub'ı kullanarak bir Android uygulaması hub'a sanal telemetri gönderilen bir cihaz kaydettiniz ve Azure Cloud Shell'i kullanarak hub'dan telemetri okumak.In this quickstart, you've setup an IoT hub, registered a device, sent simulated telemetry to the hub using an Android application, and read the telemetry from the hub using the Azure Cloud Shell.

Bir arka uç uygulamasından simülasyon cihazınızı denetlemeyi öğrenmek için sonraki hızlı başlangıçla devam edin.To learn how to control your simulated device from a back-end application, continue to the next quickstart.