「iOS 6」を含む日記 RSS

はてなキーワード: iOS 6とは

2018-07-04

iOSアプリ強制終了簡単すぎる

iPhone Xでは昔のように、アプリカードを長押しして出てくるバツボタンを押して強制終了になってて、これはすごく正しいデザインだと思う。だって強制終了っていうのは基本的には避けるべきことであって、iOSではそれほど大きな問題にはなりにくいとはいえ、うっかり強制終了してしまうような事故は避けたい。(ちなみに、アプリ強制終了するとバッテリーが長持ちするというデマがあるが、iOS仕様をある程度知っていればそんな効果ほとんどないであろうことはわかるし、アップル公式否定している。)

ところが世の中は不条理もので、アプリ強制終了したがる人たちがいる。それでそういう人たちが、「強制終了に手間がかかりすぎる」などと文句を言う。そのせいかどうかわからないが、次のiOS 12ではアプリカードを上に弾くだけで強制終了してしまう、iOS 6から10までの仕様に戻るらしい。

まったく困ったものである。この仕様のせいで、いったい何回、アプリを切り替えようとして不意にアプリ強制終了されたかからない。

基本的に、同じ画面の同じ箇所から指を滑らせる操作では、縦の動きと横の動きに違う操作を割り当てるべきではない。片方のみに機能を割り当てて、もう片方は無割り当てが理想だが、それでも両方に割り当てるなら、非破壊的な機能でなければならない。例えばホーム画面では横スクロールの他に、縦にスワイプするとSpotlightが出てくるが、これは非破壊的だからまだマシだ。アプリ強制終了は、例えば何かの処理中だった場合に破棄されてしまうし、そうでなくても次回起動した時に前回の画面から再開できなくなる。

Appleも悪いが、とにかく、なぜかアプリをやたらと強制終了したがる人たちを撲滅しなければならない。

2017-07-26

iOS 8 以前を使ってる人来て

Appleによると全ユーザーの内、

iOS10が86%、

iOS9が11%、

それより古いのを使ってるのはたったの3%だそうだ。

iOS8も7も6も全部含めて3%だ。

マジかよ。

ホントにたった3%かよ。

嘘くさいとすら思える。

本当です、アイフォーンならねってか。

ちょっと我こそはこの3%だと言う奴、出てきてくれ。

そしてなぜお前は3%でいるのか、3%であり続けるのか、その理由を教えてくれ。

その理由の如何によっては俺のアプリiOS 6サポート継続やぶさかではないからさぁ!

2014-09-27

iOS 8.0.2でバッテリが異常消耗すると思ったらやってみたほうがいいこと

病院に行け。神経系の。

アップデート後たった数時間バッテリー持ちの違いが分かるわけがないだろ。

iOS 6の時もiOS 7の時もバッテリーガーとか言って大騒ぎしていた人は今すぐに。

2014-03-20

