XCode11のシミュレーターでiOS13のダークモードを設定する方法

 

iOS13のベータ版が公開されたので、早速実機にインストールして、
開発中のアプリをXCode11ベータ版でビルドして動作確認してみました。

 

実機ではすんなりダークモードの設定ができたのですが、
シミュレーターでは設定場所が異なっていました

 

■実機の場合

IMG_0003.PNG IMG_0003.PNG

 

[設定アプリ]の[画面表示と明るさ]から外観モードの設定(ライト/ダーク)ができます。

 

■シミュレーターの場合

[設定アプリ]に[画面表示と明るさ]の項目がない!


Simulator Screen Shot - iPhone Xs - 2019-06-10 at 10.43.26.png

 

[デベロッパ]を開くと[APPEARANCE]の項目にDark Appearanceの設定があります。


Simulator Screen Shot - iPhone Xs - 2019-06-10 at 10.43.38.png Simulator Screen Shot - iPhone Xs - 2019-06-10 at 10.43.35.png

 

この項目をONにするとめでたくダークモードにすることができました。

 

Simulator Screen Shot - iPhone Xs - 2019-06-10 at 10.43.38.png

iOS13でpresentViewControllerでの遷移はひとくせあり

iOS13のベータ版が公開されたので、早速実機にインストールして、
開発中のアプリをXCode11ベータ版でビルドして動作確認してみました。

 

そこで、画面遷移の仕様が変わっていました。
具体的にはpresentViewController(セグエも同様でしょう)を使用したモーダルタイプの遷移後に、
前の画面が下に存在することが分かるようなレイヤーチラ見せ方式になっています。
※ナビゲーションのpushの遷移は従来と同様でした。

 

連絡先アプリの例

iOS13 iOS12
iOS13.PNG iOS12.PNG

 

 

これにより、iOS13ではキャンセルボタンを押さずとも
下方向にスワイプすると、今のビューを終了して前の画面に戻ることが可能になりました。

 

iOS12でも同様の仕様の部分はありました。
例えばミュージックアプリの以下画面など

 

iOS12_Music.PNG

 

下スワイプで前の画面に戻れる点では、すごく便利になりますね。
その反面、presentViewControllerで遷移後、
戻ることを想定しない構成で作られていたアプリは、
2019年秋以降のアップデート時には修正が必要になりそうです。

 

その他にも、仕様の変更点があるようでしたのでそれは別途で。。。
・セグメントなどパーツの見た目の変更
・ダークモードによる背景色・テキストカラーへの影響など

Androidアプリ64bit化必須に向けて検証デバイスのABIを調べる方法



https://developer.android.com/distribute/best-practices/develop/64-bit

上記ページのとおり、
2019年8月1日以降、GooglePlayで公開するアプリは 64bitアーキテクチャをサポートする必要があるとのこと。
更には2021年8月1日から64bit版が含まれていないアプリはGooglePlayから排除されるとのこと。

アプリ(apk)を64bit対応することはもちろん、
その後に64bit対応端末できちんと動作するのかを検証する必要があります。

そこで手持ちのデバイスのCPUアーキテクチャーが何なのか、
サポートしているABIは何なのかを調べる方法を以下に掲載します。

※ABIの詳しい内容については以下ページにあります。
https://developer.android.com/ndk/guides/abis#sa


■ABI分類



■adbコマンドで調べる

1. USBなどで調べたいデバイスをPC/Macに繋げる
2. コンソール(ターミナル)を開く
3. 以下adbコマンドを実行する
 

$ adb shell getprop ro.product.cpu.abi


実際の実行例

$ adb shell getprop ro.product.cpu.abi
arm64-v8a


これで完了。

---
とは言え、現存のデバイスは、
ARMであれば、上記結果がarm64-v8aであっても、
下位互換性があるようなので、
armeabi, armeabi-v7aもサポートされるため、
結局のところarm64-v8がなくても、
動作確認はできてしまう。
 

// Your app's build.gradle
    apply plugin: 'com.android.app'

    android {
       compileSdkVersion 27
       defaultConfig {
           appId "com.google.example.64bit"
           minSdkVersion 15
           targetSdkVersion 28
           versionCode 1
           versionName "1.0"
           ndk.abiFilters 'armeabi','armeabi-v7a','arm64-v8a','x86','x86_64'
    // ...

app/build.gradle

ためしにAndroidStudioで確認してみる

1. app/build.gradleを開く
2. ndk.abiFiltersからarm系('armeabi','armeabi-v7a','arm64-v8a')を外す
3. 繋いだデバイスの実行を試みる(繋いだデバイスのABIは'arm64-v8a')



Device supports arm64-v8a, armeabi-v7a, armeabi, but APK only supports x86, x86_64

 


とエラーが表示される

armeabiarmeabi-v7aどちらかが含まれていればエラーは表示されず、正常に動作するため、ABIがarm64-v8aのデバイスで64bitライブラリがなくとも、32bitのライブラリで動作することが分かる


 

取り上げ

効率が10倍アップする新・知的生産術―自分をグーグル化する方法
「自分をグーグル化する方法」というサブタイトルで

Googleというキーワードを入れたことがうまい。

頭をGoogle化させてとにかく効率化させようと、

新しいものなどどんどん投資して、少しでもスピードアップするものを選ぼうという意識作り。

仕事とはこんなセカセカして常に動いてなきゃならないものかとも思ってしまうが、

自分に適した一番効率の良い手段を追い求めるのは良いと感じる。

 

効率が10倍アップする新・知的生産術―自分をグーグル化する方法

 

 

ソフトウェアユーザーエクスペリエンス設計

 

 

28歳からのリアル

 

 

心のなかの幸福のバケツ

 

 

 

28歳貯金ゼロから考えるお金のこと

 

 

イノベーション・シンキング

 

 

図解入門業界研究 最新カウンセリング業界の動向とカラクリ

有村藍里さんが整形告白するというニュースがありましたね。

https://headlines.yahoo.co.jp/article?a=20190315-00558338-shincho-ent

 

元々そっくりな2人なのに、藍里さんだけ少し崩れていると言われていますが、

有村架純さんと整形前の有村藍里さんで作った機械学習モデルで、

整形後の有村藍里さんがどう識別されるのか試してみました。
 

(使ったサンプルが少ないので完全になんちゃってですが)

 

有村架純さんのサンプルと

有村藍里さん(整形前)のサンプルを

準備しました。

 

■有村架純

 

■有村藍里(整形前)

 

比較検証用に用意した整形後の有村藍里さんはこちら

■有村藍里(整形後)

 

■実行

 

 

かろうじて有村架純寄りの56%という数字に!

人が見ても確かに迷うショットではある。

 

↑はカメラから試しましたが、

改めて静止画で計測しました。

 

■結果

一番左のショットが有村架純さんと分類されました。

残りの2枚は有村藍里さんと分類されました。

顎のラインがシュッとしているのが分かる画像だと有村藍里さんになりやすいのかな??

 

 

 

ちなみに、有村架純さんの画像で試したら、

当然有村架純さんと分類されました。

 

 

使ったサンプルが少ないのと、

画像から顔領域の正規化をサボっているので、

単なる面白がりとしての検証でした。