忍者ブログ
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


iPhone5sで初めて行われたOSの64ビット化。
アプリ開発を行う分には、今のところあまり意識する事はなかった。

この件に関しては、64ビット専用のアプリを開発するつもりもないし、64ビット化の影響を受けるような処理(特にメモり関連か?)を行うようなアプリの開発を行ったつもりはなかった。

シミュレータで64ビットOS用が用意されているので、確認してみると、キャストが必要な箇所でワーニングが発生していた。

本来、明示している型が違うので、キャストすべき箇所でも、ついつい、そのままにしてしまっている箇所があったため、ワーニングが発生してしまった。
64ビット以外のシミュレータで確認をしている段階では、全く問題が出ていなかったので安心してしまっていたが、やはり、このようなことが起こってしまう。

iOS7の差分の大きさの為に、最低限、確認すべき組み合わせが増えているので、64ビット化もひつよな項目となっている。

もうすぐ発表されるとの噂のiPadにも64ビットデバイスが追加されると予想されているので、さらに組み合わせが増えるという事か?

ますます、確認が大変になる予感・・・

拍手[0回]

PR

現在、作成中のアプリの機能的な部分に関して、大体完成に近づいてきたので、英語と日本語の2カ国語でのローカライズを行った。

ローカライズに関しては、これまで、あまり悩んだ事がなかったのだが、また、xcode5での変更点と思われる箇所に遭遇!

デフォルトで英語のみ入っている言語に日本語を追加するのだが、ここに「Base」というものがはじめから入っていた。
この事も戸惑ったのだが、「Use Base Internationalization」にチェックが入っている。
xcode4.Xでは、デフォルトで、このチェックが入っていなかったはずだが、xcode5からは、デフォルトでチェックが入っているように変わったようだ。

使った事のない機能については、ほとんど理解していないので、何だろうと思ったが、この2個はセットだった。
「Use Base Internationalization」のチェックを外すと「Base」も消える。


はじめから気がついていたら、ここを外して作業をしてもよかったのだろうと思うが、すでに、結構なところまで作り込んでいる。
試しに、「Use Base Internationalization」のチェックを外すと、ストーリボードのファイルまで消えてしまった。
そんな事されると困るので、チェックを入れたまま先に進めることにした。
ただし、この機能はほぼ使わずに、言語ファイルを自力で全て作成する。(元々そのつもりであったので、問題なし)

あとは、通常通り、「Localizable.strings 」の名前で言語用ファイルを追加して、各言語のファイルを編集していく。
(前は、自動で作成されていた気がしたけれど、気のせいかなぁ)
言語ファイルの種類にも「Base」が選択可能になっているが、これは使わずに、英語と日本語のみ使用していく事で、今までと同じようにローカライズする事が出来た。

拍手[0回]


xcode4.Xで作成したプロジェクトでは問題ないが、xcode5で作成したプロジェクトの場合、問題となる部分に、また遭遇した。

今回は、スプラッシュ画像。

スプラッシュ画像は、必要と思っているサイズの画像を作成してまとめていた。
iPhone/iPadのノーマル/RetinaとiPad用の縦/横のそれぞれのサイズ。
自分の場合は、ステータスバーのエリアは使用しないアプリを基本にしていく思いがあったので、iPad用はステータスバーサイズを引いた縦サイズが20/40だけ小さい画像を作っていた。

まず、今までと同じように画像を取り込んだが、いつもなら自動で認識されていたが、今回は変化なし。
どうやら、アイコンと同じようにファイル名は無関係になったと思われる。
それぞれ、自分で指定していく必要があった。
ここまでは、特に問題ないのだが、この状態でビルドするとワーニングが発生。
画像のサイズが指摘されていた。
xcode5の場合には、iPadの画像は、ステータスバーを含むサイズが必要なようだった。
これは、必要なサイズもワーニングないように入っているのでわかりやすい。
必要なサイズに変更し、再度ビルドするとさらにワーニング発生。

以下の2個のワーニンが出てしまった。

===================================
asset catalog compiler warning:
Targeting releases prior to iOS 7.0, but all launch images specify a minimum version of 7.0 or later.

asset catalog compiler warning:
An iPhone Retina (4-inch) launch image for iOS 6.x and prior is required when targetting releases prior to 7.0.

===================================

このワーニングは悩んだ。

iOS6.X用の画像が無いとの指摘のようだが、ちょっとわからなかった。

結果的には、iOS7用とiOS7以前用を別々に指定する必要があるのだが、サポートバージョンをiOS7以前に設定しても、画像の指定画面は自動で出る事がない。

「Images.xcassets」の右側のところにあるチェックボックスにチェックを入れる必要があることにしばらく気がつかなかった。




上記のキャプチャを見ると一目瞭然の設定があった。
デフォルトは、iOS7のみチェックが入っているが、サポートバージョンをかえても、チェックボックスは変化せず、自分でチェックを入れる必要がある。
この事に気がつかなかった。

