Mobile」カテゴリーアーカイブ

iOS16 以降でデバイスの名前を取得したい

iOSアプリ開発している際に、端末を特定したい要件が入っています。

基本的にデバイスの固有情報をSwiftからUDIDやPhoneNumberを取得するのは非推奨ということで、端末固有の番号を生成するUUIDを端末特定に用いられることが多いと考えています。

ただ、今回の目的は別の外部からの情報と紐づけを行いたいので、アプリ内部で生成したUUIDでは目的を達成できないのではないかと。

そうなると、デバイス名を取得できればいいと考えているものの、Swiftでいう下記のコードはiOS16以降で実行すると

log.trace("name:\(UIDevice.current.name)")

無常にも結果は”iPhone”と返ってきました。

The entitlement for accessing the user-assigned device name instead of a generic device name
com.apple.developer.device-information.user-assigned-device-name | Apple Developer Documentation

いくつかの条件をクリアして権利を取得することができれば、デバイス名を取得することができそうだけど、正直面倒くさそう。。。

調べていると、MDM配下であれば設定値をプロファイルに追加で登録できそう

iOSアプリで端末のシリアル番号を取得する方法(MDM必須) #Swift – Qiita

ただ、ここで述べられている、「アプリ管理設定プロファイル」が、今回の案件で使っているMDMで言うところの何に当たるのかが不明。
このあたりはMDMを触っていないのでなんとも・・・。構成プロファイルとはまた別な気もするので確認かなぁ。

Surface Pro アクセサリ

今日は仕事の用事で一日外出。

いわゆる研修なのですが、ノートPCが必要になって手持ちのものがなかったのと、
特に業務で使用しているものでないといけない内容ではなかったのでSurfaceで研修を受けてきました。

これまで、ちょこちょこと使うことはあったのですが、長時間じっくりと触り続けたり
本当に仕事として使うことがあまりなかったのでちょっといろいろと新鮮でした。

PDFをリーダーアプリで開き、画面分割を調整しながらブラウザ操作をするという形でしたが、
思った以上になじんでつかことが出来ました。

やっぱりいろいろな使い方してみないとわからないものですね。

 

さて、Surfaceは普段100円均一で売っている保護ケースっぽいのに入れて持ち歩いているのですが、
普段移動中に持ち歩いているわけなのでもう少しちゃんとしたケースを買いたいところ。

ただ、ヨドバシとか行ってもそんなに種類がないんですよね。

いろいろ調べてみると、ケースだけでなく背面の保護にカーボンシートを張る人もいるみたいで、
Surface周辺のアクセサリをもう少し見直したほうが気持ちよく使えるかもしれないと考えています。

何かいいのないかな~

Surface Pro 3 での Virtual Box 起動エラー

開発環境を少しずつ整理している Surface Pro 3 ですが、仮想環境としては Hyper-V ではなく Virtual Box を利用しようとしています。
理由としては、Vagrant とかいじりたいからです。

仮想環境の用途としては、主に実行・テスト環境的な形ですね。

Windows で動作させるのが結構面倒なものもあるので仮想環境上に開発環境を持っている人も多くいるようですが、
一番の懸念は、適当にあれこれと試した結果、レジストリやらフォルダやらが滅茶苦茶になってしまうのが嫌なんですよ。

あれこれと試してみたいんだけど、試した結果どんどんと OS が重くなってしまうのでは困りものですから。

まぁ、そんな理由で仮想環境を建てようとしたのですが・・・・

20140827_vvox_error

こんな感じでエラーになってしまいます。

環境としては、

Surface Pro 3
Virtual Box 4.3.14
Ubuntu

という条件です。

Ubuntu は、公式のVHDからでも、手動でHDD作ってISOからやろうとしても同じエラーが表示されます。
というか、そもそも仮想PCの起動が出来ていない感じがするのでOSとか関係ないかもしれません。

