[iOS] 天気APIの料金比較 2024/5

天気API OpenWeatherとAppleのWeatherKitの月額料金を比較しました。

OpenWeatherの安さが際立ちますが、料金によって取得できる情報に格差があります。

1デバイスあたり月3000回(約15分に1回)呼び出しとすると、WeatherKitは無料の範囲で166デバイス分まかなうことができます。

ユーザーの規模にもよるでしょうが、デベロッパとしては買い切りではなくサブスクに設定するのが無難なように感じます。

[Apple Watch] watchOS 10.4でデベロッパモード選択ボタンが非表示 24/04/10

watchOS 10.4になってApple Watch SE 第2世代でデベロッパモード選択ボタンが非表示になったため、Xcodeにて実機インストールが出来なくなりました。Series 8では問題なく表示されています。どちらもデベロッパ登録しているIDでログインしています。

SE 第2世代ではデベロッパモードを選択できない
Series 8ではこれまでと変わらず表示

今のところ、SE 第2世代はApple DevelopmentタイプのアプリをXcodeから実機インストールできず、Apple DistributionタイプのアプリをTestFlight経由でインストールしないとアプリの動作確認ができません。

コードを少しいじりながらXcodeからインストールしてテストできないので、とても面倒です。

英語圏の掲示板サイト Redditでも話題になっていて、watchOSデベロッパは困っているようです。

早期のデバッグをお願いしたいものです。

Redditの該当スレッド(Series 7)

[iOS] EUデジタルサービス法対応

24年3月からEUで有料アプリをリリースしている開発者(トレーダー)は住所等の情報公開が義務付けられるようになりました。

とりあえず全ての有料アプリでEU27カ国を配信対象国から外し、ノントレーダーに設定しました。

データを暗号化しているメモアプリについてフランスでの規制を避けるため配信対象国から除外していましたが、今回は比較にならないレベルの痛手です。

EU公式サイトによると、トルコなど近い将来EUに加盟する国が9カ国あるらしく、都度対応が必要になりそうです。

モバイルICOCAの問題点2 Apple Watchでチャージ失敗 2023/10

私の中ではかなり評価が低いモバイルICOCAですが、またやらかしてくれました。

Apple Watchからのチャージが反映されず、出場の自動改札で引っかかりました。間違いなくチャージして、残高表示部が”アップデート中です”となっていましたが、結局失敗に終わったようです。

改札窓口でApple Watchを渡して入場記録を確認してもらい、残高と現金で決済しました。とんだ赤っ恥です。

右下ボタンをダブルクリックしてカード決済したのに入金処理が立ち消えになるなんて前代未聞です。

8月にはモバイルICOCAのiOS版に最新の残高が反映されていないトラブルが発生しており、イエローカード2枚で強制退場、ウォレットのサブに降格させました。

モバイルSuicaが晴れてメインに復帰です。ほんとあの会社はITサービスを何だと考えているんでしょう。地元企業なので応援したい気持ちはあるんですが、ダメなものはダメです。

Apple Watchのヘルスケア機能 心肺機能 / Pixel Watch 2発表

Apple Watch SE 第1世代を愛用しています。自分でiCloud連携メモアプリやコンプリケーションを開発したりして結構使い込んでいます。

ただしヘルスケア機能は納得できるレベルではありません。心肺機能は運動強度に比例して算出されるため、ウォーキングなど軽い運動で測定するとかなり低い値になります。健康管理にほとんど役立たないと思っています。フィットネスアプリでの運動管理については重宝しています。

心電図アプリ、酸素飽和度・皮膚温度測定を付けてSEより25,000円アップという価格設定に抵抗があるので、次に買うならSE 第2世代かな。

価格(2023年10月5日現在)
Apple Watch SE 第2世代(GPS) 44mm 39,800円
Apple Watch Series 9(GPS) 45mm 64,800円

病気ではありませんが、血糖値の日内変動に興味があるので、本シリーズ機を購入するのはこの機能が搭載された時になりそうです。それかキーボード日本語入力目当てでSeries 7の整備品にするかも。