ただし、ここでは画像を選択すると、上記画像の下半分に出ているように、選択した画像や必要な画像のサイズが明記されているので管理はしやすくなったのかもしれない。

拍手[1回]


なんだか、久々の更新になってしまった。
ここに書いてみようと言うネタが、ここの所あまり思いつかないまま数日が過ぎてしまって、放置状態になっていた。

と、いうことで、まだ解決していないのだが、最近しばらく悩んでいる問題について書いてみる。

xcode5に更新して、初めてのプロジェクトの作成から行ってのアプリ作成を行っている。
そうすると、xcodeが作成するプロジェクトの中身の差分に戸惑う事がちょこちょこと出てきて困る事がある。

今回は、タイトルにも書いているようにUIToolBarでの動作がよくわからなかった。

特に意識する事なく、UIToolBarを配置し、その上にUIBarButtonItemを配置、アクションも書いて動かしてみたところ、リンクされているはずのアクションが呼ばれない。
いままでにも多用していたものだったので、全くわからない。
動作していた分と比較しても特に違いを見つける事が出来ない。

ストーリーボードで全てを書いていたので、それをやめてソースコードで書いてみたが、状況は変わらず。
「UIToolbar.h」を見てみたが、見た目が変わった事以外、特別何かが書かれているとは思えない。

ネットで、検索しても、xcode5で見た目を調節する事以外、特に何か出ているところを見つける事が出来ない。

はっきり言って、自分の知識と理解力だけでは、この問題の解決をさせる事が出来なかった。

とりあえずの回避策として、ナビゲーションバーを使用する事にした。
ボタンは、同じUIBarButtonItemを使うのに、こちらは、何の問題もなく動作した。

ボタンの数に制限があるものの、そこさえ問題なければ、機能的には大きな差分がないと思うので、今回は、この方法で対応し、先に進める事にした。

結果的には、タイトルが入るので、この方がよかったかもしれないとも思うようにはなったのだが、そもそも、UIToolBarの問題が解決していない。
UIToolBarでないと、いけないようなアプリになった場合には対応できなくなるので、調査は引き続き行う予定。

このような問題に当たった人は他にいないのだろうか?
もし、何か知っている人がいるのであれば、情報が欲しいところだ。

拍手[0回]


今までにもいくつか、xcode5になって変更されて個人的にちょっと悩んだ点については書いてきているので、これは、続けていこうと思っている。

そこで、また、引っかかった点が出たので紹介。

アイコンについてだが、タイトルにもあるように、検索でよく引っかかっているサイズではなく、光沢表示についてだ。



こんなやつの事。

以前のバージョンから、光沢が標準となっていたので外していたのだが、この設定方法が変更されてしまっていた。

今回、ゆびてんじで不具合が発見されたためアップデートしたのだが、テストした後のアイコンを見ると、光沢化されていた。
当然、ちょっとした不具合修正でこのような部分の変更するはずもなく、いきなり変わってしまった。
自分の環境では、テストマシンとして使用している実機のOSは、iOS6を使用している。
ゆびてんじのアプリの特性上、実機テストを行った方がよいので、実機確認を行ったので気がついた。(マルチタッチが必要なアプリなので)
シミュレータでは、iOS7で軽く確認も行った。

すると、iOS6の実機では光沢化され、iOS7のシミュレータでは、光沢化されていなかった。

どうやら、iOS7は、全体のデザインが平面的になったので、今まで標準扱いであったアイコンの光沢表示がなくなったと思われる。
こんなところにも変更があるとは思わなかった。

まぁ、そんな事はいいとして、新規アプリならまだしも、バージョンアップなので、アイコンの変更を行う気はないので、当然変更された設定を探す事になった。

変更先となる設定箇所は、アイコンの管理が変更されているのでその画面から変更を行う事になる。
Images.xcassetsというファイルで管理されるのでそこを開き、右側にある「iOS icon is pre-rendered」にチェックを入れる。



この設定で、アイコンの光沢表示が外される。

設定がここに変更されているので、当然、今までの「Icon already includes gloss effects」の値をどんなナに変更しても何も変更されない。

また、変更点で気になった事があれば書いていく予定。

拍手[0回]


リリース済みアプリ

Silmuvide


PseudoRPT


うつすと!


ChronologyMaker


LASI


3行日記


単位計算機


Marking Map Plus


交通費管理


交通費計算リスト


Markin Map


SheepSleepSheep


RootCalculator


元号変換


PieChart


MeasureShooting


SimpleMapCreator



Applivのレビュー記事
http://app-liv.jp/713163900/

ゆびてんじ


PR



Copyright ©   marble seijin の開発日記   All Rights Reserved
Design by MMIT simple_plain Powered by NINJA TOOLS
忍者ブログ [PR]