

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 對範例應用程式的問題進行故障診斷
<a name="gs-device-troubleshoot"></a>

如果您在嘗試執行範例應用程式時遇到錯誤，以下是一些需要檢查的事項。

## 檢查憑證
<a name="gs-device-ts-step-1"></a>

如果憑證未處於作用中狀態， AWS IoT 將不會接受任何用於授權的連線嘗試。建立憑證時，很容易忽略 **Activate** (啟用) 按鈕。幸好，您可以從 [AWS IoT 主控台](https://console.aws.amazon.com/iot/home)啟用憑證。

**檢查您的憑證是否啟用**

1. 在 [AWS IoT 主控台](https://console.aws.amazon.com/iot/home) 的左側選單中，依序選擇 **Secure** (安全) 和 **Certificates** (憑證)。

1. 在憑證清單中，找出您為練習建立的憑證，並在 **Status** (狀態) 欄位中檢查其狀態。

   如果您不記得憑證的名稱，請檢查是否有任何為 **Inactive** (非作用中) 的憑證，以查看它們是否可能是您正在使用的憑證。

   選擇清單中的憑證來開啟其詳細資訊頁面。在詳細資訊頁面中，您可以看到其 **Create date** (建立日期) 來協助您識別憑證。

1. **若要啟動非作用中的憑證**，請從憑證的詳細資訊頁面中，選擇 **Actions** (動作)，然後選擇 **Activate** (啟用)。

如果您找到正確的憑證且為作用中，但執行範例應用程式時仍有問題，請檢查其政策，如下一個步驟所述。

您也可以嘗試遵循 [建立物件](create-iot-resources.md#create-aws-thing) 中的步驟，建立新的物件和新的憑證。如果建立新的物件，您需要給它新的物件名稱，並將新的憑證檔案下載到您的裝置。

## 檢查連接至憑證的政策
<a name="gs-device-ts-step-2"></a>

政策授權 中的動作 AWS IoT。如果用來連接至 AWS IoT 的憑證沒有政策，或者沒有允許它連接的政策，則即使憑證處於作用中狀態，連線也會遭到拒絕。

**檢查連接至憑證的政策**

1. 按照上一個項目中所述尋找憑證，並開啟其詳細資訊頁面。

1. 於憑證詳細資訊頁面的左側選單中，選擇 **Policies (政策)**，查看連接至憑證的政策。

1. 如果沒有任何政策連接至憑證，請選擇 **Actions** (動作) 選單，然後選擇 **Attach policy** (連接政策) 來新增一個政策。

   選擇您先前在[建立 AWS IoT 資源](create-iot-resources.md)中建立的政策。

1. 若有連接的政策，請選擇政策圖標來開啟其詳細資訊頁面。

   在詳細資訊頁面中，檢閱 **Policy document** (政策文件)，以確定它與您在 [建立 AWS IoT 政策](create-iot-resources.md#create-iot-policy) 中建立的政策包含相同的資訊。

## 檢查命令列
<a name="gs-device-ts-step-3"></a>

確定您已針對系統使用正確的命令列。在 Linux 和 macOS 系統上使用的命令通常與在 Windows 系統上使用的命令不同。

## 檢查端點地址
<a name="gs-device-ts-step-4"></a>

檢閱您輸入的命令，然後仔細檢查命令中的端點地址是否為 [AWS IoT 主控台](https://console.aws.amazon.com/iot/home)中的端點地址。

## 檢查憑證檔案的檔案名稱
<a name="gs-device-ts-step-5"></a>

將您輸入至命令中的檔案名稱與 `certs` 目錄中的憑證檔案名稱進行比較。

有些系統可能需要以引號括住檔案名稱才能正常運作。

## 檢查 SDK 安裝
<a name="gs-device-ts-step-6"></a>

確定您的 SDK 安裝完成且正確。

如有疑問，請在裝置上重新安裝 SDK。在大多數情況下，尋找名為**安裝適用於 {{SDK 語言}}的 AWS IoT 裝置 SDK** 教學課程章節並再次遵循程序至關重要。

如果您是使用**適用於 JavaScript 的AWS IoT 裝置 SDK**，請記住先安裝範例應用程式，然後再嘗試執行它們。安裝 SDK 不會自動安裝範例應用程式。在安裝了 SDK 之後必須手動安裝範例應用程式。