初めてアップル純正アプリ作成ソフト(Xcode)で作ってます。SwiftからPHP経由でMySQLへデータを送れました

環境:Xcode 11

Swift5

iOS13.3

今回初めてXcodeを使ってアプリを作っています。Swiftに触るのも初めてです。

アップルのApp Store(アップ・ストア)の「Xcode11」ダウンロードページ
アップルのApp Store(アップ・ストア)の「Xcode11」ダウンロードページ

そのため、今回のMySQLへのデータ送信でも、Swift側のPHPへデータを送るコードを書くのが最も手間取りました。

いろんなサイトを調べて試してみたのですが、MySQLからデータを取得するコードはたくさんサイトがあったのですが、送信するためのコードを掲載しているサイトは少なく、仮にあってもバージョンが古くて、わたしのような初心者には古いところを新しいコードに修正作業は難しすぎてできなかったので、唯一今回参考にさせていただいたサイト様がピッタリわたしのニーズにあっていました。

ただ、そのコードにも、送信だけではなく、JSON(JavaScript Object Notation)を使用した、MySQLからのデータ受信の箇所がありましたので、その箇所はコメントアウトしました。

でも、今回初めてXcode(エックスコード)を使ってみてやはり難しいという印象を受けました。

まず何よりも、しょっちゅうコードが新しくなっていくことです。

そのため、インターネットで調べても古いコードの記事が多く、そのサイトのコードを試しても、コードが古くてもう使えないものだったケースが大変多かったです。

JavaScript(ジャバスクリプト)の時も、PHP(ピー・エイチ・ピー)の時も、Swift(スイフト)の時ほど頻繁にコードが変わるということはなくて、たとえ変わってもある程度互換性があって古いコードが使えるというケースがありましたが、Swift(スイフト)は頻繁にコードが新しくなって、Xcode自体もつい3ヶ月前にバージョン11が出たと思ったら今は11.3で、コードが頻繁に変わります。

iOSのバージョンアップに合わせてアップデートされているらしく、現在のiOSの最新バージョンは13.3ですが、それに合わせてXcode(エックスコード)も11.3になっているようです。

Xcodeで使われるプログラミング言語のSwift(スイフト)の現在のバージョンは5ですが、インターネットで調べて出てくる記事の多くはSwift4が最も多くて、古いコードですので、仮にコードを利用させていただいてもエラーが出てしまうケースが多いです。

インターネットで調べて目的のコードが見つかってもそのコードが新しいSwiftに対応している割合はざっと10回試して1回くらいでした。

アップル自慢のSwiftのようですが、ある記事を読んだのですが、アイフォーンアプリ開発者は、この新しい言語を歓迎していないエンジニアも多く、以前のアップルアプリ開発言語のObjective-C(オブジェクティブ・シー)に戻りたがっているとのことでした。

読んだのは下記の記事です。

なぜ多くの開発者が今なお Swift よりも Objective-C を好むのか - Frasco
iOS SDK がアナウンスされてから数年間、アプリ開発ゴールドラッシュの恩恵を得ようと、開発者たちは Objective-C の世界に群がっていました。しかしその時代は去りました

わたしはアップルのiOSアプリだけではなく、アンドロイドのアプリも作っていますが、これはMonaca(モナカ)という、HTMLを使ってアプリが作れるソフトを使って行っています。

アップルとは無関係なアシアルという会社が提供しているサービスですが、無料で利用できるアップルのXcodeとは違って、年に5万円ほどの利用料金がかかります。

アンドロイドとアップルのアプリが作れるMonaca(モナカ)の説明
モナカの説明文

私の場合はこれはもちろん会社持ちですが、全く個人で作っている場合には負担が大きすぎます。

しかし最近こういったソフトで作ったアプリに対するアップルの態度が硬化しているのを感じます。

そもそも今回、今までずっとアプリ作りに使用してきたモナカではなく、Xcodeなのかという点ですが、アップルの審査が厳しくなって、アップルの開発ソフトであるXcodeでつけるボタン類がついていないという理由で3回審査に落とされたからです。

現に今作っているアプリも、Xcodeで作る前に、モナカで作って審査に提出したところ、デザインの問題で落とされました。今回の”デザイン”の意味は、アップル純正アプリ開発ソフトのXcode(エックスコード)で付けるボタンなどの部品がついていないということです。

モナカにはXcodeでつけるボタンと似たものはありますが、大部分はモナカ独自のものでモナカに組み込めるOnsen UI(オンセン・ユーアイ)というものを使えばXcodeで作るようなデザインに近づける事ができるのですが、完全ではなく、たとえOnsen UIを使用しても、ボタンなどの部品を全く同一のデザインのものにすることは難しいです。

OnsenUIの説明ページ画像(下記)

モナカで使うことができるOnsen UI(オンセン・ユーアイ)の説明(1)
モナカで使うことができるOnsen UI(オンセン・ユーアイ)の説明(2)
Onsen UIの説明(2)

それでやむなくXcode(エックスコード)で作り直すことになりました。

しかし一年の利用料金が5万円というのは、会社ならまだしも、個人の場合は負担が大きいです。

作ったアプリが商品として高く売れ続けるなら元が取れるかもしれませんが、これだけ多くのアプリがあると、せっかく作っても認知すらされないアプリが多いのでは無いかと思います。

ちなみにインターネット・ニュース・サイトのIT Media ニュースのサイトによれば、


現在のApp Storeのアプリ数は約160万、Androidアプリ数は約320万で、クロスプラットフォーム化されているアプリ数は約45万程度に留まっているそうだ。
参照「IT Media News – App Storeのアプリ数が3割減った理由」


https://www.itmedia.co.jp/news/articles/1804/05/news095.html

上記の記事によれば、アップルのアプリの数が年々減り続けているのは、審査で落とされるアプリが増えたため、と分析しています。

それに対してアップルは量より質を重視している、と回答しているとのことです。

会社などで作ったアプリであれば、予算的にも余裕があり、インターネット上での広告などが行える可能性が高いですが、個人の場合には予算は限られているのでモナカの利用料5万円払った上でさらに効果的な宣伝までお金を使うのは難しいと思います。

しかも今、こうしたアップル純正ソフトのXcodeで作っていないソフトの場合、弊社の場合のように、デザインで落とされることも十分考えられます。

アップルの審査はますます厳しくなっていると、先程のIT Media Newsの記事でも書いてありました。そのためアップルのアプリ登録数が減少しているとのことで2017年末には210万の登録数がありましたが、2018年4月時点での登録数は160万件になっているそうです。

今回は、初めてアップル純正のアプリ作成ソフト「Xcode(エックスコード)」でアプリを作っていることと、Xcodeで作るよりも簡単に作ることのできるMonaca(モナカ)というアップルとは何ら関係ない会社が提供しているサービスについて書かせていただきました。

ここまでお読みくださりましてありがとうございました。

今回取り上げさせていただきましたSwiftからPHPを介してMySQLに送信するコードが記載された記事は以下です。

Swift 5 Xcode 11 やっとSwiftからPHP経由でMySQLにデータを送信できました。
PHPは過去にデータベースへデータを送受信するプログラムを使った事があったのですが、SwiftからそのPHPにデータを送るのに苦労しました。何しろ、Xcodeは今回初めて使うものですから、何から何まで初体験の連続で、しかもインターネットで調

Posted from SLPRO X for iPhone.

コメント