Androidとは 特徴 構成 歴史 オープンソース アプリ開発

Androidアプリを使ってアニメ、キャラクター、美少女、特撮、映画、ゲーム、芸能人といったような、ねんどろいど フィギュアでストップモーション動画を作る方法

初音ミクは、クリプトン フューチャー メディアから発売されている音声合成 デスクトップミュージック DTM 用のボーカル音源、キャラクターで、年齢16歳、身長158cm、体重42kgの少女のバーチャルアイドルです

動画見放題ch ライトは、映画やドラマをはじめ、人気アイドルイメージやバラエティなど様々なジャンルの中から厳選した5,000本以上の人気作品を月額550円で見放題の動画配信サービスです。

動画配信サイト特集

エンタメイベント情報

Androidとは

Androidとは、Googleが開発した携帯汎用オペレーティングシステムです。Linuxカーネルやオープンソースソフトウェアがベースで、主にスマートフォンやタブレットなどのタッチスクリーンモバイルデバイス向けにデザインされています。PC用にはAndroid-x86、テレビ用にはAndroid TV、自動車用にはAndroid Auto、ウェアラブルデバイス用にはWear OSがあります。世界一のシェアを持つモバイルオペレーティングシステムであり、20億人を超える月間アクティブユーザーがいます。

Androidの特徴

ユーザーインターフェース編集

Androidのユーザーインターフェース UI はサードパーティーの端末メーカーによるカスタマイズ許可され、通例メーカーごとに独自のUIが搭載されています。カスタマイズが施されていない標準のAndroidは通称AOSP版と言われ、Android Open Source Projectのソースコードから直接ビルドしたものです。また、メーカーやサードパーティーが開発したものはカスタムROMと言われています。

Androidの基本操作はタッチインターフェースとなっています。指を使って直感的な操作ができるようになっています。表示されたボタン類を押すタップ、長押しタップ、つまむ、画面端からタップスライドしてメニュー類を表示するスワイプ、マルチタッチによるピンチや回転などができるようになっています。画面をタップした際に、ボタンを押したという感覚を起こさせるために、本体をバイブで振動させる機能を持ち合わせ、ジャイロスコープやGPS、加速度センサーなどのハードウェアをサポートしています。アプリケーション側からそれらにアクセスして活用する事もあり、ジャイロスコープは端末を縦向きから横向きに変更する際に使われる事が多い。ゲームの例ではレースゲームで車をハンドル操作する際、端末を傾けてハンドル操作に当てはめるものもあります。

ホームスクリーン上には、パソコンのデスクトップ画面のようにアプリケーションのアイコンが並び、アプリをインストールするとホームスクリーン上に自動的に配置されます。また長押しタップでアイコンを移動したり、フォルダを作成して格納する機能も持ちます。これに加えてウィジェットを配置できるようになっています。ウィジェットは、天気予報やニュースなどのライブ情報などがあり、ホームスクリーンから直接見ることが出来ます。ホームスクリーンは画面外にも複数用意され、画面を左右にスワイプすることで複数のホームスクリーン間を移動も出来ます。

画面上部にはステータスバーが配置されているステータスバーは、新着メールやSMSを受信したりデバイスを接続した時に、ユーザーに作業を中断させることなく知らせるシステムとして使われます。また、多くのAndroid端末には、通信の切り替え、機内モード、システム設定など、頻繁に使われる機能も、この通知バーに格納されているものが多くあります。日本国内では通称として通知バーと呼ばれています。

画面下部には戻るボタン、ホームボタン、マルチタスク、アプリケーションリストボタンによる各操作を実行できるナビゲーションバーが、Android 3.x、および4.0以降から配置され、これ以前のバージョンでは、ハードウェアキー 物理ボタン方式が主流であった。Android 9 Pieではホームボタンとマルチタスクボタンが削除され、スワイプジェスチャーに置き換えられました。ただし、端末メーカーによっては従来のナビゲーションバーを採用しているものや、設定によって従来のナビゲーションバーを利用できるようになるものもあり、Android 10では戻るボタンも削除されました。

文字の入力編集

