twitter youtube tumblr flickr rss mail

category: computer

[FileMaker] iOS App SDK での向き固定


本記事のタイトルとURL をコピーする

FileMaker の iOS App SDK が使えるようになったことを書いた。

iOS App SDK を利用したアプリ開発 – with a Christian Wife
https://blog.withachristianwife.com/2017/05/16/ios-app-sdk/

私の作成するアプリで、画面の向きを固定したいアプリがあるんだけど、なぜか FileMaker ではアプリ内で設定しても固定がうまくいかない。

では iOS App SDK ではどうなるか。

Xcode ではアプリの向きを固定する設定がある。左のペインでアプリ名を選択し「General > Deployment info > Device Orientation」で指定する。

iOS App SDK で作成した iOS アプリを Xcode の設定で向きを設定し(例えば今回は横向き固定とする)、iPhone の実機でビルドしてみると・・・少し挙動が変なのである。

開発者が Xcode で作成したアプリは実機で実行ができるだけでなく、Mac との接続を解除したあともそのアプリは端末に残り続ける。自分が使うだけのアプリならこうやってどんどんアプリを実機に追加できる。

さて、Mac に iPhone を接続した状態で Xcode でビルドを実行すると、ちゃんと向きが横になる。しかし、Mac から iPhone の接続を解除した上でアプリを開くと__

(1)端末を縦向きに持った状態だと、アプリ内も縦向きに固定される(レイアウトが崩れる)。

(2)端末を横向きに持った状態だと、アプリ内も横向きに固定できる(理想の状態)。

これはアプリの初期起動時の挙動だ。一旦アプリを最小化しても、初期起動時の端末の向きでアプリ内の向きが決まる。横向きで初期起動したアプリは横向きのままだが、縦向きで初期起動したアプリは縦向きになる。もし、望んだ向きにならなければ、一旦アプリを終了し(ホームボタンをダブルクリックしてアプリを消す)、再び固定したい向きで初期起動する必要がある。

これは開発者の環境での挙動だけど、アプリを正式に App Store で販売したときも同じ挙動になるんだろうか。今度アプリを提出して調べてみたいと思う。

もちろん、アプリ側の設定ではなく端末で画面の向きを固定できる。でも、私は iPhone を常に画面ロックし、横向きにならないようにしている。だから、アプリ実行時に画面ロックを解除して iPhone を横に向ける・・・といった面倒なことはしたくない。


書籍