カテゴリ: プログラミング
[iOS] LandscapeとPortraitで異なるレイアウトを実現する
AutoLayoutを使っているとLandscapeとPortraitでレイアウトを分けたくなることがある。
例えばこのような感じだ。


Landscapeの時はMenuが画面の左側に配置され、Portraitの時はMenuが上側に配置される。
これをAutoLayoutで実現する方法を見ていく。
続きを読む
例えばこのような感じだ。


Landscapeの時はMenuが画面の左側に配置され、Portraitの時はMenuが上側に配置される。
これをAutoLayoutで実現する方法を見ていく。
続きを読む
[iOS] iPad対応は最初から考慮していた方がメリットがある
[iOS] Google Sign-InでGoogleカレンダーにアクセスする
去年(2016年)にこんな話題が一部で盛り上がった。
ネイティブ アプリの OAuth インタラクションを最新にしてユーザビリティとセキュリティを向上する - Google Developers Japan
要は今までのやり方である「WebViewでGoogleの認証を行う」というのが2017年4月20日以降は使えなくなるというものだ。
これは開発者にとって地味に困ったことだ。
以前に実装したものが動かなくなるし、新しい実装を行うにも工数がかかる。
以前作成したサンプルアプリを動かしてみるとこのようになった。

確かに以前のやり方は使えなくなる旨の注意が表示されている。
では、どういうやり方に変えればいいか。
Google Sign-Inを使えばいいとのことだ。
今回はGoogle Sign-Inを使ってカレンダーの情報を取得するやり方に迫る。
使用しているXcodeのバージョンは8.0だ。
続きを読む
ネイティブ アプリの OAuth インタラクションを最新にしてユーザビリティとセキュリティを向上する - Google Developers Japan
要は今までのやり方である「WebViewでGoogleの認証を行う」というのが2017年4月20日以降は使えなくなるというものだ。
これは開発者にとって地味に困ったことだ。
以前に実装したものが動かなくなるし、新しい実装を行うにも工数がかかる。
以前作成したサンプルアプリを動かしてみるとこのようになった。

確かに以前のやり方は使えなくなる旨の注意が表示されている。
では、どういうやり方に変えればいいか。
Google Sign-Inを使えばいいとのことだ。
今回はGoogle Sign-Inを使ってカレンダーの情報を取得するやり方に迫る。
使用しているXcodeのバージョンは8.0だ。
続きを読む
[Android] デバッグ時とリリース時で処理を分ける
デバッグ時とリリース時で処理を分けたくなる場合はよくある。
例えば、このように何らかの情報をデバッグ時のみ出力する場合等だ。
しかし、ググってみればわかるが、実行時にはこのBuildConfig.DEBUGはtrueになってくれない。
そこで、それを有効にするためにbuild.gradleのdependenciesに
しかし、私の環境では以下のようなエラーが出てしまい解決できなかった。
続きを読む
例えば、このように何らかの情報をデバッグ時のみ出力する場合等だ。
しかし、ググってみればわかるが、実行時にはこのBuildConfig.DEBUGはtrueになってくれない。
そこで、それを有効にするためにbuild.gradleのdependenciesに
releaseCompile project(path: ':library', configuration: 'release')
のように記述すれば良いと書いてあるサイトがたくさん見つかる。しかし、私の環境では以下のようなエラーが出てしまい解決できなかった。
Error:(24, 0) Project with path ':library' could not be found in project ':app'.
なので、別の方法を模索してみる。続きを読む