ただ、別のPCでWindows8.1 環境があるのですが、そちらでは問題なく Virtual Box が動作している。ちょっとバージョンは失念してしまっているけど。
なので、単純なホストOS側の問題とは限らないと思うんだけどなぁ~。

これにずっと躓いていて、一向に Surface 上で物事が進まずに苛立ちを感じていました。

あれこれ公式のフォーラムを探していたのですが、よく解決方法がわからず、検索の方向性を変えて「Surfaceで」という感じで調べてみたら…

VirtualBoxのインストールエラー
http://qiita.com/nmatsui/items/80aff4e7f085d8d6de83

ヒットした。

そして、指示に従って 4.3.12 で試してみたところあっさりと起動しました。

うーん、Surface の何に引っかかったんだろう?
いずれにしても、ずいぶんと時間がかかってしまったな。

iOS アプリの社内配布メモ

前々から、iOSやAndroidで業務アプリを作った場合、どういう配布方法になるんだろうなぁ〜と疑問には思っていたんだけど、機会あって調べてみたのでメモ的に残しておく。
ちなみに調べたのはiOSだけで、Androidに関してはまだ調べてないのでそれはまた別の機会にでも。

Enterprise Program

AppStoreに公開するために加入するプログラムとして 「Developer Program」 があるのは知っていたけど、社内アプリケーション開発用に別途、「Developer Enterprise Program」が用意されていた。

プログラム比較一覧表
https://developer.apple.com/jp/programs/start/ios/

それぞれで出来る事に関しては、上記の公式を見ていただくと分かると思うが、ざっくりというと

  • AppStoreに公開するならDeveloper Programでいいけど、社内用アプリケーションはDeveloper Enterprise Programに入る必要がある
  • Developer Enterprise Program は、社内配布は制限無く出来るが、逆にApp Store への公開の権限を有していない
  • Developer Program で実機にセコセコと一台ずつインストールしていくという手もなくはないが、登録が面倒だし1年の有効期限がある

と言うところか。

ここで、結構気になるのは「社内への公開」と言うところだ。
たぶんだが、Enterprise 契約時に DUNS 番号を必要としている事から考えると、DUNS で定義された範囲内でのみの利用と言う位置づけなんだろうな。

普段業務アプリケーションを開発している私としては、お客様先へお客様のニーズにあったアプリケーションを開発して提供というシナリオが真っ先に思いついてしまう。
ところが、当然の事ながらその場合は「社内」という枠を超えてしまう。

こういうケースの場合、お客様が Developer Enterprise Program へ加入して、そのコード署名を使ってビルドしたアプリケーションを使ってもらう必要がありそうだ。

つまり、実際に開発した会社に対して、開発作業をアウトソーシングするような位置づけなのかな。

そういう立場ならばそういう立場でもいいのかもしれないけど、そうなるとお客様にMacを購入してもらって、そこでビルドとかになりかねないのではないかなぁ。
でも、そのためだけにMac購入してもらうとか、どんだけ無駄なんだ・・・。

この辺り、実は私の理解が謝っている恐れは十分あり得るんだけど、もし理解が正しかったとすればとても非効率な話に感じる。

うーん、なんか間違っているかもしれないな

Kindleが届いた!

随分とお預けを食らっていたKindle Paper White の New モデルが届きました!

早速あれこれといじりたい所。
まずは情報収集からかな〜。

明日から、少し楽しみだ!

Kindle Paperwhite(ニューモデル)
Amazon (2013-10-22)
売り上げランキング: 1

iPadの容量が足りない事態に

以前、母にiPadを贈ったのですがその容量が足りなくなってきました。
と言う訳で、どうにか対策を検討しなければ行けない事態に。
あれこれ頭の中で考えていても抜けが出そうなので、書き出してみる

前提

  • 母はパソコンをろくに使う事が出来ない
  • 実家にそもそもパソコンはない
  • 趣味が山歩きであちこちで写真を撮ってくる
  • 容量不足の原因は、ほぼ100%写真データ