Androidには文字入力のためのIMEを搭載され、テキストボックスや検索ボックスなどの入力エリアをタップするなどしてフォーカスを当てると画面上に仮想キーボードが表示されます。この仮想キーボードを、タップやスワイプ操作することによって文字を入力できるようになっています。IMEはサービスアプリケーションとして動作し、エンドユーザーが自由にサードパーティー製のIMEをインストールすることも可能になっています。IMEとハードウェアが対応していれば、BluetoothやUSB接続の外付けキーボードを接続して入力することができます。また発声によって文字入力を行う音声入力システムも備え、Googleあるいはサードパーティー製の手書き入力アプリを利用して、指やスタイラスペンなどで書いた文字を認識させることもできます。

2018年、Android OSには標準で日本語入力用のIMEが搭載されていません。そのため、日本語入力を行うには、Google 日本語入力やATOKなどのサードパーティー製IMEをインストールする必要がありました。日本国内で販売されている端末は、最初から日本語入力できるようにiWnn、POBox Touch、S-Shoin、ATOK、FSKARENなどが、メーカーによって搭載されています。一部のAndroidデバイスでは、Google純正の新たなIMEであるGboardが最初から搭載されています。また2017年11月にはGboardが日本語に対応し、追加の言語およびキーボードレイアウトをダウンロードするだけで日本語入力ができるようになりました。

アプリケーション編集

Googleの認可を受けた端末には、アプリケーションマーケットとしてGoogle Playがインストールされ多くの端末では、このGoogle Playからアプリコンテンツをダウンロードして使えるようになっています。2019年9月のGoogle Play内では、280万本を超えるアプリケーションが提供されています。

GoogleはGoogle Playを経由しないアプリ配布も認められ、APKファイルから直接インストールできるようになっています。それらのアプリは野良アプリと呼ばれます。ただし一見普通のアプリに見える悪質なアプリ マルウェアも存在するため、公式マーケット以外からのダウンロードには細心の注意が必要です。

Androidで表示されるホーム画面を表示させるアプリケーションのことはホームアプリと呼ばれ、たくさんのアプリが公開されています。ユーザーは好きなものを選ぶことができ、別名、ランチャー Launcher とも呼ばれています。

Androidの構成

Androidは、カーネルからミドルウェア、ユーザーインターフェース、ウェブブラウザ、電話帳などの標準的なアプリケーション ソフトウェア群までを1つのパッケージにして提供されています。

カーネルにはLinuxの関連技術が使用されているが、その他の部分は様々な技術が用いられており、例えば標準Cライブラリ libc のBionic 英語版はNetBSDのlibcとLinuxのlibcを組み合わせたものをベースにしています。

Androidのアーキテクチャ機能

携帯電話網への対応 GSM、UMTS、CDMA2000、EV-DO、LTE、3G、4G、5G、その他のネットワーク対応 Bluetooth、無線LAN、NFC
各種ハードウェアへの対応 衛星測位システム、加速度センサ、磁気センサ、2D/3D描画支援ハードウェア GPU など、ウェブブラウザ Chromiumベースのブラウザが組み込まれています。4.3まではWebKitベース。この機能は、他のアプリケーションからも利用可能です。
メール ショートメッセージサービス SMS 及びマルチメディアメッセージングサービス MMS が利用可能です。
その他のアプリケーション Javaで作成されたアプリケーションを独自のDalvik仮想マシン Android Runtime 上で動かすことができます。Android 5.0以降では標準の仮想マシンがAndroid Runtime ART に変更され、Dalvik/ARTは通常のJava仮想マシンとは異なり、メモリの消費が低く抑えられているなど、モバイル向けに最適化された設計となっています。
アプリケーションマーケット Googleにより、Android用アプリケーションを配布、販売するGoogle Play Storeが運営されています。
マルチタッチ ネイティブに対応して、HTC Heroなどの機種でサポートされています。ただし、Appleによる特許訴訟を避けるため、2010年2月までは、初期的にはカーネルレベルで無効化されています。
データストレージAPI データ保存用にSQLiteが組み込まれています。
マルチメディアAPI Media Frameworkと呼ばれる映像と音声用のライブラリにより、H.263、H.264、3GPP/MP4コンテナ、H.265、 MPEG-4 SP、WebM、AMR、AMR-WB、3GPPコンテナ、AAC、HE-AAC、MP4/3GPPコンテナ、MP3、MIDI、Vorbis、WAV、JPEG、PNG、HEIF、GIF、BMP、WebPなどに対応しています。。
フォント FreeTypeフォントライブラリにより、TrueType、Type1、OpenTypeなどのフォント形式に対応しています。
その他のライブラリ OpenGL ES、Vulkan、OpenSL ES、OpenMAX AL、Skia SGL、SSL、zlib、標準Cライブラリ Bionic、標準C++ライブラリ libstdc++/libc++ など、プログラミング言語 編集
カーネルとライブラリ、ランタイムはほとんどがC言語またはC++で記述されています。アプリケーションとアプリケーション、フレームワークは、Google独自に構築した仮想マシンであるDalvik仮想マシンまたはAndroid Runtime ART 上の Java Platform, Standard Edition Java SE のサブセット+Android拡張環境で記述します。プリインストールされたアプリ、エンドユーザーが後からインストールするアプリを問わず、共通の仮想マシンおよびフレームワークを使用します。

