パスワードを忘れた? アカウント作成
6603973 story
Android

Google、断片化対策のためAndroidのSDKに新たな利用条件を設定 62

ストーリー by hylom
オープンだけど非オープン 部門より
あるAnonymous Coward 曰く、

Googleは11月13日にAndroid 4.2 SDKをリリースしたが、その使用許諾条件として、「Android OSの断片化につながるような行為を禁止する」という項目を新たに追加した(ComputerWorld)。

GoogleはAndroid OSのプラットフォームが分裂する「断片化」に強い危機感を持っている模様。断片化のため、Androidアプリが異なる端末で正常に動作しないことが問題になっているようだ。断片化の原因は、メーカーがAndroid端末の独自カスタマイズによるものらしい。

もっともCurrent AnalysisのAvi Greengart氏によれば、原因はGoogleにもあるとしている。新OSをNexusなどの自社端末に優先するため、Google端末とコンシューマ端末で使われているバージョンが異なる期間が長い。このため、ディベロパーの開発に差し障りが出ているのもAndroid OSの断片化の原因だと見ている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2012年11月21日 19時15分 (#2276683)

     まず、今回改訂された利用条件は、アプリ開発者向けに配布されている開発用ソフトウェア(SDK)の利用許諾のことね。Android全体じゃない。これ大事。

     次に、テーマになっている「断片化(fragmentation)」は、Androidのソースコードから分化して開発されて、互換性が確認できないプラットフォームのことだと考えるのが妥当だと思う。

     大前提として、Androidはオープンソースになってるから、誰でも好きなようにソフトウェアの設計図であるソースコードを手に入れる事が出来るのよ。そして、手に入れたソースコードを改造するのも自由だし、それをつかって製品を作っても(商用利用も)構わない。

     ただ、Android端末を作るメーカーそれぞれが好きなように改造したAndroid端末を販売してたら動きがバラバラになっちゃって、アプリがまともに動作しなくなるので、互換性があるかをチェックする仕組みが設けられている。それが互換性テストね。

     この互換性テストを通らないと、Androidを名乗ることは出来ない(商標権はGoogleが持っているので)。あと、Google Mapsとか、Google PlayとかGoogle社製のアプリを搭載できない(これらはオープンソースになっていない)。この条件で、Google社は増え続けるAndroid端末の互換性を保とうとしている。

     さて、それでも「互換性がなくてもいいや」って、端末を出してくるメーカーがあるわけです。
     オープンソースのAndroidをベースにして、互換性テストを通っていない端末は、例えばamazon社の"kindle"とか、日本では楽天が販売している"kobo"。最近だとアリババ会社が、Androidをベースに"Aliyun OS"というのを開発してるけど、これらはみんな互換性テストは通っていない。

     これら、派生のプラットフォームを出してる会社は、自分たちのプラットフォームのことを"Androidベース"って言うことが多いんだね。それがわかりやすいので。仮に会社がAndroidベースって大声で言ってなくても、開発者の方は"Androdベース"と認識するわけ。それがわかりやすいので。
     んで、これらの端末では、Android向けに作ったアプリがちゃんと動かない場合が多いのよ。互換性が確認できてないんだから当然だよね。

     けど、開発者もユーザーも、その端末はAndroidベースで動いているという認識なので、「なんだよー。同じAndroidなのにアプリがまともに動かないよ」となって、結論として『これだからAndroidはだめなんだ』と、なってしまう。

     AndroidのVMで動作して、Androidのライブラリを使い、AndroidのSDKでアプリ開発を出来て、みんながAndroidだと思っているけど、実はAndroidと互換性のないプラットフォームが増加する。

     これが、狭義の"Androidのフラグメンテーション"。

     広義には、Androidのバージョンの違いや、互換性テストを通っているのに存在する細かな差異のことを含めて言ったりもするけど、今回はアプリ開発者に対しての規約変更。端末の動作に関わるフラグメンテーションを起こすなアプリ開発者に言われても困る。アプリ開発者にはどうしようもないんだから。

     そんな状況で、kindleやaliyun OSが「互換性のない派生プラットフォーム」であることを知らず、AndroidのSDKを使ってうまく動作しなかったときに、SDKを配布しているGoogle社に報告して、サポートを求めてくる開発者も相当数出てきた。

     Androidアプリの開発者は、短い期間で急激に増加したので、どこからどこまでがAndroidなのか。そのあたりの啓蒙が足りていなかった。
     また、オープンソースである以上、他の会社が、Androidベースの端末を販売することを完全に止めることは難しい。

     なので、今回の規約の改定で、Androidの断片化(フラグメンテーション)を明確に否定する条項を加えたのは、これを加えることで互換性のないプラットフォーム向けのアプリ開発を、自分たちの責任範囲から外すため。
    『互換性テスト通ってない端末(フラグメンテーションの原因)を僕らはサポートするつもり無いから、君ら開発者もそのつもりでな!』っていう、Google社からのメッセージなのだと、僕はそう考えています。

     結論としたら、普通にAndroidアプリ作ってる分にはまったく影響ないし、互換性のないプラットフォーム向けにアプリ作るときは、そのプラットフォームを出している会社にサポート求めれば良いんだから、全く問題ないはないと思うよ。

    •  結論としたら、普通にAndroidアプリ作ってる分にはまったく影響ないし、互換性のないプラットフォーム向けにアプリ作るときは、そのプラットフォームを出している会社にサポート求めれば良いんだから、全く問題ないはないと思うよ。

      それができてないから、こんな話してるんじゃないの?
      #最後しか読んでない

      親コメント
      • by Anonymous Coward
        だから問題「ない」は「ない」って書いてあるだろw
        • by Anonymous Coward

          #2276683です。
          ごめんなさい。「ないはない」ってのは、誤字。「問題ない」と言いたかったんだ。
          長々書いてこの誤字はないよね。。。

          結局の所、Androidベースって言って、自分たちでは開発用ソフトウェア(SDK)を用意しない、互換性のないプラットフォームに、Google社がNoを突きつけた結果が、この規約変更って言いたかったのよ。

    • Sony Readerやkindle fireはAndroidベースだけど、kobo touch、kobo glo、kindle paperwhiteはQtベースであってAndroidではないな。

      kobo arcはGoogle Playも搭載しているAndroid端末

      親コメント
      • by Anonymous Coward

        kindleシステムのjavaベースの謎フレームワークってQtじゃないよなあ。
        法令に基づく表示(恐ろしいことに199ページもある)をQtで検索書けても一カ所も引っかからないし。

        本当にQt使ってるの?
        ソースはどこ?

    • by Anonymous Coward

      互換性テストってctsのことかもしれません

    • by Anonymous Coward

      なんか、Google とかなり密接になって開発しているような端末以外は「Android じゃない」
      って思えてくる。

      シェア低くない?
      ギャラクシーが圧倒的だからかなり多いとも言えるが。

      ただ、Kindle 頑張りそうだし。
      今後もフラグメントが増えそう。
      バージョンの違いも無論。

  • by sumeshi0206 (12305) on 2012年11月21日 17時22分 (#2276599) 日記

    いろんなところから猛反対にあって取り下げる。

    #うろ覚えだけど審査通らないとGooglePlayアプリ動かないんじゃなかったっけ?

    • by Anonymous Coward on 2012年11月21日 18時22分 (#2276653)

      > #うろ覚えだけど審査通らないとGooglePlayアプリ動かないんじゃなかったっけ?

      審査もあるし互換性テストも用意されているんですけど、そのテストがザルで、パスしても実際のアプリが動かないことが結構あるんですよ…。

      親コメント
    • by Anonymous Coward

      アプリ開発者的には大賛成なんだけどね。
      メーカーはまあ、縛られたくないだろうなぁ・・・。

      嫌ならAndroid使うな、で済む話ではあるんだけど。

    • by Anonymous Coward

      反対という声を上げるほど組織だった行動ができるくらいなら断片化してないんじゃないかな。

      Android開発界隈でされる会話を聞いていると結構すごいよ

      たとえば
      ・加速度センサーがついてるとする(たいてい付いてる)でも、このセンサーが画面ロック中も動くかどうかは機種によってばらばららしい。アプリによってはかなり問題になったりする(歩数計とかね)

      多分テストなんて共通仕様の一部部分しか確認してないんじゃないかな。でも、その隙間をメーカーが勝手に解釈されるとアプリ作る側は困るのよ。
      # カメラは実機がないと確認できないくらい非互換多いらしい

      • by Anonymous Coward

        加速度センサーがついてるとする(たいてい付いてる)でも、このセンサーが画面ロック中も動くかどうかは機種によってばらばららしい。

        で、画面ロック中の動作についての仕様がどこかにあるの?

        その隙間をメーカーが勝手に解釈されるとアプリ作る側は困るのよ。
        # カメラは実機がないと確認できないくらい非互換多いらしい

        仕様化されてない動作を前提にアプリを作るバカが悪い。

        • by Anonymous Coward on 2012年11月22日 10時05分 (#2277011)

          > 仕様化されてない動作を前提にアプリを作るバカが悪い。

          まあ、それはそうなんだけど。
          じゃあ「万歩計アプリは機種限定、もしくは終了」ということで。

          こういうのって程度問題でさ。Google側としてはやっぱり断片化が元で開発
          中止とかそういう事態を減らしたいと考えてるんじゃないのかね。

          この件なんか、むしろGoogle側の仕様策定が追い付いてないとも言えるぞ。

          親コメント
          • by Anonymous Coward

            この件なんか、むしろGoogle側の仕様策定が追い付いてないとも言えるぞ。

            そう。悪いのは仕様をちゃんと作らないgoogle(と仕様ではなく動作に従って勝手にアプリを作った開発者)
            仕様がはっきりしないのなら、googleに問い合わせて、仕様に従ってアプリを作るべき、あるいは仕様をgoogleに策定させるべき(万歩計アプリを「終了」とやらにしたくないのであれば)

            なのに元の(#2276933) が

            その隙間をメーカーが勝手に解釈されるとアプリ作る側は困るのよ。

            とメーカーが悪いとかいってるので…ねえ。

  • 断片化の原因は、メーカーによるAndroid端末の独自カスタマイズらしい。
    断片化の原因は、メーカーがAndroid端末を独自にカスタマイズしていることらしい。
    メーカーによるAndroid端末の独自カスタマイズが断片化の原因らしい。
    • 断片化の原因は、メーカーによるAndroid端末の独自カスタマイズらしい。
      断片化の原因は、メーカーがAndroid端末を独自にカスタマイズしていることらしい。
      メーカーによるAndroid端末の独自カスタマイズが断片化の原因らしい。

      Jobs「それ、カスタマイズが原因じゃないか」

      # カスタマイズなんてなくてもいいのさ、そう、アイフォーンならね

      親コメント
      • 同社製端末しかない筈のiOSもそこそこ断片化してる気がする・・・
        断片が把握しやすいから対策しやすい&古い断片の破棄が早いから、目立たないけどさ。

        親コメント
        • by Anonymous Coward

          どこら辺?
          気のせいじゃなくて根拠を書いてよ

          • by Anonymous Coward

            解像度もですし、iPhone5でアスペクト比が変わったりして、どっちにも対応となると一手間増えましたね。
            中のチップの性能が違うのでグラフィックを多用するリアルタイムゲームではどこに合わせるかって問題もあったり。
            Androidほどではないにせよ、ある程度は分断化してると思います。

            • by Anonymous Coward

              機種によっては、特定のセンサが付いてないとかバイブが付いてないとかがあります。
              「この機能があるかないか」じゃなく「どの機種か」で切り分けないといけないのが、なんだか微妙な感じで…。

              アスペクト比も、画面の縦と横がこのサイズだったらiPhone5、というif文で対応。
              この先、アスペクト比が違う端末が出るたびif文が増えるのか? と思いながら調整してました。

    • by Anonymous Coward

      あ、俺も因果が逆じゃないかと思った。
      「アプリが動かないから断片化」じゃなくて
      「断片化が起きてるからアプリが動かない」
      だよね。

      • by Anonymous Coward

        親コメが言いたいのは文法がおかしいって事じゃないの?
        しかし書いた後に「この文章はおかしいな」って本人は思わないのかね。

    • by Anonymous Coward

      メーカーによる端末独自のAndroidカスタマイズが断片化の原因らしい。

  • by Anonymous Coward on 2012年11月21日 17時26分 (#2276602)

    「デフラグ、デフラグ~」しないといけないことかと思ったら、読み返したら違う?
    SSDのプチフリを防止しなきゃ!とGoogleさんが言い出したのかとおもったら。

    ##そういうのって「断片化」って言ってたっけ?

  • by Anonymous Coward on 2012年11月21日 17時33分 (#2276610)

    もしもしのほうは、PlayやMapアプリを提供しないことで制限かけられるとは思うけど、
    たとえば、Kindle Fireみたいなのは、止められるの?

    • by Anonymous Coward on 2012年11月21日 18時05分 (#2276641)

      Kindle FireがAndroidを改変して使っているのは周知の事実だけど、Amazonはあれを「Androidタブレット」であるとは一言も言っていないので。

      OSSなのでソースコードを使って商品を作ることは自由だけど、「Android」の商標はGoogleが持っているから、そうした非コンパチの商品をAndroidと名乗ることはGoogleの商標を侵害することになる。そういう理屈でブレーキがかけられるってことじゃないですかね。

      親コメント
    • by Anonymous Coward

      kindle fireは、Playアプリの動作は販売元が保証してないんだから、別物と考えていいんじゃない。
      Playに乗っかって、かつ断片化した端末が問題なわけで。

  • by Anonymous Coward on 2012年11月21日 17時59分 (#2276637)

    SPモードとかそういうのが足を引っ張ってるとは聞くがそういうことかな。

    • by Anonymous Coward

      ワンセグやFelicaも怪しそう。FelicaはNFCの流れもあるからまだいいとして、ワンセグチップあたりは
      USB接続のデバイスになったりするんだろうか。

      • by nmaeda (5111) on 2012年11月21日 19時18分 (#2276684)

        端末メーカーが独自のハードウェアを開発したり、そのためのAPIを追加することを否定しているのではなく、既存APIの挙動を変更するような、明らかにアプリレベルで互換性がなくなる改造を否定していると、どこかで読んだ覚えが。
        (確かに抽象的で、境目は曖昧だが)

        そもそも、端末メーカーやキャリアによる改造を今さら否定できないだろう。Appleと違って、それらが開放されているからこそ、メーカーやキャリアが飛びついたという面は否定できないだろうから。

        Googleは、市場がNexusやそのデッドコピーばかりになり、市場が縮小することは望んでいないだろう。

        親コメント
      • by Anonymous Coward

        そういうことではなく、おそらくもっと細かい話だと思います。

        センサーやNFCは、Android の APIが規定されているため、使い始めるときは同じ手順で問題ないです。(問題の無いように作っている。)
        だけど、「さてもう1回使おう」とか、「アプリ間で一つのデバイスを使おう」とすると、メーカーXのA端末は大丈夫なのに、メーカーYのB端末ではメモリリークするといった個別の問題が発生します。
        アプリ開発者がデバイスのリソース解放を明記してないからと言えばそれまでなんですけど、それならGoogleがドキュメントに使用手順を明示すべきなんですよ。

        そもそも、デバイスドライバの作りや挙動までGoogleが規定しているわけではないから、メーカー間、ひどいと同一メーカーの端末間で非互換性が生じます。

        ちなみに、ワンセグは完全にメーカー毎の独自実装であり、一般の開発者は触れられないです。著作権が怖いのかなあ。

        • by Anonymous Coward

          > アプリ開発者がデバイスのリソース解放を明記してないからと言えばそれまでなんですけど、それならGoogleがドキュメントに使用手順を明示すべきなんですよ。

          リソース解放のAPIがあるのはなんでなのか、ちょっと考えれば使用手順ぐらいわかるでしょう。

          いちいちコード例がないとプログラムできないコピペプログラマじゃあるまいし。

    • by Anonymous Coward

      別に拡張するのはいいよ。ただ、標準API叩いてもハードコーディングされたと思わしき何かが返ってくるとか
      公式ドキュメントに書いてある仕様が保証されない、とか
      そういうのを避けてくれればいい。

  • by Anonymous Coward on 2012年11月21日 18時10分 (#2276646)

    ハードウェアの設計が自由なんだからそれに付随してソフトの断片化は避けられないんじゃないの?
    もし厳格なレギュレーションを導入したら、androidの利点をスポイルしてしまうことになるんじゃないかな。
    玉石混淆だけど、安かろう悪かろうっていう二流、三流品でも世の中には需要があって
    それができるプラットフォームは現状androidだけでしょ。

    • by Anonymous Coward
      概ね同意なんだけど
      顧客やエンドユーザーにそれを言うと罵声が飛んでくるのが現状なんだ
  • by Anonymous Coward on 2012年11月21日 20時18分 (#2276720)

    俺だけでいい.

    温暖化対策のためのアプリルールとは?まで考えてしまった.

    • by Anonymous Coward

      CPUに負荷がかかりすぎる処理はしない
      ARROWSは何やっても熱すぎるから基本的に非対応とする

      とか?w

  • もっと具体的に書いてもらわないと対応できないと思うのですが…

  • by Anonymous Coward on 2012年11月21日 21時09分 (#2276749)

    の方が、その辺の国産のものより、ずっと独自改変部分が多かったりする。

  • by Anonymous Coward on 2012年11月21日 23時44分 (#2276820)

    なんか昔会社でやたらデフラグしてさぼっている先輩がいた(複数)。
    最近はみかけない。

    • by Anonymous Coward

      きっと現在はデスマ中なんでせう
      先輩が、なのか自分が、なのかは知らん

  • by Anonymous Coward on 2012年11月22日 11時50分 (#2277085)

    またIS01の話かー!

  • by Anonymous Coward on 2012年11月22日 16時17分 (#2277294)

    スマホでも、ディスクの断片化はあるのね
    とか思ってしまった。 orz

    # 関係ないのでAC

typodupeerror

アレゲはアレゲを呼ぶ -- ある傍観者

読み込み中...