SlideShare una empresa de Scribd logo
1 de 58
Descargar para leer sin conexión
C-LIS CO., LTD.
自己紹介
Android Studio本
3
2014年11月21日発売
技術評論社刊
Android Studio 0.8.6
http://amzn.to/1HYRp32
4
5
改訂版が出ます(2016年1月上旬)
改訂版の原稿を送ったのが11月16日
7
11月20日
8
Android Studio 1.5 Release
サンプルコードのプロジェクトを

Android 1.5用に調整したのが11月23日
11月24日
10
Android Studio 2.0 Preview
著者校正を終えたのが
12月7日
12
2016年 1月 48日発売
技術評論社刊
Android Studio 1.5
13
著者校正中の出来事
15
16
17
18
わかったこと
19
• Android Developersは、日本語版のサイトと英語版のサイトで配布
しているバイナリが違う
• 英語版のサイトでは 1.5 を、日本語版では1.4を配布している
• 英語のURLにアクセスしても、下部の「言語設定」で日本語を選択し
ていればサイト側が日本語サイトに自動的にリダイレクトする(コン
トロール不能)
続く!
Android Studio開発講座
2015/12/12
日本Androidの会 香川支部
今日のお題
22
Android Studioは、2013年に発表された
Androidアプリ向けの新しい開発環境
IntelliJ IDEAのCommunity Editionをベー
スに開発されている
Googleは、ADT(Android Developer
Tools)について、2015年末で開発サポート
を停止することをアナウンスしている
Android Studioの便利なところを紹介するよ!
エラーの訂正
23
エラーに飛ぶ(Jump to Next Error)
F2
Option + return
修正候補を選択する
(Show the list of available intention actions.)
Alt + return
Shift + F2
文字列リソースの作成
24
Option + return
Alt + return
レイアウトの作成
25
Option + return
Alt + return
Code Generation
Command + N
Alt + insert
26
public static class PlaceholderFragment extends Fragment {



private boolean mClickFlag;

Code Generationの憂鬱
27
public static class PlaceholderFragment extends Fragment {



private boolean mClickFlag;



public boolean ismClickFlag() {

return mClickFlag;

}

Code Generationの憂鬱
28
Naming Prefixの設定
29
[Preferences] → [Editor] → [Code Style]
→ [Java] → [Code Generation] → [Naming]
public static class PlaceholderFragment extends Fragment {



private boolean mClickFlag;



public boolean isClickFlag() {

return mClickFlag;

}

Field Prefixの設定
30
ライブラリの追加
31
apply plugin: 'com.android.application'



android {
…

}



dependencies {

compile fileTree(dir: 'libs', include: ['*.jar'])

testCompile 'junit:junit:4.12'

compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.jakewharton:butterknife:7.0.1'


}

app/build.gradle
Android Studioのライブラリは、Maven CentralやjCenterなどから追加
する(libsディレクトリに追加することもできる)
リファクタリング
インラインの記述をローカル変数に移動
33
Command + Option + V
Control + Alt + V
@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);



getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

new PlaceholderFragment(), "main")

.commit();

}

変数をフィールドに移動
34
Command + Option + F
Control + Alt + F
@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);



Fragment fragment = new PlaceholderFragment();

getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

fragment, "main")

.commit();

}

変数をフィールドに移動
35
private Fragment fragment;



@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);



fragment = new PlaceholderFragment();

getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

fragment, "main")

.commit();

}

処理をメソッドへ切り出す
36
Command + Option + M
Control + Alt + M
private void initializa() {

placeholderFragment = new PlaceholderFragment();

getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

placeholderFragment, "main")

.commit();

}

変数・メソッド・クラス名を変更
37
Shift + F6
Shift + F6
private void initialize() {

placeholderFragment = new PlaceholderFragment();

getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

placeholderFragment, "main")

.commit();

}

変数・メソッド・クラス名を変更
38
Shift + F6
Shift + F6
@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);



Fragment fragment = new PlaceholderFragment();

getSupportFragmentManager()

.beginTransaction()

.add(android.R.id.content,

fragment, "main")

.commit();

}

ユニットテスト(JUnit4)
android {

…


defaultConfig {

applicationId "io.keiji.tryandroidstudio"

minSdkVersion 15

targetSdkVersion 23

versionCode 1

versionName "1.0"



testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}
…

}



dependencies {

compile fileTree(include: ['*.jar'], dir: 'libs')

testCompile 'junit:junit:4.12'

compile 'com.android.support:appcompat-v7:23.1.1'

compile 'com.jakewharton:butterknife:7.0.1'



androidTestCompile 'com.android.support:support-annotations:23.1.1'

androidTestCompile 'com.android.support.test:runner:0.3'

}

build.gradleの編集
40
ユニットテストの置き場所
41
Userクラス
public class User {



private long id;



private String name;



private boolean isMegane;

// setter, getter省略
}
42
UserTestクラス
import android.support.test.runner.AndroidJUnit4;



import org.junit.Assert;

import org.junit.Test;

import org.junit.runner.RunWith;



@RunWith(AndroidJUnit4.class)

public class UserTest {



@Test

public void 眼鏡をかけている() throws Exception {

User user = new User();

Assert.assertTrue(user.isMegane());

}

}

43
テストを実行
io.keiji.tryandroidstudio.UserTest > 眼鏡をかけている
[Nexus_5_API_18(AVD) - 4.3.1] [31mFAILED [0m
java.lang.AssertionError
at org.junit.Assert.fail(Assert.java:86)
:app:connectedDebugAndroidTest FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task
':app:connectedDebugAndroidTest'.
> There were failing tests. See the report at:
file:///Users/keiji_ariyama/Desktop/
TryAndroidStudio/app/build/reports/androidTests/
connected/index.html
44
package io.keiji.tryandroidstudio;



import android.support.test.runner.AndroidJUnit4;



import org.junit.Assert;

import org.junit.Test;

import org.junit.runner.RunWith;



@RunWith(AndroidJUnit4.class)

public class UserTest {



@Test

public void 眼鏡をかけている() throws Exception {

User user = new User();

Assert.assertTrue(user.isMegane());

}

}

Androidに依存したテスト?
45
ユニットテスト(JVM)の置き場所
46
import android.support.test.runner.AndroidJUnit4;



import org.junit.Assert;

import org.junit.Test;

import org.junit.runner.RunWith;



@RunWith(AndroidJUnit4.class)

public class UserTest {



@Test

public void 眼鏡をかけている() throws Exception {

User user = new User();

Assert.assertTrue(user.isMegane());

}

}

UserTestクラス
47
テストを実行
:app:testDebugUnitTest
io.keiji.tryandroidstudio.UserTest > 眼鏡をかけている
FAILED
java.lang.AssertionError at UserTest.java:11
2 tests completed, 1 failed
:app:testDebugUnitTest FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:testDebugUnitTest'.
> There were failing tests. See the report at:
file:///Users/keiji_ariyama/Desktop/
TryAndroidStudio/app/build/reports/tests/debug/
index.html
* Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log
output.
BUILD FAILED
Total time: 2.389 secs
C-LIS CO., LTD.
各製品名・ブランド名、会社名などは、一般に各社の商標または登録商標です。
本資料中では、©、®、™を割愛しています。
本資料は、有限会社シーリスの著作物であり、
クリエイティブコモンズの表示-非営利-継承 3.0 Unported ライセンスの元で公開しています。
寄せられた質問
Android Studioで
フリーザより強いという人造人間は倒せま
すか?
51
倒せるか倒せないかというより、悟空(ADT)は

死んだので、これからはAndroid Studioが頑張る
しかありません。
今日一番の豆知識
52
"人造人間編では連載中に試行錯誤が見られた。当初は19号と20号のみを登
場させる予定だったが、すでに担当編集を外れていた鳥嶋和彦が鳥山の家に
電話をかけてきて「やっと敵が出てきたとおもったらジジイとデブじゃない
ですか」と文句を言われ、仕方なく17号と18号をデザイン。しかし、鳥嶋
が再び家に電話をかけてきて「なんだ今度はガキですか」と再び文句を言わ
れ、当初は登場する予定すらなかったセルが登場することになった。"
Wikipedia 人造人間(ドラゴンボール)
https://ja.wikipedia.org/wiki/%E4%BA%BA%E9%80%A0%E4%BA%BA
%E9%96%93_(%E3%83%89%E3%83%A9%E3%82%B4%E3%83%B3%E3%83%9C%E3%83%BC
%E3%83%AB)
AndroidからMySQLのDBサーバーにアク
セスしたいのですが、実際の方法セキュリ
ティなどで注意することなどあれば
53
AndroidからMySQLのDBサーバーにアクセスする
と何が起こるかわからないので、めんどうでもAPI
を設計・実装した方がいいです。
Gradle で apk を暗号化するコマンドライ
ンから実行できる自前のビルドタスクを作っ
たのですが、それを Android Studio から
実行したり、 Android Studio のビルド時
に自動で実行できるようになりませんでしょ
うか?
54
task samplePreprocess << {

println("この処理を先にする");

}



assembleDebug.dependsOn(samplePreprocess)
build.gradle - dependOn
既存のプロジェクトを
インポートする際のポイントについて
56
http://techbooster.github.io/c89/
Copyright TechBooster
58
ADT - Android Studio
完全移行マニュアル(仮題)
• ADT - Android Studioへの移行
• Gradle 101

Más contenido relacionado

La actualidad más candente

Android Studio First Step Guide
Android Studio First Step GuideAndroid Studio First Step Guide
Android Studio First Step GuideMasahiro Hidaka
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法tkawashita
 
Android lint-srp-practice
Android lint-srp-practiceAndroid lint-srp-practice
Android lint-srp-practicecch-robo
 
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と GradleGoogle I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と GradleKeishin Yokomaku
 
Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.Yuki Higuchi
 
はてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテストはてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテストYu Nobuoka
 
Android studio で行ってみよう!!
Android studio で行ってみよう!!Android studio で行ってみよう!!
Android studio で行ってみよう!!Kazuaki Ueda
 
はじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントはじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントShinobu Okano
 
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Kengo Suzuki
 
Android,Brillo,ChromeOS
Android,Brillo,ChromeOSAndroid,Brillo,ChromeOS
Android,Brillo,ChromeOSl_b__
 
Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)l_b__
 
Java/Androidセキュアコーディング
Java/AndroidセキュアコーディングJava/Androidセキュアコーディング
Java/AndroidセキュアコーディングMasaki Kubo
 
Android api-levels
Android api-levelsAndroid api-levels
Android api-levelsKazuaki Ueda
 
Androidアプリケーション開発入門
Androidアプリケーション開発入門Androidアプリケーション開発入門
Androidアプリケーション開発入門OESF Education
 
パーミッションモデルの過渡期への対応
パーミッションモデルの過渡期への対応パーミッションモデルの過渡期への対応
パーミッションモデルの過渡期への対応ak_shio_555
 
はじめてのAndroid in 高知
はじめてのAndroid in 高知はじめてのAndroid in 高知
はじめてのAndroid in 高知hiro nemu
 
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術Yu Nobuoka
 
もう怖くないモバイルアプリ開発!
もう怖くないモバイルアプリ開発!もう怖くないモバイルアプリ開発!
もう怖くないモバイルアプリ開発!Toshiki Iga
 
AndroidJUnitRunner で JUnit 4 形式のテストに移行
AndroidJUnitRunner で JUnit 4 形式のテストに移行AndroidJUnitRunner で JUnit 4 形式のテストに移行
AndroidJUnitRunner で JUnit 4 形式のテストに移行Yu Nobuoka
 

La actualidad más candente (20)

Android Studio First Step Guide
Android Studio First Step GuideAndroid Studio First Step Guide
Android Studio First Step Guide
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法
 
Android lint-srp-practice
Android lint-srp-practiceAndroid lint-srp-practice
Android lint-srp-practice
 
AndroidLint #DroidKaigi
AndroidLint #DroidKaigiAndroidLint #DroidKaigi
AndroidLint #DroidKaigi
 
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と GradleGoogle I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
 
Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.
 
はてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテストはてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテスト
 
Android studio で行ってみよう!!
Android studio で行ってみよう!!Android studio で行ってみよう!!
Android studio で行ってみよう!!
 
はじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイントはじめる前に知っておきたいAndroidアプリ開発のポイント
はじめる前に知っておきたいAndroidアプリ開発のポイント
 
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
 
Android,Brillo,ChromeOS
Android,Brillo,ChromeOSAndroid,Brillo,ChromeOS
Android,Brillo,ChromeOS
 
Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)
 