対応CPU編集

Googleが公式サポートしているCPUはARM ARMv5以降、MIPS、x86です。ARM以外の環境はAndroid 2.3から対応。端末シェアの多くはARMv7とARMv8が占めているが、日本においては2014年3月に大手家電量販店のビックカメラが自社ブランド製品としてIntel Atom搭載のタブレットを発売するなど、x86による製品もありました。

Google Chrome OSにはAndroidアプリケーションの実行環境としてAndroid Runtime for Chrome ARC が搭載されており、x86ベースやARMベースのCPUを搭載するChromebook端末上でAndroidアプリケーションを動作させることもできます。

仮想マシン編集

Android 4.4以前のバージョンで動作するアプリケーションは、基本的にはDalvik仮想マシン VM 上で動作します。DalvikはJavaのオープン実装であるApache Harmonyをベースとしているが、Java APIセットからはSwingやAWTなどが除去され、Android専用のUIフレームワークや独自ライブラリなどが追加されています。Java CDCのAPIは、全てではないが、概ね含まれています。なお、オラクル Javaの互換性テストを通過していないため、正式なJavaではありません。APIセットはJava Platform, Micro Edition Java ME とも異なります。Android 7.0 Nougat以降はJava APIライブラリの実装がOpenJDKベースになりました。

