Help us understand the problem. What is going on with this article?

AWS Mobile Hubで作ったスマホアプリでAMIMOTOを起動させる

More than 3 years have passed since last update.

概要

hub_splash_1.png

AWSのMobile Hubで簡単にmobileアプリが作れるとのことなので、試して見ました。
実機からAMIMOTOのEC2インスタンスを起動・停止ができるアプリを作ってみましょう

Lambdaファンクション

まずは、AMMIMOTOを起動と停止させるファンクションを作ります。

start-instance

var AWS = require('aws-sdk');

function startInstance(instance_id, context) {
    var ec2 = new AWS.EC2();
    var params = {
        InstanceIds: [
            instance_id
        ]
    };

    ec2.startInstances(params, function(err, data) {
        if (err) console.log(err, err.stack);
        else     context.done();
    });
}

exports.handler = function(event, context) {
    startInstance(event.instance_id, context);
};

Mobile Hubからアプリを作る

今回はMobile HubのCloud Logicの機能を使って、アプリからLambdaを叩ける用にします。

スクリーンショット 2015-10-27 8.52.12.png

Cloud Logicを有効化して、アプリから叩きたいLambdaファンクションを指定します。

スクリーンショット 2015-10-27 8.57.10.png
その後Buildメニューを選択して、iOSを選択します。Download iOS source packageをクリックすると構築済みのiOSアプリのパッケージがダウンロードできます。

アプリをiPhoneへインストール

Xcode7で1円も払わずに自作iOSアプリを実機確認するにあるようにここ最近出たxcode7では、無料で特に申請や難しい手順もなく、作ったアプリをiPhoneへインストールして立ち上げることが出来ます。

スクリーンショット 2015-10-27 9.04.18.png
xcode7でMobile Hubからダウンロードしたアプリを読み込みます。そしてUSBでiPhoneを接続。ビルドの対象に自身のiPnoneを指定した上で実行ボタンを押すだけで実機にインストールして実行出来ます。

IMG_0374 copy copy.jpg
こんな感じで実機の上にアプリが現れます。

アプリの実行

IMG_0375.jpg
アプリを実行するとこんな画面が立ち上がります。デザインを適用しない場合にMobile Hubが自動で作ってくれる画面ですね。Cloud Logicを選択してLambdaファンクションを実行しましょう

IMG_0376.jpg
start-instance関数を設定してinvokeをタップします。

スクリーンショット 2015-10-27 9.29.20.png
こんな感じでインスタンスが起動し始めました。

スクリーンショット 2015-10-27 9.51.48.png
しばらくしてブラウザからアクセスすると、AMIMOTO起動しました!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした