ラベル iOS の投稿を表示しています。 すべての投稿を表示
ラベル iOS の投稿を表示しています。 すべての投稿を表示

2012年12月21日金曜日

UIWebViewでコピーとかのアクションポップアップ

UIWebView、簡単にサイト表示したり、ローカルHTMLファイルを
表示したり、PDF表示したりと非常に便利です。

aタグをロングタップでSafariへのリンクポップアップだったり
コピーできちゃったり、もう便利すぎ。

でも、今回はそれが邪魔なのでした。

aタグ対応は


-webkit-touch-callout:none;


をCSSに記述するだけでいけたのですが、
通常のテキストだったりをロングタップすると「コピー」、「辞書」とかの
ポップアップがまだ出てくる。。。

で追加で指定したのが、これ

-webkit-user-select:none;

これで、テキスト自体のコピーとか画像のコピーも抑制できるようです。
JavaScriptでも読み込ませることできますが、今回はCSSに記述しました。


2012年11月29日木曜日

iOS Devアカウントを更新しました

毎年の納税義務があるiOS開発者。
納税は事前にしていたのですが証明書の更新はまだでした。

11月末でちょうど(というか今日)に証明書の期限が切れて
無事に実機転送できなくなったので証明書を更新しました。

やり方は以下のページを参考に。

iPhone用アプリ開発メモ(証明書の更新)

リンク先にある通りProvisioningFileも更新する必要あり。
ProvisioningFileをオーガナイザにぶち込んだ後、念のため
Xcodeは再起動させたほうが良いと思います。

これで向こう1年はまた自由に開発できるってもんです。

以上です。


2012年8月30日木曜日

スマートフォンテストラボみやぎに行ってきました

7月にオープンしたスマートフォンテストラボみやぎ(以下SPTみやぎ)に行って
スマフォアプリのテストをしてきました。

スマートフォンテストラボみやぎ


場所は、宮城県産業技術総合センター内にあります。
産業技術総合センターは泉にあって、今回は車で行きました。
公共の乗り物だと、地下鉄で泉中央まで行ってバスで行く事になりそうです。

予約は上記サイトから、メールか電話にて行います。
時間は、営業時間と同じ10時〜17時。
現在は無料で使用可能です。

ということで到着。
渋滞してて少し遅刻です(^_^;)

センター入り口。
右下にはデザイナーさん。



















センター名が書いてあります。



























受付で「スマフォテストセンターに来たんですが。。。」と言ったら
担当の方を呼んでいただきました。

担当の方に連れられてセンターの4階へ。
SPTみやぎに到着です。


入り口の案内。






















すでに太極拳マスターが来所されて作業されてました。


作業ブース。
これが隣にももう一つある。


















スマフォケース。
大事に収められてます。



















ケースなどの作成にも使えるように
モックも大量にあります。























僕らも持ってきたPCをセットして作業開始です( ・`Д・´)キリッ
今回は開発中のAndroidアプリのデザイン、動作テストなどを中心に行います。



作業風景。




担当者さんから注意事項をもらい一読します。
そしてテストできる端末のリストをもらいます。
このリストの作業したい端末にチェックをして担当者さんに渡すと
カゴにチェックを入れた端末を入れて持ってきてくれるシステムです。
※一度に10台程度。。。ということらしいです。

持ってきてもらった端末は電源を入れて、PCにつなぎアプリを流し込んで
ひらすらテストしていきます。

今回のアプリ、音がかなり出るので迷惑かけてすいませんでした(^_^;)
でも美声だったので邪魔ではなかったはず。。。


卓上のコンセント。
充電用にかUSBもあります。



















スマフォスタンドもあり。
ペタっとくっついて固定されます。




















こんな感じで作業。




















ご利用に当たって

こんなのもありました。
思わず自分の開発用PCの画面を拭きましたw












































ということで、予定を少し繰り上げて午後4時半ぐらいまで作業させていただきました。

結果として計45機種をテストすることが出来ました。
バグ、改善点ともに見つかったので結果には満足しています。

アンケートにも書きましたが、以下思ったこと。ずらずらっと。

・やはり場所が遠い。そして周りになにもないので車は必須かな。(お昼とか)
・遠くて山の奥だが、逆に静かでのどか。
 涼しい部屋でゆっくり作業したい場合は最適な場所かも。
・開示する情報をもっと充実させたほうが良いかも。
 Androidのバージョン、スマフォなのかタブレットなのか。
・スマフォの情報一覧をExcelのファイルでもらえるとありがたい。
・発売後にバージョンアップした端末はそれも用意してあるとありがたい。
・海外端末もあるので海外展開考えてるアプリには非常にありがたい。
 ※個人的に海外展開って大事な要素と思ってるので。
・1ブースに据え置きのWindowsPC、MacPCがあって、使用は自由なのだが
 中に開発環境が整備されてないのが残念。
 恐らくソースプログラムだけ持ってきてそのPCで開発。。。という流れを想定していると
 思われるので開発環境が整ってないとただのブラウジングマシンとなっている。
 ※WindowsにEclipseは入っていたがAndroidPluginが入ってなかった。
  AndroidSDKは入ってたけど。。。
  Macは起動しなかったが聞いた話ではなにもしてないとのこと。
・上記に付随するが、MacでiOSアプリの場合、Apple納税してあって
 開発者ライセンスが付与されてるとありがたいかも。
 普段はシミュレータでだけ開発しててSPTみやぎに行くと、実機でテスト出来る。。。
 だと付加価値あるかも。 → Appleの規約的にNGかも???
・今回は使用しなかったが、無線LANが飛んでて無料で使用可能とのこと。
・モックも豊富にあるので、アクセサリの開発などに使えそう。
 意外とモックがあれだけあるのは他にないかも。。。
・KindleFireがあったのが意外。
 初めて触って意外とサクサク動いた。
・最新機種がない。最近だとAndroid4以降の機種もたくさん出てきたので
 その辺をいろいろ揃えてほしいものです。
 スマフォタイプでICS搭載されてたのは1機種でした。
 新しい機種試せてこそのテストセンターで、そこに意義が出るのではないかと。。。
・施設内に自販機はある。が食事処はなし。近くだと隣の大学か専門学校の学食。

と思いついたことずらーっと書いてみました。
批判的部分が多いのは期待の現れということで(^_^;)

無料であれだけの機種をテストできるのは魅力ですし、宮城ではあそこだけです。
前にも書きましたが、今回のテスト結果には満足してます。

場所がまず遠いですが、東京とか遠方に行ってテストすると思えば
断然安く手軽ではないかと。。。

今回の改善点、バグを修正し9月にまた出直したいと思います。

対応していただいたSPTみやぎの方々ありがとうございました!!

左から、伊藤さん、僕、デザイナーさん、担当者さん(えびさん)




















以上です。

2012年8月22日水曜日

開発中のiOSアプリをiTunes経由でインストールする方法(その後)

開発中のiOSアプリをiTunes経由でインストールする方法



ちょっと前に上記の記事を書きました。
実はこの方法で配布したアプリ、インストールで失敗してました(^_^;)

で、解決方法。

今回本当に遠方の方にファイルを送ってやりとりしたので
結果部分は聞いた話で以下を再現しております。

(こちら)上記記事でファイルを作成し送付。
 ↓
(結果)iTunesには取り込めるけどインストール時にエラー
 ↓
(こちら)プロビジョニングファイルを配布用で構成してなかったので、
     先方のiPad UUIDもらってプロビジョニングファイルを作成し直して
     再度パッケージ作りなおして送付
 ↓
(結果)エラーは出ないけどインストールされず。。。
 ↓
(こちら)ここのページの「3. iPhone構成ユーティリティでインストール」を
     試してもらう。
 ↓
(結果)インストール出来た

キタ━━━━(゚∀゚)━━━━ッ!!

ということで、遠方の方にipaファイルを送付してインストールすることに成功しました。

ということで遠くからお仕事もらったんだけど、ソースは公開しないよ!
って時に有効な手段のお話でした。


以上です。


2012年8月12日日曜日

嫁実家用にプリンタを購入

嫁実家のプリンタがこのところちょっと不調気味で
嫁父よりプリンタ発注が来てたので購入しました。

要件は以下。

・印刷、スキャン、コピーができる複合機
・iPadから直接印刷がしたい(AirPrint)

で君に決めたって感じでCanonのMG5330です。

Canon PIXUS MG5330

正直、これよりちょっと安い機種あるんですが、印刷コスト(公表)が
少し高いんですね。。。長い目でみると良いかなと。

で、某お値段サイトではレビューで結構印刷コストがどうとか言われてます。
が、今のプリンタって全部そういう(高い)感じがしてきたので
機能面とかで決めた感じです。

あとこれの上位機種があるんですが、そちらは無駄にタッチパネルなのですが
タッチパネルより物理ボタンがあったほうが年代的には良いのかなと。

個人的には自動両面とかオフィスプリンタ並の機能も魅力的でした。
→自分では使わないのに。。。

買ったのは仙台ヨドバシ。

店員さんに店頭でAirPrint出来る一番安い機種は?って聞いて
iPadとかから直接印刷できるのはありませんっ!
と断言されたりしたんですが、一声で思った以上に安くしてくれたので
購入しました。念のため一回分のインクもセットです。

お盆休みに持って行ってセットアップするのですが、できるだけこちらで
やっておきたいので簡単なセットアップはしちゃいました。

そしてAirPrint出来るか念のため確認。

自iPhoneのSafariから両面印刷で出してみましたが、
プリンタは自動で識別して数タップで印刷できちゃいました。

これは便利ですね。
嫁母がiPadをメインで使ってるんですが、このぐらいの手順なら良い感じです。

うちにも欲しくなってしまったw

以上です。


2012年8月9日木曜日

開発中のiOSアプリをiTunes経由でインストールする方法

前から出来ることは知ってましたが、実際にやったことなかったので
実験がてらやってみました。

参考にさせていただいたサイトは以下。

iOSアプリのAd-Hoc配布方法まとめ


ただ、Xcode4.4.1ではちょっと違ってたので
画面ハードコピー載せていきます。
※どのバージョンからこうなったのかは不明。


まず、開発中のアプリをアーカイブします。
リリースする時と手順同じですね。




















で、Organize開いてArchiveタブを開くと、アーカイブしたアプリが
表示されていると思います。
ここでブログにあった「Share」ボタンがない。。。
なので「Distribute」ボタンを押します。












真ん中の、「Save for Enterprise...」を選択して次へ。




















認証を選択して次へ。




















ipaファイルの保存先が出てくるので、「Save for Enterprise...」は
チェックせずに適当な場所に保存します。












ここらは参考ブログ通り。
iTunes開いてAppのところにさきほど保存したipaファイルを
ドラッグ&ドロップします。
すると以下のようになります。















ここまで来たらあとはiPhone繋いで、Appの設定でアプリに
チェック入れて流し込んでやるだけ。



























無事アプリが起動しました。

広末さんなのは単に好きだからです。
笑顔がステキっ!!




























これだと遠隔地にいる人にアプリを渡してテストしてもらったり
試してもらったり出来るわけです。便利です。

以上です。


2012年7月23日月曜日

cocos2dのサウンド再生時に気づいたこと

今更ですがcocos2dでサウンド再生時に気づいたことを(^_^;)

音声再生方法は以下が詳しく書いていらっしゃいます。

サウンドを再生する


で、BGM再生とEffect再生ってあるんですが、この違い。
まぁメソッドの引数とかはもちろん違いますが
iPhoneなどで音楽聴きながらcocos2dアプリを起動し
上記方法でサウンド再生するとBGMは再生されません。
※Effect再生はちゃんとされます

恐らく、今聞いてる音楽をBGM代わりに。。。
みたいな感じなんだと思います。

cocos2dの実装探っていくとそもそもの再生クラスが違うようだったので
その辺で切り替えが行われていると思われます。

実機でたまたま音楽聴きながらテストしてたら気づきました(^_^;)

以上です。


2012年7月13日金曜日

AdMobとiAdと自社広告の間で

なにがきっけかは既に忘れてしまいましたが、
今週ずっとAdMobとiAdと格闘してます。


なんでだっけ。。。(?_?)


まぁいいやってことで、AdMobとiAdのハイブリッド広告をする
カスタムビューを作成していましたがなんとなく完成しました。

※メディエーションは使ってません。
 とりあえず自力でゴリゴリやってます。


流れは以下な感じ。

・オンラインかチェック

・オンラインであればiAdを表示、表示できなけらばAdMobを表示、
 それでもダメであれば自社広告バナーを表示

・オフラインであれば自社広告バナーを表示

自社広告バナーは複数指定出来てタップすると画像毎のURLに
飛ばすことができます。

広告切り替えはアニメーションで綺麗に実装しました。


やった!出来たよ!!

って最初に書いた通りなんでこんなことやり始めたかすら怪しいので
このカスタムビューも実は使い道が決まってなかったりします(^_^;)

なのでこれを使うためのアプリを近々作ろうかと。。。

開発プロセスが逆ですがまぁそれもありってことで。

ちなみに現在開発中のゲームにも
オフライン時の処理は応用させました。

ま、結果オーライですね。

以上です。



2012年7月12日木曜日

AdMobのメディエーション機能を使ってみた

昨日、iAdとAdMobでグヌヌって記事を書いたら
TwitterでAdMobのメディエーションって機能を使うと
AdMob経由でiAdも表示できるよ!と教えていただきました。
※教えてくれた人AdMobの中の人でした(^_^;)

へー、そんな機能まーったく知りませんでした。
ってことで実装してみました。

参考にしたサイトは以下。

Ad Network Mediation - Publisher Instructions (iOS)

えぇ本家ですね。

ここを参考にしてみた結果が以下。

AdMobを表示
iAdを表示






















これAdMobのViewだけで表示されてます。

AdMobの設定は以下。











わかりやすいように半分づつの表示率を設定しています。A


AdMobとiAdで別々でViewを使うより断然簡単に実装できました。

メディエーション使うと最終的な収益ってどうなるの?とか
細かいことまでは調べてないのでその辺が課題ですかね。

以上です。


2012年7月11日水曜日

iAdとAdMobでグヌヌ

先日のエントリにあったようにiAdを触り始めました。

今開発中のアプリにはAdmobだけを実装していたのですが、
いろいろ調べてみるとiAdの方が単価が高い(けど在庫がない)とのこと。

なので、

・iAdを表示しに行く
・iAdの在庫がなければAdmobを表示する

って実装が主流(?みたいな感じなのです。

でそれを実装していたのだけど、テスト機がオフライン時に思ったこと。。。
オフラインだとiAdもAdMobも関係なく表示すらされないorz

まぁしごく当たり前のことなのですね。

今まではオフラインなんだからしょうがないじゃん。
って思ってましたがどうも気持ち悪い。。。

せっかく作ったアプリの一部が真っ暗。。。
なんか寂しい気持ちになったのです。

なので以下のように実装し直し

・オンラインかどうかチェック
オンライン→iAdを表示。在庫なければAdmob。
Admobもロードされなければ自社バナー表示。
オフライン→自社バナー表示

自社バナーはタップでSafariに飛びます。

これを今開発中のアプリに入れ込み(Admobだけ)、
iAdとAdmobのハイブリッドカスタムビューにも組み込んでます。


たぶんこれでうまくいくんじゃないかなー。


これがちゃんとできればビューを貼っつけるだけで
広告表示対応OKって感じになる予定。

大体実装終わったとこですが、まだ唐突に落ちたり
iAdとAdmobでの実装違いのところを吸収したり課題はありますね。

まぁ少しずつ育てていきます。

以上です。


2012年7月10日火曜日

iAdを触ってみた

Appleの広告表示システムのiAdを使ってみました。
使ってみたというのは大げさかもしれないけど、とりあえずの実装してみただけ。

cocos2dに追加してみた



























以下サイトを参考にしました。

iAdの実装

これだけ、iAd実装のサンプルコード!!


表示の仕方を上記サイトでみて、cocos2dにAdmobと同じような感じで
実装したのが上の画像です。
※リリースされるまではTest広告しか表示されないっぽいです。

感想としてはやはりApple謹製だけあって実装が簡単。

あと以下は個人的な備忘録。

・広告が取得できなかった場合のdelegateメソッドを実装しておかないと
 広告部分が真っ白になるのでちゃんと実装しないとリジェクトされる。
 →失敗時は画面外にオフセットするとか、削除しちゃうとか。

ADBannerViewDelegate
 →広告モーダルが閉じられた時とかのもあるよ

ということで超簡易にiAdを実装してみたってお話でした。
Admobとのハイブリッド実装した例もググるとたくさんあるので
今度はそちらをやってみる予定。

以上です。


2012年6月26日火曜日

StoryBoardのStaticCellsで高さを指定する方法

StoryBoardのStaticCellsで高さを指定する方法がわからず
ソース上でやってたのですが、見つかったのでメモがてら。







































上記の方法で各セルごとに高さ設定できました。
コードで書くのと文言変わってますが、ちらほらとそれっぽい
プロパティがあるようです。(選択可否とか)

以上です。


SWWDC 2012/6/23 仙台iOS開発者勉強会に参加してきました

ATND:SWWDC 2012/6/23 仙台iOS開発者勉強会

Togetter:SWWDC 仙台iOS開発者勉強会 2012/06/23 のまとめ


ということで行って参りました、SWWDC。
Sendai WorldWide Developer Conference!!

会場はBeehibe+さんでした。

参加者も過去最高の20人ということで、
結構きつきつでしたw

こんな感じでスタート






















初めは、みんな軽く自己紹介。
開発したアプリなどをスクリーンに写してもらいながらやりました。

僕はカツゼツを紹介させてもらいました。

ひと通り自己紹介したとこで、セッションへ。
最初は森さんのStoryBoardのお話。

詳細はTogetterを参照してもらうとして
個人的には、StoryBoardはモック作成ツールかなと。

自分でも参考書読んでやってみましたが、普段から
InterfaceBuilder使ってないのであまり積極的に
使っていこうとは思いませんでした。

あと営業さんみたいな非エンジニアの方が
モック作るのに良いかなーって感じ。

次は斎さんのUIViewアニメーションのお話。
でしたが、僕は打ち合わせがあったためここで退出しました。

近くサンプルコードも公開されるらしいので
そちらとTogetterを見て勉強させてもらおうと思います。

Beehive+さんでイベント参加も初めてでしたが
席がきつきつなこと以外は快適に過ごせました。

でははー。


2012年6月12日火曜日

6/12のオープンアワー@片平堂に参加してきました

6/12のオープンアワー@片平堂告知


いつもの。
昨日のWWDCの影響を少し受けつつ9時過ぎごろから参戦。

ゲームの開発ちらっとして、新しく発表されたiOS6のFacebook周りのAPIを調査したりしつつ。。。

見た限りFacebookだけ!のAPIになってないっぽいので
いろいろなSNSにデータ投げたり、取ってきたりが出来るようになるっぽい感じ。

同一実装で吸収してもらえるのは有難い限りです。

少し早いけどでは。


2012年5月16日水曜日

インスタンス=0でハマったよ

Objective-C+Cocos2dで開発しててちょっとハマったのでメモ。

画面のinit処理
スプライト生成
画面に追加

ってことしてて、別関数で上記でインスタンス化したスプライトを参照してたけど
なぜかメモリ上は開放されてて画面に反映されないよって状態でした。

原因はコード上、

スプライト=0

って書いちゃってたこと。
※本当はただの整数型の初期化処理部分

構文上のエラーにもならないし、おまけに参照カウンタが
2だったのが0になってる。。。

ちょっとしたコーディング上のケアレスミスなんだけども
すぐには発見できなかった。。。orz

これ、

インスタンス=nil

と同じ効果なんだろうか。。。
ちょっと余裕出来たら調べてみよう。