地域貢献のために考えてきたことを表現するiPhone iOSアプリを開発しています。
iPhone iOSのXcode、App Store Connectを使ったiPhoneアプリの開発目標は、iPhoneを使って、個人と個人が、日本人、日本人に問わず、BONDS iPhoneアプリを通じて自由に商売をしたり、コミュニケーションができるアプリを作りたいと思っています。
iPhoneのSwiftUIプログラミングをやったことがなかった私が、SwiftUIプログラミングのスキルアップ、夢に向かって挑戦するために、Apple社のXcode/App Store Connect/SwiftUIによって、iPhoneアプリを開発しています。初心者でもうまく出来上がったらリリースしたいと思いますので、ぜひ応援お願いします。このページではXcodeでのSwiftUIのiPhoneアプリについて、開発時に得られたノウハウ・考え方をまとめています。
プログラミングを通じて、地域発展、地域貢献の悩みを抱える人を解決し、幸せになって頂きたいです。
個人で実施していることですので、目標はなかなか達成しないかもしれませんが、一緒にやってみたいという仲間を見つけて実現していきたいと思います。
以下は、Apple社のTap To Payという機能を実装した時に実現できるイメージです。このように、いつでもどこでもiPhoneを通じて商売ができる。外国人だって日本人だって関係なく、旅行先で好きな商品を購入できる。このような世界がもう直ぐ日本にもやってきます。わくわくする世界が待っていると思いませんか?
iPhoneアプリ開発の大まかな流れ
iPhoneアプリの開発について何から始めたら良いのでしょうか?これから紹介していきます。
課金・無料アプリに関わらず、まずはプログラミングができる状態にする必要がありますので、まずはプログラミング環境であるXcodeをインストールするところまで目指しましょう。
初心者向けのおすすめのiPhone開発の進め方
iPhoneプログラミングを進めるには、まずはプログラムを実施するためのパソコン、そのパソコンにインストールするXcodeと呼ばれる開発環境を用意する必要があります。このブログを見ていただいているということは、何かしらインターネット環境とパソコンを持っている状況だと思いますので、iPhoneプログラミングができる状況なのかを確認してみましょう。
- パソコンは、Apple社のMacが必要。なるべくメモリなど高スペックなものを推奨。(Windows PCでは開発できません。)
- MacにXcodeのインストールが必要。
まだ、プログラミングを実施したことがない人は、1と2を準備しましょう。
Xcodeがインストールできたら、Xcodeを開いて、プログラミングを始めましょう。
プログラミング手法として、SwiftUIを使った方法と、Storyboard(ストーリーボード)を使った方法の2種類があります。
このブログでは、最新化されるSwiftUIをメインに扱っていますので、Storyboard(ストーリーボード)での開発を進める方は別のサイトをお探しください。
プログラミングがまだできるかは不明確なので、Xcodeだけを使って、無料で開発することをお勧めします。その後、ある程度形になってきたタイミングで、Apple Store Connectを使ってリリースのための準備を進めることを推奨します。
プログラミングに自信がある中級者向けのおすすめのiPhone開発の進め方
プログラミングがある程度実施できて、リリースを目指したい方は、初めからApple Store Connectの利用料を支払い、プログラミングを実施することをお勧めします。
一度Xcodeで実施した内容をまた、置き換える必要があるので、あらかじめ最終形態をイメージしながら進めたり、本番環境で実機で動かして対応することができるので、本番環境でのXcodeでの実装をお勧めします。
Apple Developerアカウントに登録する方法まとめ
Apple Developerアカウントに登録する方法まとめています。初心者向けの方はスキップしてもらっても問題ありません。まずは、Xcode環境だけでプログラミングが全て実施できます。
iPhoneアプリをリリース、課金アプリを実装するためには、必ずApple Store Connectの申請が必要になりますので、ぜひリリース準備ができたら登録をすることを検討してみてください。身銭を切ると、本気になれると言います。プログラミングを習得するためにも勉強代と思って最新のAppleの技術を習得してみましょう。
App Store Connectを使ってみよう
Apple Store Connectでは、リリースのための準備、サブスクリプションやアプリ課金のアイテムの登録、証明書の登録などを実施することができます。リリース後には、キャンペーンやオファーコードの発行など様々なサービスが用意されています。詳しくは別の記事で紹介しています。
チュートリアル:フロー1:起動時広告を表示し、収益を得る機会を設ける
iPhoneアプリを起動した時に表示される広告を導入することで、収益化を図ります。ユーザは課金があると中々手を出しづらいですが、広告をみるだけでサービスが使えるのであれば、win-winの関係が構築できると思うのです。
無料だけで使いたいというユーザは、将来的にも優良な顧客になってくれる見込みが少ないですが、少しでも良いサービスを作って、ユーザに課金してもらえるサービスを作りたいものです。
Apple Developer向け課金システムの導入方法を紹介します。
Appleの構想の基本として、アプリ内に広告を入れるという概念を排除しています。そのため利用ユーザからアプリ利用で収入を得るためには、以下の2つの対応を実施する必要があります。Appleだけのサービスでやりくりする場合は、課金アイテムを作るか、サブスクリプションを導入するしかありません。
- Appleの標準の機能では、Apple Payやサブスクリプションなど、ユーザが定期的にお金を払ってくれるサービスでなければ、利用ユーザーからお金を支払ってもらう機会がありません。
- Google社のAdMobというサービスを使って、アプリを無料でも開発者にお金が入ってくる仕組みを入れることを検討しています。
チュートリアルの1では、GoogleのAdMobの機能を使って、アプリを立ち上げた際に、広告が表示されるようにしましょう。
すると、アプリを起動した時に自動で広告が表示され、その結果、ユーザが広告を選択して広告を見てくれれば収益になります。ユーザは、広告を見たくないと思えば、広告をスキップしてアプリを立ち上げることができます。
チュートリアル:フロー2:Topページを実現する。
次は、AdMobの起動時広告を表示した後に表示されるトップページを設計してみましょう。
以下の例では、ショッピングページをイメージしたサイトを実装したイメージ画像になります。
ここに何を表示させるかが、一番大事になりますので、ぜひ色々と構想を練ってみてください。
トップページは、どのメニューを表示するかは検討中ですが、上記例では、ショップサイトを表示しています。
チュートリアル:フロー3:メニュー画面_AmazonアソシエイトとブログとTwitterとのつながりを作る。
トップ画面を作ると、1画面だけでは、ユーザは満足できません。そこで、画面の上部または、下部に画面を遷移させるためのボタンを配置する必要が出てきます。
上部に表示させるメニュー画面を考えてみましたので、参考になればと思います。
メニュー_Amazonアソシエイト表示
iPhoneアプリから、Amazonセラーセントラルで販売する商品にダイレクトに飛ぶことができれば、Amazonで販売する商品が売れやすくなり、直接ユーザに商品を買ってもらいやすくなります。
以下の例では、AmazonのトップページのURLを設定してみましたが、商品へのダイレクトURLを設定することで以下のようにAmazonサイトが表示され、直接Amazonから商品を買うことができます。
この事例では、Amazonのサイトを表示していますが、楽天やYahoo、またはその他のサービスを表示することも可能です。どのように、iPhoneアプリと外部のサービスを連携させるのかを考えてみましょう。
AmazonのアフィリエイトであるAmazonアソシエイトの広告を表示させてみようと、紹介コードを使ってアプリからAmazonを表示できるようにしてみました。
Amazonセラーセントラルを使った商品を販売することになった時に、販売する商品へのダイレクトアクセスを実現するための機能になります。
紹介する商品をAmazonで取り扱っている場合に、この機能を使って自社のサービスへのリンクをスムーズに行うことでAmazon経由での売上アップに貢献することになります。
メニュー_Wordpressブログ表示
iPhoneアプリからWordPressのブログを表示したいと考えました。iPhoneアプリ内での課金として用意されているApple Payを使ったり、商品毎のページを用意することができます。しかし、商品やサービスをすべてiPhoneアプリで実装するためには、すべてiPhoneアプリ内で実装することが必要となります。そこで、あらかじめ、最低限の商品と購入機能だけを実装しておき、詳細のサービスについては、Wordpressのブログを見てもらうという形で、よりユーザに詳細な情報を表示することができるようになります。
このように、iPhoneアプリにもブログにもショップ機能を導入することで、Amazonセラーセントラル、ブログ(WooCommerce)、iPhoneアプリで商品やサービスを販路を拡大することができます。そのため、ブログにアクセスアップと、アプリだけでは紹介できない情報について、補完しあうことができるようになります。
メニュー_Twitter表示
Twitterで呟いている内容がアプリで見れたら嬉しいと思い、アプリでいつでも見れるようにしました。
ブログを作っても、なかなかキーワードが上位に表示されるとは保証がありません。
SEO対策など常に時間をかけるわけにはいきませんので、SNSの力を借りましょう。
例えば、SNSでiPhoneアプリを紹介する、Wordpressのブログを紹介する、YouTubeの商品動画を紹介する、Amazon商品ページを紹介するなどができるようになります。
Twitterで人気がでればリツイートなどでバズると、商品の売り上げが見込めるのではないでしょうか?
アプリに入れた内容をいつでも見られるようにするのはアプリを更新しなくてもダウンロードしてくれたユーザへのダイレクトメッセージを送ることができるようになります。
SNSは、iPhoneアプリやWordpressのブログなどはリアルタイムでのユーザとの情報のやり取りには向いていません。専用サイトで商品レビューを書き込んでもらったりするのも、商品の良さを伝えることになります。色々な販路で商品やサービスが売れる仕組みを構築しましょう。
メニュー_設定でカスタマイズする。
無料で提供するサービスだけではなく、お金を払ってくれたiPhoneアプリユーザ向けに、専用のカスタマイズ機能を提供したいと思いました。
一般的なサービスでもありますよね?たとえば、お金を多く使った人は、ランクが上がってポイント還元率を高くしたり、プレミアムサービスとして、普通では利用できない機能が利用できたり。
利用するユーザが優越感を感じてもらったり、よりユーザがファンになってもらえるようにすることができれば、また、商品やサービスを購入してもらえる可能性があります。
以下の例の場合、メニュー画面のURLを自分用に変更して、使いやすいページを表示させるというサービスを検討した事例になります。
メニュー_インフォメーション
アプリを使うする上で、最低限必要な、免責事項の表示、著作権について、プライバシーポリシーなど表示する必要があります。どのような内容を表示するべきかは、提供する内容次第ですので、実際には、専門家の法律家などに相談することが必要になります。
チュートリアル:フロー4:コンテンツ画面_インフラサービスを提供する。
ショッピングサービス(Apple Pay)
Apple社のアップルPayを使ってショッピングカートを作りたいと思い、骨格を作ってみました。画像内のプラスボタンを押下することで商品がCartに追加され、Apple Payで支払いができるようになっています。
SwiftUI PassKit (Apple Pay and Wallet)機能を使ってショピング機能を作ろう。
購入した商品をPassとして発行することで、購入した商品をチケットとして扱う事ができるようになります。
ショッピングカートサービス
アプリ内課金サービス(サブスクリプション、Tap To Pay)
Apple Pay(Tap to Pay)を使えるPOSシステムを作る
アプリ内通貨サービス
Apple iOS Appで有料の課金アプリを作成する。【サブスクリプション】
コインを買った時に、通帳に入れる。通帳に入っているコインを使ったアプリの対応をする。
YouTubeサービス
YouTubeの機能をアプリに入れることで、商品の紹介動画を直接アプリに表示することができます。
YouTube チャンネル登録が伸びる魅力的なコンテンツを作るには?
WordPress記事投稿サービス
ブログの記事をiPhoneアプリに表示できたらその記事の中の情報とアプリを連携させることができるのではないかと考えました。また、毎回iPhoneアプリを改修するのではなく、ブログを更新することでアプリも常に新しい情報を提供できるのではないかと思うのです。
プログラミングの難しい点は、常に最新の技術を導入しなければ陳腐化してしまうというところにあります。普段アプリの開発者に頼れない人からすると、一度開発したアプリをずっと使いたいですよね。
Swift UIでWP REST APIを呼び出し、WordPressの記事をアプリに表示させる方法です。
例えば、Wordpress側で商品やサービスの詳細の内容をまとめておき、連携させることができれば、iPhoneアプリ側の改修をすることなく新しいサービスや商品を紹介することができます。
以下の事例は、直接Wordpressの記事を取得して、アプリに直接表示させています。