見出し画像

iOSエンジニアがAndroidアプリをリリースするまで1 〜きっかけ〜

初めまして。waiです。
iOSエンジニアです。
とはいえ、まだ実務での経験はちょうど1年の新米iOSエンジニアです。
実務で経験する前から独学で始めて、編み物カウンターというiOSアプリをリリースしています。
今回、編み物カウンターのAndroidアプリを開発、リリースすることを決めたので、その過程を記事にしたいと思います!

パッケージ名は小文字で1

Androidの入門書を一度通読して、個人開発でリリースしたiOSアプリのAndroid版の開発に着手。
DataBindingを導入し始めた時のこと。
build.gradle(:app)に

apply plugin: 'kotlin-kapt'
android {
    buildFeatures {
        dataBinding true
    }
}

を追加してsync。
この段階では、ビルドしてシミュレータで実行できた。
DataBindingを使いたいActivityのレイアウトをDataBinding用に変換したところビルド時に以下のエラー。

A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution

これがまぁ〜〜〜〜〜〜〜、わからない。
--stacktrace をつけてビルドすると、「couldn't make a guess for パッケージ名.クラス名」。
その後諸々調べてみると、「パッケージ名は小文字であること」。

知らんがな!

今までエラー出てなかったのに。
だったら、始めからエラー出してよ。DataBinding使う前から。


Androidアプリをリリースしようと思ったきっかけ

iOSで編み物用のカウンターアプリを作ったのをきっかけに、アプリで編み物がもっと便利に楽しくなるのではないか。。。と思うようになって数年。

「編み物日記」を作りたい!

写真とスタンプと短文で編み物の日記をつけられたら面白そう。
途中経過の写真や、何号針で編んでいるかのメモや、どこまで進んだのか、などなど。
後から見返しても面白そう。

ふと、そんなことを思った私は早速ツイート。

これがびっくりしたことにいいねが450越え。
あまりの反響の多さ、期待の多さにビビる私。

これまで、Androidユーザーから「編み物カウンター使いたい!」というお言葉も「私、iOSアプリしか作れないんですよ。。。」という言葉で逃げていました。
しかし、この反響の多さを見たら、アプリを開発するんだったら、Android版も作りゃにゃまずいだろと。。。

そこで、まずはリリース済みの編み物カウンターのAndroid版を開発することで、Androidのノウハウ、技術を身につけようと思ったのでした。

noteで記事にしようと思ったきっかけ

淡々と勉強して、Android版の開発をして、リリースをして。
でも全然OKだと思うんですが、せっかく新しいことを学び始めたんだから、アウトプットをしっかりしようと。
アプリのリリースでも十分アウトプットですが、リリースまでの経緯も含めてアウトプットすることで、より厚みのある技術力が身につくのではないかと。

何よりも、「パッケージ名は小文字で」に何時間も費やしたことが悲しくて、記事にしないといたたまれなくなりまして。

記事にすることでiOSとAndroidの差異を意識しながら勉強できると思うんです!

パッケージ名は小文字で2

実は、なぜパッケージ名に大文字を含んではいけないのか、まだわかっていません。
パッケージ名に大文字を含んでいたがためにエラーとなったという記事を見ましたし、確かに小文字に修正したらビルドが通り、無事シミュレータで実行できました。

公式のドキュメントにも
使用できる文字は英数字とアンダースコアのみ(a~z、A~Z、0~9、_)
とある通り、大文字も使えると思うんですが。。。

DataBindingの問題か、エラーで出てきた
org.jetbrains.kotlin.gradle.internal.KaptExecution
の問題か。

ご存知の方いらっしゃいましたら教えてください。

この記事が気に入ったらサポートをしてみませんか?