iPadを贈った当時は、母はデジカメを持っておらず、どちらかというとWebに繋げる手段だったりを提供するつもりで贈った。
我が家とのFaceTimeによるテレビ電話も一つの理由だ。

旅行が趣味のわりに、画素数の低い携帯付きカメラで写真を撮っていたのでデジカメを進めたら、もの凄い量になってしまった。
少し余裕を持って32GモデルのiPadを贈ったはずだったのだが。。。
うむむ

削除する

一番単純なのは、そんなに一杯いらないだろって話。
デジカメなのでパシパシ写真を撮ってしまって全部保存しているような状態。
選別すればそれなりのサイズになるんじゃないだろうか。
ただ、不意に撮った写真が後から見返した時に印象に残ったりする事もあって、データの管理コストが低いデジカメの写真はとっておきたくなる気持ちは分かる。

まぁ、現実問題として全部見返す時間なんて無いくらいにたくさんありそうだが。

外部に保存する(ローカル)

次に考えるのは、やはり容量が不足しているので容量を追加しましょうって話。
とは言っても、iPadの容量を増やす事は出来ないので保存用のストレージを購入する事になります。

先に書いた通り、実家にはパソコンが無いためにiTunes経由での保存が不可能。
iPadから直接Wifi経由で接続/転送が可能な機器が必要になります。

どういうのがいいのかはちょっと分からないけど、外出先からアクセスする用途で用意されている機能を持ったNASが使えるのではないかと考えています。
バッファローで言えばWeb Access i って奴ですね

BUFFALO 高速モデル NAS(ネットワークHDD) 【iPhone5対応(WebAccess i)】 2TB LS-V2.0TLJ
バッファロー (2011-11-12)
売り上げランキング: 1,053

 

これであれば、2TBで2万円を切るのでまぁ手頃な感じかな。
安くなったものだなぁ。

Web Access i の設定ってどうやるんだろうな〜と見回っていたら、たまたま私が持っているLink Stationも対応しているっぽい。
そういう用途で使おうと思っていなかったので全く気にしていなかったけど。

ちょっと後でやってみようかしら

外部に保存する(クラウド)

NASを実家に置くというのは、それはそれで何とかなるんだろうけど、機器に詳しい人間が周囲にいる訳ではないので何かあった時に少し不安。
そういう意味ではいっその事、クラウドのストレージを利用してしまう事も検討に入れたい。

DropBoxなんかもあるけど、それほどの速度を求める訳ではないので値段優先で考える。
そう考えると、なかなかMicrosoftのSkyDriveはいい感じだ

まだ知らない人のためのSkyDrive入門
http://www.atmarkit.co.jp/ait/articles/1304/24/news105.html

年4000円で100GBの容量であればお手頃と言える。
一つ心配があるとすれば、その100GBが上限であると言うことだ。

2〜3年で30GBほどの写真を撮った事を考えると少し心もとない。
そういう意味ではDropBoxなら500GBまで増やせる!

ただ、写真のようなものを保存するのであれば、それは短期と言うよりは長期的な保存になる。
仮に500GBまで増やせたとしても、月5000円であればやっぱりNASを買った方が安上がりだ。

違う媒体へ保存する

いっその事、印刷して保存しておくと言うのも母の場合は有りだと思っている。
なにせ、メールに添付するという行為よりは、直接写真を配るという方が多い交友関係だから。

Wifi経由の印刷をサポートしているプリンタは結構出ていて、Apple標準のAirPrintでなくても印刷は出来るようだ。
正直、この周りはそれほど明るくなく、AirPrint以外の道に関してはあまり把握していなかった。

iPrint
http://www.epson.jp/products/colorio/smart/iprint/

EPSON インクジェット複合機 Colorio EP-706A
エプソン (2013-09-19)
売り上げランキング: 3,249

