くま's Tech系Blog

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

2021-01-01から1年間の記事一覧

Androidのツール属性について

今回はAndroidのレイアウト作成時に使うツール属性について書いていこうと思います ツール属性は主にレイアウトのプレビュー確認で使う名前空間です

ViewPager2とCardViewでカルーセル表示を行う

QiitaのAndroid Advent Calendar 2021の23日目の記事です 他の方も素晴らしい記事を投稿しているので、ぜひこちらからご覧ください! 今回はCardViewのカルーセル表示についてです カルーセル表示とは横にスライドして次のデータを表示させるものです 下記の…

iOSDC Japan 2021 に参加した

iOS

iOSDC Japan 2021 に参加してきたので、ブログにしようと思います iosdc.jp iOSDC Japanとは? iOSDC Japan 2021はiOS関連技術をコアのテーマとしたソフトウェア技術者のためのオンラインカンファレンスです。 日本中、世界中から公募された100本を超える知…

Callkitで着信画面を表示させる

今回はCallkitについてです Callkitは下記のようなiPhone標準の着信画面を表示させる機能です。画面がOFFの状態であれば、スライドして応答する画面が表示されます。また、着信履歴にもデータが残ります SkypeやLINEなどで電話をかけたときに、着信時に同じ…

なぜ?突然Githubにpushできなくなった

いつも通りGitHubにpushしようとしたら、突然エラーが発生するようになりました。 fatal: unable to access 'https://github.com/ユーザー名/リポジトリ名.git/': The requested URL returned error: 403 リポジトリ名は合っているし、なんだろう? ssh接続…

UIViewのレイアウトライフサイクルについて

今回はUIViewの表示についてまとめようと思います。 AutoLayoutが効かない・Viewの表示位置がおかしい・表示されない・画面表示までが遅いことが実装している中で1度は経験はあると思います。 このような問題は、Viewの表示の流れを理解せずに開発しているこ…

スコープ関数について

kotlinにはスコープ関数というものがあります。 あるインスタンスに対して、連続して処理をするような場合、スコープ関数を使えばコードを簡潔にすることができます。(Lamba形式で処理をおこないます) スコープ関数にはlet・run・with・apply・alsoの5種…

Androidのスレッドについて

今回はAndroidのプロセスやスレッドについてまとめようと思います。 最近は非同期処理でCoroutine などが出てきたおかげで非同期処理が簡単にできるようになりました。 ただ、Coroutine などを理解する前にプロセスやスレッドについて理解する必要があると思…

Androidでビルドのターゲット分けを行う

今回は、Androidでビルドのターゲット分けを行うようにするにはどうしたらいいのかを書いていきます。 ビルドのターゲット分けというのは開発環境と本番環境など向き先を変えるとうことです。 例えば、開発環境でapkを出力したり、本番環境で出力したりと変…

Custom URL Schemeでアプリを起動する

今回はCustom URL Schemeでアプリを起動する方法を書いていきたいと思います。 iOSでは、 cm-app:// のような、アプリ固有のCustom URL Schemeを実装することで、 リンクをタップしてアプリを起動することができます。( ディープリンクとも言います) ディー…

ラベル(Text)のカスタマイズを行う【iOS】

更新なかなかできず・・・・ 定期的には更新したいと思っています 今回はiOSでのラベルテキストのカスタマイズについてです。 わかりやすいようにラベルで記載していきますが、例えば、ボタンのテキストなども同様にカスタマイズできますのでぜひ応用してみ…

iOSアプリでライセンス表示機能を作る

今回はライセンス機能についてです。 OSSのライブラリをiOSのアプリで利用している場合、使用したライブラリのライセンスをしかるべき場所に記載する必要があります。 ライブラリを追加する度にそれらを手動で更新すると手間になるので、それらをCocoaPodsの…

ライブラリをforkして使う

今回はライブラリをforkして使う方法です。 あまり使うことはないと思いますが、使いたいライブラリが更新されずに機能を追加したいけどできない場合に一部カスタマイズして使うために使ったりします。 まずは使いたいライブラリを下記をタップして、forkし…

iOSアプリのビルドのターゲット分けを行う

今回はiOSアプリのビルドのターゲット分けについて記載しようと思います。 例えば、開発環境と本番環境で処置を分けたい場合やAPIのURLを分けたい場合があると思います。 そんなときに1つのプロジェクトで複数の環境を管理するためにターゲット分けを行いま…

プッシュ通知の許可状況を確認する

今回は小ネタです プッシュ通知を許可しているかどうか知りたいときありませんか? そんなときに許可状況を確認するための実装です if UIApplication.shared.isRegisteredForRemoteNotifications { print("許可している") } else { print("許可していない") }…

apkファイルをインストールする

今回はapkファイルをインストールする方法についてです たまに開発中のものをapkファイルに渡すということありませんか? そして、渡されたものをインストールして動きを確認することはありませんか? 今回はそんなときにインストールをする方法です 大前提…

プッシュ通知を処理する

今回はプッシュ通知についてです プッシュ通知はローカル通知とリモート通知がありますが、今回はリモート通知についてです 簡単にローカル通知とリモート通知の違いを説明すると、ローカル通知はアプリ単体でアプリがフォアグラウンド以外なら通知が表示さ…

UITabBarControllerについて

iOSの開発では必須といっていいくらいUITabBarControllerは使うと思います 今回はそんなUITabBarControllerについて記載しようと思います UITabBarControllerはstoryboardで作成する方法とコードで実装する方法があるので両方説明しようと思います。(個人的…

Retrofitの基本的な使い方

今回はRetrofitの基本的な使い方について書きたいと思います。 Android開発でAPI連携を行う場合に必ずと言っていいほど使うと思います。たまにハマってしまうので、まとめようかと思います。 Retrofitは、APIから取得するJSONデータを、オブジェクトにしてア…

iOSのシミュレーターにプッシュ通知を送る

今回はプッシュ通知のテストについて書きます。 プッシュ通知のペイロードはわかっていてもプッシュ通知の機能がまだない場合ありませんか? 業務でたまたま発生してプッシュ通知のテストがシミュレーターでできることを知ったので方法をまとめたいと思いま…

UITableViewでカスタマイズヘッダーを使う

しばらく更新していないうちに年を越してしまいました。。。。。 これからはなるべく更新していく予定です 今年初の記事はUITableViewでカスタマイズヘッダーを使う方法です UITableViewではstoryboardで作成することができるのですが、下記のようにヘッダー…