Java/Androidセキュアコーディング
Java/AndroidセキュアコーディングJava/Androidセキュアコーディング
Java/Androidセキュアコーディング
 
Android api-levels
Android api-levelsAndroid api-levels
Android api-levels
 
Androidアプリケーション開発入門
Androidアプリケーション開発入門Androidアプリケーション開発入門
Androidアプリケーション開発入門
 
パーミッションモデルの過渡期への対応
パーミッションモデルの過渡期への対応パーミッションモデルの過渡期への対応
パーミッションモデルの過渡期への対応
 
はじめてのAndroid in 高知
はじめてのAndroid in 高知はじめてのAndroid in 高知
はじめてのAndroid in 高知
 
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術5 年続く 「はてなブックマーク」 アプリを継続開発する技術
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
 
もう怖くないモバイルアプリ開発!
もう怖くないモバイルアプリ開発!もう怖くないモバイルアプリ開発!
もう怖くないモバイルアプリ開発!
 
AndroidJUnitRunner で JUnit 4 形式のテストに移行
AndroidJUnitRunner で JUnit 4 形式のテストに移行AndroidJUnitRunner で JUnit 4 形式のテストに移行
AndroidJUnitRunner で JUnit 4 形式のテストに移行
 

Similar a Android Studio開発講座

