質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

1418閲覧

Android studioのフレームワークバージョンとサポートライブラリーの違いについて

hood

総合スコア351

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2018/07/16 11:42

Android studioでimportするライブラリーサポートとフレームワークバージョンの違いってなんですか?どちらもimportするもので同じように見えるのですが.....

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

既に読んでいるかもしれませんが、もしまだであれば読んでください。

サポートライブラリのおおよその役割は、「下位互換性を保つ事」と「新しい機能の追加」です。

おそらく前の質問の流れからして、support-v4/appcompat/preferenceの事を言っているかと思いますが、それらは主に「下位互換性を保つ事」の役割が大きい(大きかった?)です。

例えばandroid.app.Fragmentを例に出します。

フレームワークであるandroid.app.Fragmentは、リファレンスを見ると「added in API level 11」と書かれています。
ですので、android.app.Fragmentを使用した場合、API11以上でビルドしないとエラーになる、API11以上でビルドしても、API11対象であるandroid3.0より古いOSだと実行時に例外が発生します。
そこで、同じ機能を持つsupport-v4を使用する事により、android3.0より古いOSでも例外を起こさずに動作させる事ができます。

ここからは自分の憶測。
そこまでandroid開発に詳しいわけではありませんので。

Googleとしては、OSに組み込まれたFragmentを使ってほしい、しかしいきなり「古いOSでは動きません」では誰も使ってくれない。
そこで、サポートライブラリを用意し、しばらくはそちらを使ってもらい、古いOSのサポートが必要なくなったらフレームワークに移行してもらおうとしたのではないかと。

ただ、昨今のサポートライブラリを見る限りでは、「機能拡張」に重きをおいているのではないですかね。
android.app.Fragmentがdeprecatedになったのもそのような流れではないかと。

投稿2018/07/17 00:58

katsuko

総合スコア3462

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hood

2018/07/17 04:02

この前も回答してくださった方ですね!ありがとうございます! 簡潔かつ的確で、こんな私でもすっと理解できました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問