Android アプリ開発時に調べたり試したりした、C++ によるネイティブアプリ開発情報を中心に発信しています。 また、Android Studio で Java によるアプリ開発情報も、同時に発信しています。
このページに、Android 開発に関するトピック一覧をまとめています。
ご利用に際しては、必ずプライバシーポリシー(免責事項等)をご参照ください。
投稿 December 12, 2017、更新 May 27, 2022
Windows 10 + Visual C++ で Android アプリを開発できるようになり、 手元に古い Android 端末も用意できたので、いろいろ試し始めました。 私はもともと Windows + Visual C++(主に MFC 使用)でデスクトップアプリを開発していましたので、 何から何まで何でも自由にできる Android ネイティブアプリを作ろうとしました。
ところが、書籍やネットには、ネイティブアプリに関する情報があまりありませんでした。
そこで、このページでは、Android ネイティブアプリを開発するときに調べたり試したりした内容、コードについて、 勉強しながら書いた内容をまとめて、記録・紹介しています。 ですので、内容的には完全でなかったり、よりよい方法があったりするかもしれませんが、 とにかくやってみた結果を記述しています。
トピックごとにページを用意しています。 内容・コードについては手元で動作しているものをもとにしていますが、改めて、十分に精査されていない可能性もありますので、ご注意をお願いします。
▼ 新しい開発環境のお知らせ February 20, 2020
当初は Visual C++ 2015 を Win10 32 ビットで動作させ、Android 4.4.2 の実機を接続して試していました。
実機を Android 8 や Android 9 にしたところ、Visual C++ 2015 では使用可能な Android 開発環境が制限され、 実機にてデバッグできませんでしたので、マイクロソフト・アカウントがある個人なら無償で利用可能な Visual Studio Community 2019 をインストールし、Android 9 端末でデバッグもできるようにしています。
Visual Studio Community 2019 のインストールについては、 Visual Studio 2015 がインストール済みのノート PC に、すべての機能を既定のCドライブにインストールしている 「VS Community 2019 を共存インストールする」、 同じく Visual Studio 2015 がインストール済みのデスクトップ機で、 Cドライブが SSD のため Cドライブには最小限に、なるべく HDD のDドライブにインストールされるように工夫した 「VS Community 2019 を共存インストールする(デスクトップ)」 に書いています。 これからインストールされる方は参考にしていただけると思います。
なお、現時点では、特に注釈のない限りは VC++ 2015 を用いたコードですが、基本的にはそのままで VC++ 2019 でも動作すると思われます。
更新 August 19, 2022
Android Studio の Java 開発環境で、独自のビューを作成して設定し、アプリを作成できるまでを目標にしています。
Canvas だけでもアプリはできる! (項目を隠す)
#1
Android Studio で文字を自由に描画する(6/23/2022)
#2
Android Studio で画像を自由に描画する(6/29/2022)
#3
Android Studio でタイマーによる自動画面更新(7/4/2022)
#4
Android Studio で効果音を鳴らす(7/4/2022)
#5
Android Studio で画面を準備する(7/18/2022)
#6
Android Studio でボタン表示&入力(7/23/2022)
#7
Android Studio でゲームクラスを更新(7/30/2022)
#8
Android Studio でゲームとして整える(8/18/2022)
更新 August 30, 2024
開発環境のインストール (項目を隠す)
VS Community 2022 をインストールする(5/12/2022)
Android Studio をインストールする(5/21/2022)
Android Studio の初期テスト
(項目を隠す)
Android Studio で新規プロジェクトを作成する(5/19/2022)
Android Studio で全画面プロジェクトを作成する(5/24/2022)
Android Studio で Native C++ プロジェクトを作成する(5/31/2022)
Android Studio で AdMob プロジェクトを作成する(5/28/2022)
Android Studio で ActionBar を非表示にする(6/3/2022)
【ネイティブ・VC++】Android フレームワーク
(項目を隠す)
android_main 関数(ループ前)(1/12/2018)
android_main 関数(ループ前2)(1/29/2018)
android_main 関数(メインループ)(6/8/2019)
【ネイティブ・VC++】Android アプリ開発
(項目を隠す)
APP_CMD_*** メッセージ(9/18/2018)
VC++ 2019/2015 で新規プロジェクトを作成する(3/5/2021)
VC++2019
アプリ固有のファイルへのアクセス(12/20/2017)
タッチ入力の取得(基本編)(4/9/2021)
VC++2019
Backボタンを処理する(2/15/2018)
アプリケーション名を指定する(12/28/2017)
ネイティブアプリのアイコンを設定する(3/20/2021)
【ネイティブ・VC++】OpenGL
(項目を隠す)
OpenGL ES で 2D テクスチャを描画する(3/13/2021)
VC++2019
OpenGLES で 2D テクスチャを作成する(3/13/2021)
VC++2019
24 ビット BMP 画像を読み込む(3/6/2021)
VC++2019
OpenGLES での色指定(3/6/2021)
VC++2019
【ネイティブ・VC++】JNI
(項目を隠す)
動的にパーミッションを取得する(6/15/2020)
VC++2019
Java クラス関数の作成と呼び出し(2/17/2020)
VC++2019
JNI によるパブリックなパスの取得(1/11/2018)
JNI によるスタティックな定数の取得(1/11/2018)
JNI でウェブサイトを開く(4/5/2021)
VC++2019
【ネイティブ・VC++】C/C++
(項目を隠す)
C/C++ による文字列操作 CString を代用(10/12/2018)
C/C++ によるログ出力(3/6/2021)
VC++2019
C/C++ による数値のフォーマット(2/16/2018)
C/C++ による経過時間の検査(12/25/2017)
C/C++ による現在日時の取得(12/25/2017)
【Android アプリ開発】その他
(項目を隠す)
Play Console の新規約を受け入れる(5/6/2020)
ここにあった記述は「C/C++ によるログ出力」に移動されました。
更新 December 11, 2017
筆者は Windows、Visual C++/MFC で主にコーディングをしています。
GUI の OS としては、
参考にしたのは Windows の基本動作を理解可能な Programming Windows、WindowProc 関数でメッセージを処理するものです。 WM_ で始まる Windows メッセージを受信し、必要なものを処理します。 この構成の理解は、Android でも役に立つ、理解の基本になると思います。
そして自然に MFC に移行していったわけですが、Windows API と組み合わせると、かなり何でも自由にできてしまいます。 ポインタやメモリリークなどの危険は常にありますが、コモンコントロールも自由に使えて、画面の構成も自由、 他人のウィンドウにメッセージを出して制御するなんてことも可能で、大変魅力的に感じました。
Android でも自由に何でもやりたい、それにそもそも今から普通に Android アプリに参入しても仕方ないので、 ネイティブアプリを書こうと思ったのですが、ネット上にも本屋にも、ネイティブアプリの情報は多くありませんでした。 かなり基本的なところから調べ、勉強しなければなりませんでしたが、やっと形になってきましたので、 Google Play に最初のアプリを提出するにあたり、情報をまとめておこうと、本サイトを立ち上げました。
それぞれの項目でかなり苦労していますので、正直、環境の構築などは忘れていますが・・・ Windows 10 Pro(32 ビット版)、Visual Studio 2015 で、クロスプラットフォーム開発を行っています。
(December 12, 2019)
開発環境は Windows 10 Pro(64 ビット版)に移行しつつあります。
Android 端末の設置や操作については、「Android 操作トップ」にまとめています。
登録した Google アカウントの変更、端末のロック設定、端末を探すアプリの操作などを書いています。
おすすめ記事はありません。