Googleから提供されているソフトウェア開発キットでは、Javaプラットフォームによるプログラミング環境と、C/C++による開発がサポートされています。Java以外にも、Javaプラットフォーム向けの複数の言語Scala、Kotlin で書かれたプログラムがDalvik/ART上で動作します。Java Native Interface JNI を利用して、JavaとC/C++間で相互運用することも可能です。Android 2.3以降ではNative Activityのサポートにより、使用可能なAPIの制約はあるもののC/C++のみでアプリケーションを開発することも可能になっています。また、.NET Framework互換環境の1つであるMonoもAndroidに対応して、XamarinとMicrosoft Visual Studioを利用することで、.NET言語(C#/F#)を使用してAndroidアプリケーションを開発することができます。

Android 4.4 KitKat からは、デベロッパー向けに新たな仮想マシンAndroid Runtime ART が実装されました。ARTは、Dalvikよりもアプリケーションの動作効率などを向上させることを目的に開発されました。Dalvikの場合、多様なハードウェアに対応できるよう、アプリを中間コードの状態で保管しておき、実行直前にネイティブコードに変換して動作させるJITコンパイル方式が採用されています。一方でART仮想マシンは、予め最初からネイティブコードに変換しておくため ahead-of-time; AOT、実行速度や動作速度が向上します。Android 7.0以降のARTではAOTとインタープリタとJITをミックスしたハイブリッド手法が採用されました。

なお、Android 4.4では依然としてDalvikが標準となって、ARTを用いるためには開発者向けオプションで設定が必要です。ただし、アプリケーションによってはART上では正常動作しないものもあり、Dalvikとの完全互換は保証されていません。

Android 5.0からは、ART仮想マシンが標準となりました。5.0に搭載されたバッテリー改善システムと、ARTの効率性の良さという組み合わせによって、バッテリー持続時間がAndroid 4.4と比較して1.37倍と大幅に伸びました。

ブートローダー編集

ブートローダー bootloader とは、デバイスの電源を入れた際にフラッシュメモリ上にインストールされたLinuxカーネルを読み込み、そこからAndroidを起動させるシステムです。パソコンで例えると、BIOSという部分に相当します。ブートローダーのインターフェースは、一部の端末でアクセス可能です。多くの場合は、電源ボタンと音量ダウンボタンを同時押ししながら電源を入れて起動させる事ができます。起動後に表示されるインターフェースは、fastbootモードとも呼ばれます。ほとんどの携帯端末ではブートローダーにUbootが使用されています。

開発環境 編集

アプリケーション開発用にはAndroid SDK Software Development Kit が、ランタイムとライブラリの開発用にはAndroid ND KNative Development Kit が無償提供されています。SDKとツール類は後述のAndroid Studioに含まれているほか、単独のコマンドラインツールも利用可能です。Android SDKに含まれる通信ツール Android Debug Bridge adb によって、Androidデバイス 携帯電話機、タブレットなどとホストPCとをUSBで接続して、アプリケーションプログラムをデバイス上で実行しながらPC上でデバッグすることができます。Googleが有償で提供するSIMロックフリーの開発専用携帯電話機や他社の専用の携帯電話機エミュレータでないと、低レベルのランタイムとライブラリを書き換えることができません。統合開発環境は、Android Studioが推奨されています。Android Studioの実行環境つまりホストとして対応しているOSは、Microsoft Windows、macOS、Linux Ubuntuなど、Google Chrome OSです。Visual Studio、IntelliJ IDEA、RAD Studioなど他の統合開発環境もAndroid開発に対応しているものがあります。

当初はアプリケーション開発にEclipseと専用プラグイン Android Development Tools; ADT が利用されていた。Googleは、2013年5月15日に開催されたGoogle I/OでAndroid Studioと称する新たな統合開発環境を開発中であることを表明しました。これはIntelliJ IDEAをベースにしたオープンソースによるAndroid専用の開発環境であり、ビルドツールとして従来のApache AntではなくGradleを採用しています。また、レイアウトのデザインもよりグラフィカルで端末実機のイメージに近くなるとされる。2014年12月8日に正式版1.0がリリースされました。これに伴い、Eclipse用プラグインのサポートは2015年に終了しました。

Android SDKでは、Android Virtual Device AVD と呼ばれるPC上で動作する仮想デバイスを用いることができます。対応CPUと同様にARM、MIPS、x86の3種類のアーキテクチャをエミュレーションするソフトウェアがSDKに同梱されて、これにロードされるシステムイメージもAndroidバージョンごとにそれぞれ提供されています。ユーザーがこれらを選択して、任意のAndroidバージョンとCPUエミュレータの組み合わせによるAVDを作成します。ただし、一般的なエミュレータと同様、他のコンピュータシステムをエミュレーションするために動作が非常に重く、快適なデバッグを行うことは難しい。これをカバーするため、仮想化支援機能をサポートしているx86アーキテクチャのCPUが搭載されたホストマシン上では、x86システムイメージによるAVDを高速化することができます。WindowsおよびmacOSにおいては、インテルが提供するIntel Hardware Accelerated Execution Manager HAXM によってIntel VTによるサポートを有効にすることができます。また、Linux版のSDKにおいては、x86エミュレータ自体がKVM上で動作させることが可能で、Intel VTまたはAMD-Vによるサポートによって高速化することができます。

Google Mobile Service 編集

ほとんどのAndroid端末には、プロプライエタリソフトウェアのGoogle Mobile Service GMS アプリがプリインストールされています。Google Play、マップ、ギャラリー、カレンダー、Gmail、トークなどが含まれています。GMSアプリの搭載は互換性テストのCompatibility Test Suite CTS を通過し、Googleにライセンスを与えられた端末のみ認められています。オープンソースのAndroidから派生して、これらのアプリが入っていない場合は、CyanogenMod Gapps などからroot権限で /system フォルダにコピーしてインストール可能です。

エミュレーション モデル編集

基本ハードウェアを goldfish と定義しており、SDKのQEMUエミュレータはそれを踏襲しています。サポートしているスペックは下記の通りです。ただし、2007年10月当時のスペックです。

▼goldfishモデル~
メインメモリ 96MB
VRAM 8MB
画面サイズ 480×320画素 HVGA、または320×240画素 QVGA、ともに縦長または横長配置。

Androidの歴史

アンディ ルービンが設立したプラットフォームベンダーである米Android社を、2005年にGoogleが買収したことから一時はGoogleが gPhone と呼ばれる独自の携帯電話端末の開発を進めているという憶測が流れました。2007年11月に Open Handset Alliance オープン ハンドセット アライアンス、OHAと表記を通じて新規プラットフォームの概要のみが発表される結果となります。

2007年11月5日、携帯電話用ソフトウェアのプラットフォームであるAndroidを、米検索最大手Google、米クアルコム、独通信キャリアのT-モバイル T-Mobile International などが中心となり設立した規格団体 OHAが発表します。

2008年9月23日 米T-Mobile USA社は世界初の商用Android搭載端末としてT-Mobile G1を発表します。OHAはソフトウェア開発キットSDKの正式版 Android 1.0 SDK, Release 1を発表。OHAはAndroidの全ての動作環境を、2008年中にオープンソースライセンスの1つであるApacheライセンス Ver.2.0の下で公開する方針だとしています。OHAには上記の企業以外にも、日本のNTTドコモ、KDDI、テレフォニカなどの電気通信事業者や、米モトローラ、韓国サムスン電子、LGエレクトロニクスなどの携帯端末メーカー、米インテル、ブロードコム、NVIDIA、テキサス インスツルメンツ、マーベルなどの半導体メーカーなど、大手企業が合わせて34社も参加しています。

10月22日 世界初のAndroid搭載スマートフォン、T-Mobile G1がT-Mobile USAから全米向けに発売され同時に、Googleはアプリケーションを販売するためのマーケット Android Marketを開設します。
12月9日 新たにソフトバンクモバイル、ボーダフォン、東芝、ソニー エリクソン モバイルコミュニケーションズ、華為技術、エリクソン、オムロン、ASUS、ガーミン、ARMなどの14社がOHAに加わった事が発表されます。

2009年6月24日 ソフトフロント、Android上で双方向VoIP通話に成功を発表します。
9月 Android 1.6 SDKの提供を開始。
10月23日 HT-03AでAndroid 1.6が提供開始。
11月8日 米国のベライゾンワイヤレスよりモトローラ製Android 2.0搭載のスマートフォン、Motorola Droid がアメリカで販売されます。

2010年1月5日 Googleより、世界初のAndroid 2.1を搭載したNexus Oneが発売されます。
12月16日 Googleより、世界初のAndroid 2.3を搭載したNexus Sが米国で発売されます。

2011年2月24日 モトローラ モビリティより、世界初のAndroid 3.0を搭載したMotorola Xoomが米国で発売されます。
11月17日 Googleより、世界初のAndroid 4.0を搭載したGalaxy Nexusのグローバルモデル GT-i9250 が欧州で発売されます。

2012年7月10日 Android 4.1が公開され、最初にGalaxy Nexus、Motorola Xoom、Nexus Sのグローバルモデル向けにアップデートを開始します。

Androidアプリとは

Android appsからオペレーティングシステム OS のアンドロイドを搭載するモバイル端末向けに作成されたアプリケーションソフトです。スマートホンやタブレット型端末のほか、同OSに対応したデジタルカメラなどで利用でき、あらかじめ端末にインストールされているほか、Google Playから入手できます。

Googleアシスタント何ができる?

Google アシスタントは、テキストや音声でのさまざまな問いかけにAIが答えてくれます。

Google アシスタントを使ったことがありますか?Googleが開発した多機能で優秀なAIアシスタントで、スマホに OK Googleと呼びかけ、音声入力すれば、電話やメール、SNSの送信、検索、計算、天気、スケジュールやタスクの管理、動画や音楽の再生などさまざまなことができます。

毎朝のニュースやスポーツもチェックしてくれます。OK Googleと呼びかけて、サイトにアクセス、自分の見たい情報を検索してくれます。
また、人によっては、使い方は様々ですが、スマホに話しかけるだけであらゆる情報を調べたり、お手伝い、勉強や学習などもできる最高のAIアシスタントでスマホのパートナーです。

まとめ

Androidは、オープンソースで無償で提供されています。 Apache v2 ライセンスで配布され、誰でもソースコードを入手することが可能です。

アプリケーションの開発環境が整っています。誰でも無償で利用することが可能です。 アンドロイド上で動作するアプリケーションの開発用には Android SDK Software Development Kit が、ランタイムやライブラリの開発用には Android NDK Native Development Kit がそれぞれ提供されています。

開発言語は基本的に Java を利用します。

▼エンタメイベント特集~
DMM GAMES
動画特集イベント案内ランキング
ゲームコレクション

▼オススメ案内~
年会費 無料 楽天カード
楽天ショッピングでお得にポイントを貯まる
↓↓↓


~記事カテゴリー~

エンタメイベント

エンタメイベント特集

アンドロイド探検隊

タイトルとURLをコピーしました