Androg

Kotlin Conf Android Codeを読んだときのメモ

# はじめに Kotlin ConfのソースのAndroidを読みました。4時間ぐらいで読めた所までですが。 コードをおいやすくするために、Android Studio 3.0でプロジェクトを開きます。 kotlinconf-app/android/build.gradleを見るmaven { url …

Amazon S3でWebサイトホスティングのメモ

参考 Amazon S3による静的Webサイトホスティング 独自ドメインの設定が超絶参考になった。 ウェブサイトのホスティングの有効化 以下が必要なのに気づくのに時間かかってしまった。 バケット選択 プロパティ Static website hostingで有効化 SSL …

Android Studio 2.3.3 から3.0にしたときのメモ

はじめに dependencies { - classpath 'com.android.tools.build:gradle:2.3.3' + classpath 'com.android.tools.build:gradle:3.0.0' classpath …

KotlinでMockito2を使ってfinal classをモック化するには

環境Android Studio: 2.3.3 Kotlin: 1.1.51 Mokito: 2.11.0 build.gradleにはmockito-coreを指定 testCompile "org.mockito:mockito-core:2.11.0" 問題kotlinで普通にクラスを作成すると、final classです。 class …

Kotlinプロジェクトで「Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter favicon」というエラーが出たときの対処法

現象Kotlin+DatabindingでViewModel側でwebview.loadURLをしてロードしようとしたら上記のエラーが出た。 E/AndroidRuntime: FATAL EXCEPTION: main Process: <package>, PID: 29932 …

Dagger2でProvidesアノテーションつけてないのに、なぜフィールド注入されるのか

Dagger2について分かってなかったことclass MainActivity : DaggerAppCompatActivity() { @Inject lateinit var viewModel: MainViewModel } MainActivityにviewModelを保持させてくて、@Injectアノテーションを付けてあげれば、インスタンスを注 …

Kotlin Enum

はじめにKotlinでEnumを定義して、IntからEnumに変換したいときどうしたらいいのかをメモ。 Javaの場合ItemTypeというのをこんな感じで定義して、staticなvalueOfメソッドで、ItemTypeのintが見つかればItemTypeを返していた。 public enum ItemType { Normal(0), …

Dagger2 + Android + ViewModel(with databinding)

はじめにdaggerバージョンが2.10になったときに、dagger.androidがリリースされたようで、いままでと少し書き方が変わっていたので、メモを書きました。 基本的に下記ページを参考にしています。 https://google.github.io/dagger/android.html またサンプルコードは、Dagger 2.12 時点によるもので …

モバもく会#6 を開催

2017/10/15(日)にモバもく会#6という、だいたい2,3週間に1回やっているモバイルに関連したもくもく会を開催しました。 今回は3人でした。毎回ありがとうございます!自分が毎回勉強させてもらっています(感謝) 今回みなさんがやったことは次のとおりです。 CircleCI2.0についての調査 COSMOのAndroid SDKを使ってみる 聞いた話で …

Kotlin kapt error

困ったことKotlin + Dagger2を使って、下記のようなエラーが出た。 See log for more details とあるけど、どこ見たらいいのでしょうか。。。 対策Android Studioからは見れないので、ターミナルでassembleDevelopDebugを実行してみましょう。 % ./gradlew …