現実問題として、容量があふれているという状態の解決に印刷は向かないとは思うが、
物理媒体が手元にあると言うことでデータ削除を促す事は出来そうな気もする。

 

あれこれ考えてみたけど、4万くらいするかな〜と思っていたNASが2万を切っていたので、現時点での私の中のお勧めはNASになりそうだ。
ただ、設定周りを母にやらせる事は不可能と言えそうなので、実家に帰った時かな?
いつになるんだ、それは・・・

やっぱり幾つかは削除してもらわないとダメだな、こりゃ。

Kindle のニューモデル!

Kindle のニューモデルが発表され、現在予約受付中です。

Kindle Paperwhite(ニューモデル)
Amazon (2013-10-22)
売り上げランキング: 2

ずっと見合わせていましたが、ついに購入する事にして予約しました!
Kindle が日本で発売される以前から欲しいと思っていたものの、電子書籍への対応状況が
余りに微妙すぎて購入をためらっていました。

今回、購入に踏み切ったのはいい加減に欲しくなってきたのもありますが、こんなサービスが始まるのが決め手になりました。

Kindleオーナー ライブラリー
http://www.amazon.co.jp/gp/feature.html/ref=sa_menu_kds?ie=UTF8&docId=3077704816
Amazonプライムにご加入で、Kindle端末をお持ちのお客様は、ベストセラーやコミックを含む数千冊の対象タイトルの中からお好きな本を、一か月に1冊 無料でお読みいただけます。

私はそれほど読書スピードが早い訳ではなく、往復の通勤時間がメインの読書時間となります。
それらを考えると、月一冊貸し出し可能であれば、結構十分な気がします。
プライムサービスへの加入が条件になりますが、年会費3900円なので突き当たり325円。
325円以上の本を借りれば十分元が取れるので問題ないでしょう。

技術書になると、後で読み返したくもなるとは思うのでこの利用方法からは外れそうですが、
それ以外の新書などを借りる事になりそうです。

発売予定日は10月の22日と、まだ一ヶ月以上先なのでちょっと気持ちが先行してしまっています。
楽しみだ〜

ARを使った塗り絵遊び

TechCrunchで紹介されていたcolARを早速試してみた。

詳しくは、下の動画でもよくわかる。

これはちょっと、大人がまず驚いて遊んでしまいそうだ。
子供はというと、一瞬何が起きているのかさっぱりわからなかった見たいだが、
すぐにおもちゃと認識して遊び始めることが出来た。

まだ、我が家の子供は一番上でも4歳。
お世辞にも上手に塗り絵をすることは出来ていないが、少しは楽しめたよう。
おもちゃの人形を紙の上において、映像とミックスさせて遊ぶことも出来る。
ううむ、こうやって身近に来ると、技術って進歩しているんだなぁとしみじみ思った。

ただ、長くは持たなかった。

幾つか、思いついた理由を考えてみた

  • 動作パターンが限られている
  • 塗り絵をカメラ内に収めないと行けないので、せっかく3Dになっていてもうまく全体を見ることが難しい。少なくとも子供には
  • 技術的には面白くも、子供にはテレビの方が面白いようだ
  • iPadを常に持っていないと行けないので(特に子供には)すぐ疲れてしまう

まだ年齢が低すぎるので、自分が色を塗ったものが動くと言うことが凄いという認識がないのか、
時々思い出したように「飛行機見る〜」と言って見ることもあるが、長くは続かない。

せめて、もう少し塗り絵をカメラから外しても出てきた映像が維持されれば、
物語や遊びの範囲が広がりそうなものなのだが。

とはいえ、遊んでみることがお勧め。
今ある塗り絵に関しては、7月28日までは無料で購入することが出来ます。
塗り絵は今後、少しずつ増えていって、それらが有料という形になるのかな?

塗り絵自体はプリンタで普通に印刷すればいいだけなので、値段によっては考えてしまいそうです。
ちょっと楽しみ。主に大人が。