ところで、昨日GoogleからPixel Watch 2が発表されました。相変わらず円形であるためにコンプリケーションが4つしか表示できません(Apple Watchは最大8つ)。アプリ開発者にとっては魅力に欠けるところがあります。

51,800円に値上げで値ごろ感も薄れています。SEと同じ価格帯ならギリOKだったのですが。

それにPixel 8は7から3万円もの値上げで112,900円(128MB)。Androidへの乗り換えあるいはiPhoneと併用の選択肢は私の中で完全に消えました。

カメラのブランド価値(中古価格/新品価格)に例えるとパナ他とニコキャノソニー位の差があるというのに何を勘違いしているのか。JavaでAndroidアプリを作ってみたかったのですが、まあ仕方ないです。

モバイルICOCAの問題点 チャージ残高不一致 2023/08

今年2023年3月から待望のモバイルICOCAがサービス開始しました。

Apple Watchのウォレットに導入して利用しています。

モバイルSuicaに比べ機能的に劣っている点について書き留めておきます。

・チャージ機能

ICOCAアプリでチャージする際、iPhone版に表示される残高が最新ではありません。これではいくらチャージすればいいのか判断できないです。

Apple Watchではウォレットで最新残高が確認できます。よってウォレットでチャージするのが確実ですが、金額設定がクラウン回転でしかできないため結構不便です。

モバイルSuicaではiPhone版にも最新残高が表示されるのに対して大幅な減点材料です。

サービス開始から半年が経とうというのに、一向に改善されません。

工学系エンジニアが大勢いながら、ITサービスは専門外で外注だからこの体たらくなんでしょうか。

これまでサービス化が遅れていた理由がなんとなく解る気がします。今後もこの調子で低評価(App Store評価 2.3)を維持することでしょう。

ITエンジニアには徹底的に避けられそう。

Apple Watchウォレットでの最新残高
ICOCAアプリiOS版の残高
(9/4時点のまま未更新,本日9/17)
実際は1760円なので1000円以上保持であればチャージ不要

[Xcode] Data Modelの完全削除方法

[Mac M2 Pro 12CPU, macOS Ventura 13.5.2, Xcode 14.3]

XcodeプロジェクトのCore DataにあるData Modelを完全削除する方法がようやく分かったためメモしておきます。

Core Data自体をXcode右メニューから削除して再作成しても上手くいかないので、下記の方法をおすすめします。

1.xcodeprojファイル内にあるpbxprojファイルをエディタで開く。

2.削除したいData Model名で検索する。今回は”NotePad”。

3.該当箇所を削除する。今回は2行削除した。

CEA4CC2F2A4A5661006739EA /* NotePad.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = NotePad.xcdatamodel; sourceTree = "<group>"; };

CEA4CC2F2A4A5661006739EA /* NotePad.xcdatamodel */

4.Core Dataの本体であるxcdatamodeldディレクトリの中にある対象xcdatamodelファイルを削除する(今回はNotePad.xcdatamodel)。

5.プロジェクトを開き、対象Data Modelが消えていることを確認する。

pbxprojファイル内を掃除しない限り、xcdatamodelファイルを削除してもData ModelはXcodeナビゲーターエリアから消えません。

Xcode内の操作でData Modelを削除できないというのは、XcodeがIDEとして完成度が低いことを物語っています。

このような使い勝手の悪さを改善していかないと今後もAppleアプリ開発は盛り上がらないでしょう。

VSCodeを使ってData Model関連箇所を削除

Apple Care+の購入ルール 2023年8月

Apple Care+のアカウント残高による購入は機器購入時のみ可能。

機器購入30日以内にApple Care+を購入する場合
1.Appleサイトでの購入はクレジットカード決済のみ
2.Apple Storeでの購入は機器を持ち込んだ上でAppleギフトカードでの決済可能。
ただしカード番号未使用に限る。アカウント残高にすると使用不可。
Appleセールなどで受け取ったAppleギフトカードはおそらく不可。

上記内容が正確とは限らないのでAppleサポートへ要確認。