[DevSummit2013S]Android_Multi-Version_Multi-Device
[DevSummit2013S]Android_Multi-Version_Multi-Device[DevSummit2013S]Android_Multi-Version_Multi-Device
[DevSummit2013S]Android_Multi-Version_Multi-DeviceKenichi Kambara
 
Droidcon London2012 Speaker Experience
Droidcon London2012 Speaker ExperienceDroidcon London2012 Speaker Experience
Droidcon London2012 Speaker ExperienceKenichi Kambara
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送Google Cloud Platform - Japan
 
はじめてのAndroid Things
はじめてのAndroid ThingsはじめてのAndroid Things
はじめてのAndroid ThingsAkira Sasaki
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~Akira Inoue
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#Yuta Matsumura
 
Andriod開発環境の構築
Andriod開発環境の構築Andriod開発環境の構築
Andriod開発環境の構築Kimiyuki Yamauchi
 
Android multiscreen
Android multiscreenAndroid multiscreen
Android multiscreenKazuaki Ueda
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioSoichiro Kashima
 
つ部 Android Studio 勉強会 12/7
つ部 Android Studio 勉強会 12/7つ部 Android Studio 勉強会 12/7
つ部 Android Studio 勉強会 12/7Hikaru Wada
 
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
 Sansan Tech Meetup Androidエンジニアが振り返る Google I/O   Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O 健一 辰濱
 
Androidアプリ販売への道
Androidアプリ販売への道Androidアプリ販売への道
Androidアプリ販売への道Yoshinori Kamaishi
 
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦スマホキャンプサマー2012:ANEとアプリ内課金に挑戦
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦Tetsuya Shiraishi
 
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーションAkira Inoue
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Takako Miyagawa
 
Android Wearアプリ プレビュー版→正式版への移植ガイド
Android Wearアプリ プレビュー版→正式版への移植ガイドAndroid Wearアプリ プレビュー版→正式版への移植ガイド
Android Wearアプリ プレビュー版→正式版への移植ガイドKenichi Kambara
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法Naruto TAKAHASHI
 
Flash Professional CS6 の新機能のご紹介 AIR編
Flash Professional CS6 の新機能のご紹介 AIR編Flash Professional CS6 の新機能のご紹介 AIR編
Flash Professional CS6 の新機能のご紹介 AIR編KinkumaDesign
 

Similar a Android Studio開発講座 (20)

[DevSummit2013S]Android_Multi-Version_Multi-Device
[DevSummit2013S]Android_Multi-Version_Multi-Device[DevSummit2013S]Android_Multi-Version_Multi-Device
[DevSummit2013S]Android_Multi-Version_Multi-Device
 
Droidcon London2012 Speaker Experience
Droidcon London2012 Speaker ExperienceDroidcon London2012 Speaker Experience
Droidcon London2012 Speaker Experience
 
