くま's Tech系Blog

基本的には技術で学んだことを書き留めようと思います。雑談もやるかもね!

Android

再起動をadbコマンドで実行する

Androidで開発していて、PCを実機につないで、再起動を確認するときに実際に再起動してしまうと実行が消えてしまいますよね? どうやらADBコマンドで実際に再起動せずに再起動を再現できるみたいなので、やってみました。 ただ、やってみると意外にハマった…

Androidでグラフを作ってみる

グラフをアプリの中に表示させるとき、調べてみるとMPAndroidChartを使う方法があるみたいで、簡単なサンプルを作って試してみました。 今後も使いそうなので、手順を残そうかと思います。 ①ライブラリの導入 まずはMPAndroidChartライブラリを導入します。 …

アプリ名の設定やら何やら

アプリ名を設定したりやらAndroidではいろいろ設定することがあります。 今回は、アプリ名の設定をまとめたいと思います。 ①アプリ名の設定 基本的にはres/values/strings.xmlの中の、<string name="app_name">に設定されている値がこれにあたるのですが、ハマりポイントがあります。</string>…

レッツMVVMパターン

以前、DataBindingを使ってみて、その延長でMVVMパターンを使ってみました。 おそらく今後も使うと思うので、手順を残したいと思います。 ベースは下記の記事の実装を使います。 DataBindingを使ってみる 今回はListViewで行います。 ModelViewは 一覧に表示…

DataBindingを使ってみる

listviewの表示をDataBindigを使ってみることにしました。 もともと、android.R.layout.simple_expandable_list_item_2というオープンソースを使っていたのですが、カスタマイズできないのと、カスタマイズするならDataBindingを使ってみようと思ったのが、…

Espresso使用時の個人的注意ポイント

Android開発でテストを行おうと思い、Espressoを実行しようと思ったら実装とテストのバージョン違いでつまずいたので、まとめたいと思います。 テストを実行しようと思うと下記エラーが発生しました。 Conflict with dependency 'com.android.support:suppor…

ナビゲーションドローワーのUIテスト

EspressoでUIテストを実施していて、ナビゲーションドローワーがある場合に少しつまずいたので、残したいと思います。 dependencyの追加 ナビゲーションドローワーのアクションはespresso-contribのライブラリに入っているので追加しました。 その時、バージ…

非同期でのUIの取り扱い

非同期でUIの更新を行うときに気にしないといけないことが多いですよね 今ではRxjavaを使えば、あまり気にすることはないんですが、AsyncTaskLoaderを使う場合は、気にしないといけません。 私も一部分で、AsyncTaskLoaderを使っていて、罠にはまりました。 …

Retrofitでxmlの要素の値を取得する

Retrofitでxmlの要素を取得するためにEntityを定義しました。 初めて行うと意外に苦戦することが多いので、まとめます。 今回対象のxmlは以下になります。 <rss version="2.0"> <channel> <title>××××××××××××××</title> <link>×××××××××××××××</link> <description>××××××××</description> <lastBuildDate>××××××</lastBuildDate> // itemがリストになっている <item> </item></channel></rss>

DexArchiveBuilderExceptionについて

Android開発をしていて、okHttpを使おうと思い、implementするとDexArchiveBuilderExceptionという謎のエラーが発生しました。 java.lang.RuntimeException: com.android.build.api.transform.TransformException: com.android.builder.dexing.DexArchiveBui…

RecyclerViewを使ってみた

ListViewに比べてRecyclerViewの方が使い勝手がいいので、試しに使ってみました。 カスタマイズできるのがいいですね! ①レイアウトの作成 まずは表示する1列分のレイアウトを作成します。 article_content.xml

AlertDialogを作る

AlertDialogを今までActivityで作ってましたが、そうするとメモリーリークが発生するので、 DialogFragmentを継承させて、呼び出すようにしました。 その時の手順です。 ①AlertDialogのクラスの作成 DialogFragmentを継承させたクラスを作成し、そこで、ライ…

AndroidStudioでのGitの取り扱い

AndroidStudioで作成したプロジェクトをGithubで公開する、もしくはGithubのプロジェクトで開発を進めるときGitを使ってコミットやプッシュをすると思います。 AndroidStudioではメニューからGithubとの連携が行えます。 手順を記載したいと思います。 ①Git…

RecyclerViewに区切り線を入れる

RecyclerViewはListViewと違って、ある程度自由に画面を作成できますが、その分自分で実装しないといけない箇所が多いです。区切り線もそうです。ListViewでは特に実装しなくても区切り線が表示されますが、RecyclerViewでは実装が必要です。 val separateLi…