colAR Mix – 3D coloring book App App

カテゴリ: エンターテインメント

価格: 無料

Surface Pro

日本でのSurface Pro発売のアナウンス。
ついに出ましたね。
しかも、Officeも付いてくる。

値段がやはり10万となると、どうしても二の足を踏んでしまいますが、
出来の良さ以上に持ってみたいという好奇心がうずきます。

しかし、Proはタブレットとしても使えるPCという位置づけ。
利用想定としてはノートPCに近いものになるとすると、私が日常で使うとなると
幾つか考え込んでしまいます。

  • 通勤で使うとすると、ノートPCのように膝に置いてキーボードを叩くような使い方はカバー型のキーボードでは難しいのでは?
  • ネットに繋げるには、別途ポケットWifiなりを契約する必要がある。テザリングしたい。。。。
  • ネットに繋がらないとすると、よさが半減してしまわないだろうか?
  • バッテリーの持ちが4時間と表記されているから、実際にはもう少し短いのでは

ううむ。

ネットに関しては、まぁiPhoneも持っているので単体で見ればそちらで何とかなると言えば何とかなりますが、連携の獲れていないデバイス間を行き来することになるので面倒。

SurfaceにはUSB付いているから繋げて情報のやり取りが出来るかな?

もうちょっと色々と調べてみる必要がありそうですね

iOS 6.1.1の適用で3G通信障害を解消?

先日、iOS 6.1にアップデートしてからと言うものの、3G通信の調子がおかしい現象が続いていました。

具体的な現象としては

  • 通信が極端に遅くなる時がある(?)
  • アプリによってはタイムアウトする
  • 機内モードのOn/Offで通信が行えるようになる
  • でもすぐに通信に失敗する

見たいな状態です。

当初、家に帰ってからWifiで接続している分には問題に感じていなかったので、ソフトバンクの回線を疑っていました。
ただ、機内モードのOn/Offで戻る事から回線ではないのでは?と疑い始めてました。

そんな折にASSIOMAでこんなエントリーが

ボーダフォン技術チームによれば、ioS6.1にアップグレードしたiPhone4Sで3Gのパフォーマンスを低下させる事象が確認出来ているという。

iPhone4S は iOS6.1 にアップデートすると3G処理能力が低下する
http://www.assioma.jp/?p=5233

疑い始めていたとは言え、原因はiOSだったか。

先日、その問題を解決するアップデートが公開された

iOS 6.1.1 提供開始、揺らぐアップルの威信
http://www.assioma.jp/?p=5286

 

iOSのアップデートに関して

基本的に私はアップデートはすぐに適用するほうだ。
もちろん、それによっての人柱的なポジションに立たされる事はあるのだが、
適用しない事で本来受けられるメリットを失う事の方が大きいと感じているからだ。
また、仕事においてはお客様から問い合わせがあった時に答えられる(もしくは注意を喚起する立場になれる)からだ。

ただ、今回の件は少し厄介だと感じた。
アップデートによるが、Windowsのアップデートの多くはやり直しがきく。
アップデートに不具合があった場合はその適用を削除すれば元に戻るわけだ。

iPhoneの場合、ピンポイントでこのアップデートを削除するような事は出来ない。
また、端末を初期化したとしてもその時点で最新のアップデートにしか更新を行う事が出来ない。

過去にもGoogle Mapを外して腐った地図を強制的に入れさせられたりと、Appleの更新に問題が無い訳ではない。

そう考えると、復旧手段が無いアップデートを適用せざるを得ないこの端末にアップデートを適用するのはリスクに感じて来ている。
今回のiOS6.1.1は今抱えている問題を解決してくれるかもしれないが、新たな問題を引き起こすかもしれない。
それはわかっているが、少なくとも今抱えている問題は解決したいので適用する事にする。

ただ、次回のアップデートでどうするのか。それはもう少し考えてみる方が良さそうだ。