Introduce React Native
Introduce React NativeIntroduce React Native
Introduce React Native
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
 
はじめてのAndroid Things
はじめてのAndroid ThingsはじめてのAndroid Things
はじめてのAndroid Things
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
Andriod開発環境の構築
Andriod開発環境の構築Andriod開発環境の構築
Andriod開発環境の構築
 
Android multiscreen
Android multiscreenAndroid multiscreen
Android multiscreen
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android Studio
 
つ部 Android Studio 勉強会 12/7
つ部 Android Studio 勉強会 12/7つ部 Android Studio 勉強会 12/7
つ部 Android Studio 勉強会 12/7
 
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
 Sansan Tech Meetup Androidエンジニアが振り返る Google I/O   Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
 
Androidアプリ販売への道
Androidアプリ販売への道Androidアプリ販売への道
Androidアプリ販売への道
 
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦スマホキャンプサマー2012:ANEとアプリ内課金に挑戦
スマホキャンプサマー2012:ANEとアプリ内課金に挑戦
 
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
 
Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中
 
Android Wearアプリ プレビュー版→正式版への移植ガイド
Android Wearアプリ プレビュー版→正式版への移植ガイドAndroid Wearアプリ プレビュー版→正式版への移植ガイド
Android Wearアプリ プレビュー版→正式版への移植ガイド
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法
 
Flash Professional CS6 の新機能のご紹介 AIR編
Flash Professional CS6 の新機能のご紹介 AIR編Flash Professional CS6 の新機能のご紹介 AIR編
Flash Professional CS6 の新機能のご紹介 AIR編
 

Más de Keiji Ariyama

Vuzix Developer Conference
Vuzix Developer ConferenceVuzix Developer Conference
Vuzix Developer ConferenceKeiji Ariyama
 
Vuzix developer conference - M100アプリ開発
Vuzix developer conference - M100アプリ開発Vuzix developer conference - M100アプリ開発
Vuzix developer conference - M100アプリ開発Keiji Ariyama
 
Google Glassアプリ開発と自由度の変遷
Google Glassアプリ開発と自由度の変遷Google Glassアプリ開発と自由度の変遷
Google Glassアプリ開発と自由度の変遷Keiji Ariyama
 
Google Cloud Endpointsによる API構築
Google Cloud Endpointsによる API構築Google Cloud Endpointsによる API構築
Google Cloud Endpointsによる API構築Keiji Ariyama
 
Google Mirror API勉強会 20130607
Google Mirror API勉強会 20130607Google Mirror API勉強会 20130607
Google Mirror API勉強会 20130607Keiji Ariyama
 
これからの"日付変更線"の話をしよう
これからの"日付変更線"の話をしようこれからの"日付変更線"の話をしよう
これからの"日付変更線"の話をしようKeiji Ariyama
 
20130119 adkハンズオン発表資料
20130119 adkハンズオン発表資料20130119 adkハンズオン発表資料
20130119 adkハンズオン発表資料Keiji Ariyama
 

Más de Keiji Ariyama (7)

Vuzix Developer Conference
Vuzix Developer ConferenceVuzix Developer Conference
Vuzix Developer Conference
 
Vuzix developer conference - M100アプリ開発
Vuzix developer conference - M100アプリ開発Vuzix developer conference - M100アプリ開発
Vuzix developer conference - M100アプリ開発
 
Google Glassアプリ開発と自由度の変遷
Google Glassアプリ開発と自由度の変遷Google Glassアプリ開発と自由度の変遷
Google Glassアプリ開発と自由度の変遷
 
Google Cloud Endpointsによる API構築
Google Cloud Endpointsによる API構築Google Cloud Endpointsによる API構築
Google Cloud Endpointsによる API構築
 
Google Mirror API勉強会 20130607
Google Mirror API勉強会 20130607Google Mirror API勉強会 20130607
Google Mirror API勉強会 20130607
 
これからの"日付変更線"の話をしよう
これからの"日付変更線"の話をしようこれからの"日付変更線"の話をしよう
これからの"日付変更線"の話をしよう
 
20130119 adkハンズオン発表資料
20130119 adkハンズオン発表資料20130119 adkハンズオン発表資料
20130119 adkハンズオン発表資料
 

Android Studio開発講座