スイーツ(笑)と呼ばないで!!
| |||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
11/24/00:36 [PR] |
11/18/16:51 iOS端末を簡単に業務アプリ専用端末にする方法Swift使ってiOSアプリを趣味で作成したりするが、
業務で使用するほどには詳しくない。 逆に、Webアプリは業務でよく作成する。 そんな中以下のような要件のお仕事の依頼が来た場合、こんな選択肢もありますよ、という話。 【要件】 1. iOS端末を使って業務アプリを構築したい。 2. タッチパネルの機能を有効に使いたい。 3. フルスクリーンで利用したい。 4. その業務アプリしか使用できないようにしたい。 5. メンテナンスが大変なのでSwiftとか使ったネイティヴアプリは嫌 さぁ、皆さんどうでしょうか、最後の要件5を読んで「ん?」となったのではないでしょうか? こういうアプリ作成の時には、よく 「じゃー、ガワアプリだけ作って、中身は普通のHTMLとかJSとか使ったWebアプリにしましょー」 という話がでる。 でも、「ネイティブアプリは嫌」と言われるとそのソリューションは使えませんね。 そんな時の方法をこれからご紹介します。 まず、WebアプリをSPA(シングルページアプリケーション)で作成します。 そして、作成したWebアプリのヘッダーに <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> こんな感じのmetaタグを設定します。 1行目がフルスクリーンにするための設定で、2行目はステータスバーの表示についての設定です。 これを設定したURLをSafariで開き、ブラウザの下にあるアイコンメニューの四角に上矢印的なアイコンをクリックしてホーム画面に追加を選択します。そうするとそのページへのショートカットがホーム画面に保存されます。 その際 <link rel="apple-touch-icon" href=“icon.png”> こんなタグを仕込んでおくとアイコンが設定できるので、他のネイティヴアプリを見た目上全く違いが無くなりますね。 さあ、これで、ホーム画面上のアイコンを起動するとフルスクリーンのアプリが起動して如何にも業務アプリっぽくなりましたね。これで既にお客さんの要件のうち要件4を除いて全てクリアした状態となります。 要件4はどうしましょうか? 実は、上記の手順を踏んだことで、iOS内部における取り扱いにおいては、SafariでそのWebアプリを開いた時とは別の取り扱いになります。サーバサイドで取得されるUser AgentもSafariとは異なったりしますね。 少し回りくどい言い方をしましたが、これでいわゆるシングルアプリモードが使えるようになったということです。 設定>一般>アクセシビリティ>アクセスガイド を開き、アクセスガイドの機能をオンにします。 パスコード設定のメニューより、シングルアプリモードを解除するためのパスコードやTouch IDの使用不使用が設定できます。 さあ準備は整いました。 ホーム画面から自作アプリのアイコンをクリックします。 フルスクリーンで立ち上がりましたね。 そこでホームボタンを3回押します。 これによりアクセスガイドが開始できます。 ちなわち、もう他のアプリに切り替えることは不可能になります。 (ちなみに、解除する際も同じくホームボタン3回押しでパスコード入れます) さぁ、要件4も満たすことができましたね。 いかがだったでしょうか。 Swiftなど使ったiOSネイティヴアプリ構築のノウハウはない。でも、今ある技術でそれっぽく業務アプリを作りたい、特に端末固有の機能を使ったりする必要はないんだ、というあなた、早速今日からなんちゃってiOSアプリを作成してみましょー。 PR
|
|
|