(今さらドラゴンクエストモンスターズ スーパーライト運営の酷さ

返金祭りで騒動を起こしたソーシャルゲームサポートセンターとのやりとりがあまりにも酷いので、吐き出させて下さい。

何かと話題を振りまいたゲームですが、ユーザーありきのサービスであるはずがユーザー無視の最悪のサポート対応です。

ソシャゲーに興味ない方は、あまり面白いものではないです。スルー推奨。※

以下に、ドラゴンクエストモンスターズ スーパーライト(以下当アプリ)のサポート担当とのやりとりを記します。

経緯

私は、ドラクエは1から6までリアルタイムでやっています

年代はお察しの通りで、FFよりドラクエ派でした。

今回ドラクエの名を冠したソーシャルゲームということでかなりの期待と

今までのドラクエへのお布施という意味も込め、当アプリ、金のロトガチャに 15,000円近く課金しました。

ところが、2月虚偽表示による返金騒動があり、私もアップルストアに返金依頼をしましたが、

アプリ運営事業から保障がすでに成された、との理由で返金を断られました。

実際に、当アプリWEBサイトの告知で、アプリ通貨であるジェムでの保障があったとアナウンスがありましたが、

私のiPhone5 (当時ios 6現在7.1) では、アプリタイトル画面から次の画面に遷移する際に、

「通信に失敗しました」というエラーが延々と出て次の画面に進めない現象があり、ジェムの受け取りが確認できていませんでした。

サポートとの受け答え

以下、私と「ドラゴンクエストモンスターズ スーパーライト運営事務局サポート担当者(以下サ)のやりとりです。

最初から最後まで、一ヶ月くらいかかっています

私:今回の虚偽表示を受け、アップルストアに返金を希望したが、運営事業者と直接やりとりをしてくれとのことで断られた。返金を希望します。

サ:【5.バーチャルコインシステム

 5.6 返金不可 法令により認められる場合を除き、ユーザーは未使用のバーチャルコインについて返金を受けることができないものします。

 上記より、返金はできません。

私:返金できないのは理解した。しかし「通信に失敗しました」とエラーがでて保障のジェムの確認ができない。

この時、私の環境iPhone5 ios6 などの情報を伝える。推奨環境は満たしています

サ:引継ぎコードを発行しました。再インストールして、コードを入れて下さい。

私:アプリを再インストールして、コードを入れて引継ぎをしたが、「通信に失敗しました」のエラーは変わらない。

 そもそもこのエラーの原因はなんですか?

私:(アプリインストールもできて、引継ぎもできて、アプリ内の更新ダウンロードまでできるのに、起動の時だけ「通信に失敗した」というのはおかしいだろ。)

サ:引継ぎコードを発行しました。再インストールして、コードを入れて下さい。

私:前回も同じことをして状況は改善されませんでしたが、今回実行すると治る保障はあるのですか?

 そもそもエラーの原因も説明せずに、再インストールしろとは乱暴ではないのか?

サ:アプリバージョンアップしましたので、改善されているかもしれないので再インストールして、引継ぎコードを入れて下さい。

私:アプリを再インストールして、コードを入れて引継ぎをしたが、「通信に失敗しました」のエラーは変わらない。

サ:OSバージョンが推奨環境を満たしていないことを確認いたしました。

 つきましては、大変お手数ですがOSのバージョン更新していただき、再度データ引き継ぎをお試しいただけますでしょうか。

私:(今までのメールを読んでない・・・?)

私:いい加減な回答をしないで下さい。以前連絡した条件で、推奨環境を満たしているでしょう。

 どうしてここまで滅茶苦茶な回答ができるんですか!ひどすぎます。こちらからメール見てますか?

サ:ご連絡いただきました事象に関しましてお手数おかけしますが

 不要データを削除していただき、可能であればご利用環境以外の環境改善されるかご確認いただけますでしょうか

私:他の環境はありません。でも最後にもう一度だけ、やってみます

私:やはりダメでした。もう諦めます

私:(もはや再インストールの作業も、引継ぎコード入力も、このやりとりもめんどくさい・・・

私:しかし、あなた方がやってきたことは、

 歴史ある「ドラゴンクエストブランドの毀損です。

 今後どのように続けていかれるかは分かりませんが問題に対して原因を追求するような、

 真摯的な対応をとられる事を希望します。

 今まで長々とお付き合いいただきありがとうございました。

メール最後に送りました。それ以降、音沙汰はありません。

今までのサポートの経緯からすると当然でしょう。

上記のやりとりも最終的に私からメールを以って「問題は解決した」と考えているのかと思うと、大変腹立たしいです。

サポートセンターでありながらユーザーから提示された問題を解決もせず、ただマニュアル的に受け答えしているだけです。

また、終わるにしても、普通会社サポートセンターならば、ましてや自社が起こした問題ならば、ユーザーから「もういい」と連絡があったとしても、

原因調査しますので、もうしばらくお待ちいただけないか、とか、どうにもならない場合は、お力になれず申し訳ございませんでした、

とお詫びの一文でも送ってくるのが普通かと思っています

最後

このやりとりから私が感じた事は、どこの国の誰がやっているのか分からないような受け応えをサポートセンターが行っている現実は、

運営事業者の根底の考え方がユーザーを大切にしていない、ということに他なりません。

このようなものが長く続くとは思えないし、また、続いてほしくもないです。

私はこのアプリおすすめしません。これからも色々な問題を起こすでしょう。

これからゲームを始めようと思われている方は思いとどまって頂き、現在プレイされている方は、運営事業者は

ユーザーことなどこれっぽっちも思っていないことをご理解頂ければ、幸いです。

このような運営事業者の横暴には、ユーザーが行動をもって示す事で対抗するしかないと思います

感情的な乱文にて申し訳ございませんでした。

また、最後までお読み頂きありがとうございました。

2014-02-27

Apple's SSL/TLS bug (22 Feb 2014)の意訳

例のAppleSSL/TLSバグの件、日本語情報がなかったので意訳しました。

Adam Langleyさんによって書かれた原文はこちら。要所要所に親切なリンクがついているので、ぜひ原文も見てみてください。

Apple's SSL/TLS bug (22 Feb 2014)

https://www.imperialviolet.org/2014/02/22/applebug.html

(Hi Adam Langley, Than you for your blog! We really appreciate you.)

-----

昨日、AppleはばかばかしいiOS向けのセキュリティアップデートを発行した。
それは詳しく明かされていないが、SSL/TSLについてとんでもなく恐ろしい間違いを示すものだった。

その答えは既にハッカーニューストップにタレこまれている(https://news.ycombinator.com/item?id=7281378)し、アップルが隠したい秘密はもうバレてしまっていると思う。
そして現在、俺たちはその誤った情報を正すステージに来ているんだ。

ほらここに、Applebugがあるんだ。:
static OSStatus
SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,
                                 uint8_t *signature, UInt16 signatureLen)
{
 OSStatus        err;
 ...

 if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
  goto fail;
 if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
  goto fail;
  goto fail;
 if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
  goto fail;
 ...

fail:
 SSLFreeBuffer(&signedHashes);
 SSLFreeBuffer(&hashCtx);
 return err;
}(Quoted from Apple's published source code.)
(訳者注:(Quoted from Apple's published source code)→sslKeyExchange.c)

2行のgotoがあるだろ。
2行目のgotoは、見て分かる通り常に発動する。
変数[err]にはエラーを示す値が入らず、正常を示す値のままfailに飛ぶってことだ。
それって成功したのと同じなんだよね!

この署名検証処理は(訳者注:SSL/TLSハンドシェイクのやりとりのうちの一つである)ServerKeyExchangeメッセージ署名検証するものだ。
このServerKeyExchangeでは、"the ephemeral key"(通信のための一時的な鍵)を交換するためのDHE や ECDHE という暗号スイートが使われる。
そのサーバーは言うんだ。
「ここに"the ephemeral key"と署名があるよ、ほら、これが証明書だ。君はこれが僕からのものだってわかってくれるよね!」

今、もし"the ephemeral key"と証明書関係が破たんしているならば、すべては無意味なんだ。
これってつまり、正規の証明書チェーンをクライアントに送信したけど、ハンドシェイクへの署名には正しくない間違った(つまり適当にその辺で作った)鍵を使ったり、そもそもハンドシェイク署名しなかったりってことができるってことなんだよ!

そこには、今君が通信しているサーバーが、サーバー証明書に含まれる公開鍵秘密鍵を持っているってことの証明が、何もないんだ。

これはSecureTransport(というライブラリ)に入っていて、以下に影響する。
・iOS 7.0.6より前(俺は7.0.4で確認した)
・OS X 10.9.2より前(10.9.1で確認した)
(訳者注:つまりiOS 7.0.6、OS X 10.9.2で解決した)

これはSecureTransportを使っているすべてに影響するけど、ChromeFirefoxはそうじゃない。
ChromeFirefoxSSL/TLSのためにNSSを使っている。
でも、それはあんまり君のマシンがSecureTransportを使っていないってことを意味しないよ。(ソフトって更新されるしね)


超特急テストサイト作ってみたよ。https://www.imperialviolet.org:1266
ポート番号に気を付けてね。(テストサイトCVE番号になってるよ)
443は通常通りに動いているからね。

ポート1266のサーバーと443のサーバーは同じ証明書を送っているけど、完全に異なるキー署名しているんだ。
君がもしポート1266のHTTPSサイトアクセスできたんだったら、君のマシンはこのイケてるバグを抱えてるってことだね。:)


それってつまり証明書チェーンは正しいってことで、そしてハンドシェイク証明書チェーンの関係は壊れたってことで、もう俺はどんな証明書も信じないよ。

またこれは、DHE または ECDHE 暗号スイートを使っているサイトに影響を及ぼすだけじゃないんだ。
攻撃者は、この暗号スイートを使うサーバー自分で建てるようになるだろう。

また、これはTLS 1.2には影響しない。このバグを含まないTLS 1.2の別の関数があったから。
でも攻撃者は使うプロトコルをある程度選ぶことができるから安心できないよ。
(訳者注:サーバー側がTLS1.2を使えないことにしていたら、それ以外の例えばSSL3.0とかTLS1.0とか1.1で通信が始まっちゃうから。)
でもでも、クライアント側でTLS1.2だけを使えるようにしておけば、それは今回の問題の回避策になる。。
同じく、クライアント側でRSA暗号スイートだけを許可するということも、ServerKeyExchangeが発生しなくなるので今回の問題の回避策になる。
(2つのうち、1つ目のほうがだいぶ好ましい。)

俺のテストサイトでは、iOS 7.0.6 と OS X 10.9.2で問題は解決していた。
(更新:このバグOS X 10.9 のときに入ったように見えたけど、iOS6にもっあったぽい。iOS 6.1.6は昨日リリースされたよ。)

こんなような微妙バグって、悪夢だ。
俺はこれは単なるミスだと思うし、なんかもうほんと最悪って思う。


ここに、今回の問題を明らかにするコードがある。:
extern int f();

int g() {
 int ret = 1;

 goto out;
 ret = f();

out:
 return ret;
}
もし俺が"-Wall "を付けてコンパイルしたとしても、XcodeGCC 4.8.2 や Clang 3.3は死んでるコード(the dead code)について警告をしないんだ。
本当にビックリだよ!!!

ここで警告が出ていたらこの問題は止められたのに。でもたぶん、現実には死んでるコードが多すぎて無視することにしてるんだろうね。
(ピーターネルソンが教えてくれたけど、Clangはこれを警告するための"-Wunreachable-code"を持ってる。でもこれ、なんと"-Wall "には含まれてない!)

if文に{}をつけないことを許すコーディングスタイルはこの問題を誘発したかもしれない。
でも、人は{}を付けたとしても間違ったプログラムを書くことがあるから、これは俺はあんまり関係ないように思う。

テストケースはこれを見つけることができたはずだけど、今回のはいろいろ条件が複雑なやつだったから難しかったと思う。
TLSのめちゃめちゃ多くのオプションを試さなきゃいけなかったからね。しかも正常系じゃないやつも。
俺、TLSLiteでちゃんとテストしてるか思い出せないもん。(月曜日怖いかも)

コードレビューはこの種類のバグについて効果的でありえる。
ただし単なる審査じゃなく、それぞれの変更に対してしっかりとレビューすることだ。
Appleコードレビューカルチャーがどんなもんか知らないけど、もし俺が同じようなことをやっちゃったとしたら、同僚のWan-Teh や Ryan Sleevi がばっちり見つけてくれたと、固く信じてる。
でも、誰もがそんなにいい仲間を持てるわけじゃないよね。


最後に。昨日、Apple証明書ホスト名をちゃんとチェックしていなかったことについて多くの議論があったんだけど、
それは OS Xコマンドラインcurlを使うと、IPじゃない証明書でもIPHTTPSにつながっちゃうってだけだったよ。変だけど。
Safariはこの問題には関係なかったよ。

2013-10-26

http://anond.hatelabo.jp/20131026214407

アメリカ合衆国アラスカ州の話だが、

「アップルの地図アプリ」で空港滑走路への突入が続出

 アラスカ国際空港で、アップル地図アプリに従った運転者が滑走路に進入するという事件が連続して発生した。

 「iOS 6」の地図アプリが、英国ロンドンでなく、カナダオンタリオ州にあるロンドンに人々を誘導して不興を買ったことを覚えているだろうか。

 アラスカ国際空港では、もっと大変なことが起きた。アップル地図アプリに従ったドライバーが滑走路に進入するという事件が、連続して発生したのだ。

 『Alaska Dispatch』紙が9月24日付けで掲載した記事によると、アップル地図アプリは、東ランプ経由で誘導路B(BravoのB)に入るよう指示したという。これはパイロットが滑走路にアクセスするところだ。そこからだと、ターミナルは滑走路のすぐ向こう側に見えるので、ドライバーは、(通過したすべての道路標識無視して)目に見える手がかりに従い、真っ直ぐターミナルに向かったという。

 この出来事はまず9月6日に起こり、9月20日にもう一度発生した。Alaska Dispatch紙によると、最初の事件の後、アップルはこの問題に対処すると述べたという。しかしその後も、ハイヤーの運転手が、空港警備と警察によって包囲されて腰を抜かすという事件が発生した。現在は、問題が解決されるまで、一時的バリケードが設置されているという。

2012-09-26

http://anond.hatelabo.jp/20120926185525

ジョブズが生きていたら、あのMapiOS 6に載せることを許しただろうか。

「使いものにならないクソだ」とか開発者罵倒してたんじゃないか

2012-09-24

Appbankさんしっかりしてください

学生がお遊び感角で始めたiPhoneiPadアプリ紹介サイトAppbank様。


弊社もAppbank様に多少なりレビューして頂いているので恩義はありますが、この頃Appbankのアホ記事がひどくなってきたのでまとめ。


プラチナバンド妄想

ソフトバンクショップに掲載された「プラチナバンドって何のこと?」というポスター、このポスターは酷い誤りなのだが、知識のないAppbank @egaku氏が描いたおこちゃま妄想絵。

明日7月25日ソフトバンク提供開始の「プラチナバンド」で何が変わるの? 」

魚拓

http://megalodon.jp/2012-0730-1904-05/www.appbank.net/2012/02/29/iphone-news/377057.php

http://www.dotup.org/uploda/www.dotup.org3451711.jpg

参考

http://suzunonejh.blog15.fc2.com/blog-entry-2727.html

masason ご指摘感謝します。その様な間違ったポスターが2店舗確認できましたので即刻厳重注意し停止させます。 RT @Hiro_rea: ところで、こういうインチキ広告の撲滅に挑戦してみる気はありませんか? http://pic.twitter.com/3xBzM3bf

http://twitter.com/masason/status/229833694024695809

まずはこれで、ソフトバンクショップの信頼を失ったわけですね。


iOS6地図への妄想

そして今日酷かったのはこの記事

iOS 6マップアプリ地図Googleマップ地図が異なる理由」

http://megalodon.jp/2012-0923-1651-57/www.appbank.net/2012/09/23/iphone-news/481548.php

参考

http://kabumatome.doorblog.jp/archives/65709956.html

inuro「ゼンリン地図データを利用していないからです」それは違うぞ。あまりに浅すぎる記事に絶句。 / “iOS 6マップアプリ地図Googleマップ地図が異なる理由 - iPhoneアプリAppBank

https://twitter.com/inuro/statuses/250029740596023297

あの会社大学サークルの延長みたいなものなので、記事をチェック校正するエディタがいないのが原因なのだろうけど(もしエディタがいてこの記事を載せていたらそのエディタは速攻クビ)もう少し体系化できんのだろうか?これじゃアプリレビューも頼みたくない。

 
ログイン ユーザー登録
ようこそ ゲスト さん