Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
1ヶ月でAndroidカメラアプリ開発(1/4)
Search
sakebook
April 04, 2016
Programming
1
1.8k
1ヶ月でAndroidカメラアプリ開発(1/4)
Adobe Creative SDKを使った写真加工アプリの開発のスライドです。全4回。
sakebook
April 04, 2016
Tweet
Share
More Decks by sakebook
See All by sakebook
私とスクラム私とコミュニティ私とOST
sakebook
0
31
目指せKotlin 100%
sakebook
1
2.3k
Make full use of Chrome Custom Tabs
sakebook
3
3.1k
Chrome Custom Tabsを使いこなそう
sakebook
1
2.4k
1ヶ月でAndroidカメラアプリ開発(2/4)
sakebook
0
1k
1ヶ月でAndroidカメラアプリ開発(3/4)
sakebook
0
990
1ヶ月でAndroidカメラアプリ開発(4/4)
sakebook
0
950
Other Decks in Programming
See All in Programming
GPU Hash Table | レイトレ合宿10
yknishidate
0
350
空間の中でアイドルとレッスンする技術 - 1st "Vision" / Spatial Lesson technologies with my idol - 1st "Vision"
banjun
PRO
0
260
20241004 モノタロウ式~ドメインモデリングとリアーキテクチャ
monotaro
PRO
2
700
Memory API: Patterns, Use Cases, and Performance
josepaumard
2
210
OpenTelemetryでRailsのパフォーマンス分析を始めてみよう(KoR2024)
ymtdzzz
1
240
Debugging: A Few Things You Should Know
jmatsu
1
140
(Deep|Web) Link support with expo-router
mrtry
0
190
LangChain & LangServeでAPIを爆速作成
kijitorabuti
2
370
CSC509 Lecture 04
javiergs
PRO
0
170
組織に自動テストを書く文化を根付かせる戦略(2024秋版) / Building Automated Test Culture 2024 Autumn Edition
twada
PRO
9
3.9k
Jakarta EE as Seen Trough the Lens of the ASF
ivargrimstad
0
950
Програмиране с Rust, ФМИ, 2024
nikolads
0
130
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Into the Great Unknown - MozCon
thekraken
31
1.4k
Gamification - CAS2011
davidbonilla
80
5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
A Modern Web Designer's Workflow
chriscoyier
692
190k
The World Runs on Bad Software
bkeepers
PRO
65
11k
A better future with KSS
kneath
237
17k
KATA
mclloyd
29
13k
Music & Morning Musume
bryan
46
6.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
The Cost Of JavaScript in 2023
addyosmani
44
5.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
Transcript
̍ϲ݄Ͱ ANDROIDΧϝϥΞϓϦ։ൃ @Trunk ञຊ৳ 2016/3/13
͡Ίʹ
ࣗݾհ ञຊ৳ ੴݝ @sakebook Android 3͘Β͍ iOS ͪΐͬͱ ϥΠϑϩά͖
ຊͷྲྀΕ • ࡞ΔΞϓϦͷσϞ • Androidʹ͍ͭͯ • ։ൃڥઃఆ • ։ൃڥղઆ •
ΞϓϦͷσόοά • ιʔείʔυཧ • Adobe SDKಋೖ
࡞ΔΞϓϦͷσϞ
ANDROID
ANDROIDͱ • Google͕։ൃ͢ΔΦʔϓϯιʔεͳ ϞόΠϧ͚ϓϥοτϑΥʔϜ
ΞʔΩςΫνϟ https://ja.wikipedia.org/wiki/Android
όʔδϣϯ • ࡉ͔͍ͷΛؚΊΔͱ 20Ҏ্ͷछྨ (API LEVEL) • 4.1Ҏ͕߱90%ऑΛΊΔ (2015/6/1)
APK • ΞϓϦͷ֦ுࢠ • Application PaKage ͔Β͖͍ͯΔ • ։ൃͨ͠ΞϓϦ̋̋.apk ͱ͍͏ܗʹͳΔ
։ൃڥ
ANDROID STUDIO • Intellij IDEAΛϕʔεʹͨ͠౷߹։ൃڥ(IDE) • Google͕։ൃ • Androidͷ։ൃʹಛԽ •
Eclipseଔۀ͍ͯͩ͘͠͞(ADT͕։ൃऴྃ)
͊͞͡ΊΑ͏
NEW PROJECT • Application name • ΞϓϦͷ໊લ • Company Domain
• ࣗΛϢχʔΫʹ ͢ΔυϝΠϯ
NEW PROJECT • Package name • ΞϓϦΛϢχʔΫʹ ͢Δจࣈྻ • ଞͷΞϓϦͱॏෳېࢭ
• Project location • PCͷϓϩδΣΫτύε
NEW PROJECT • Phone and Tablet • API 16(4.1) •
Empty Activity • Activity ≒ ը໘ • ͦͷ··(ޙ͔ΒมߋՄೳ)
ϓϩδΣΫτߏ
• ϓϧμϯΛ Android -> Project ʹมߋ
• MyApplication(Root) • ϓϩδΣΫτϧʔτ • .gradle/ • ϩʔΧϧϦϙδτϦ • .idea/
• IDEͷઃఆঢ়گ
• build/ • Ϗϧυ࣌ͷ ϑΝΠϧஔ͖ • gradle/ • Ϗϧυʹඞཁͳ Gradleஔ͖
• .gitignore • gitͰཧ͠ͳ͍ͷΛ ࢦఆ • build.gradle • ϓϩδΣΫτͷ ґଘؔΛهड़
• gradle.properties • Gradle͕ ࢀর͢ΔϓϩύςΟ • gradlew • Linuxͷ Gradle࣮ߦϑΝΠϧ
• gradlew.bat • Windowsͷ Gradle࣮ߦϑΝΠϧ
• local.properties • ݸਓͷڥͷSDKͷ ύεͷઃఆ • MyApplication.iml • IntellijͷϑΝΠϧ •
setting.gradle • GradleͷϏϧυϞδϡʔϧΛهड़ • External Libraries • ϓϩδΣΫτͷ ֎͔Βࢀর͍ͯ͠Δ ϥΠϒϥϦ
• app/ • Ϟδϡʔϧ • app/libs • ϩʔΧϧϥΠϒϥϦ ஔ͖ •
app/build.gradle • ϞδϡʔϧͷϏϧυͷઃఆ ґଘؔΛهड़ • app/proguard-rules.pro • ಡԽʹ༻͍Δ
• src • ίϯύΠϧରͷ ϑΝΠϧஔ͖ • src/androidTest • ςετϑΝΠϧஔ͖ •
src/main/java • ιʔεϑΝΠϧஔ͖ • src/main/res • ϦιʔεϑΝΠϧஔ͖
• drawable • ը૾xmlΛஔ͘ॴ • layout • ϨΠΞτͷxmlΛ ஔ͘ॴ •
menu • ϝχϡʔͷxmlΛஔ͘ॴ • mipmap • ΞΠίϯը૾Λஔ͘ॴ
• dpi (Dot Per Inch: ը໘ີ) • mdpi(48x48) • hdpi(72x72)
• xhdpi(96x96) • xxhdpi(144x144)
• dimens.xml • จࣈͷαΠζ ༨നͷͳͲΛ ఆٛͰ͖Δ • strings.xml • ςΩετΛఆٛͰ͖Δ
• styles.xml • ΞϓϦͷςʔϚΛ هड़Ͱ͖Δ
• AndroidManifest.xml • ΞϓϦͱؒͷ Permission ActivityͳͲͷ ৼΔ͍ɺ Package nameͳͲ ༷ʑͳ͜ͱΛ
ઃఆͰ͖Δ
ANDROID STUDIO SETTING
ίʔυิ • ్த·Ͱೖྗ͢Δͱ༧ଌͰ ݱࡏར༻ՄೳͳީิΛදࣔͯ͘͠ΕΔ • Android Studio -> Preference ->
Keymap ->ʮCompletionʯ (͖ͳίϚϯυΛׂΓͯΔ)
ߦදࣔ • ϑΝΠϧͷࠨଆʹݱࡏͷߦΛ දࣔͯ͘͠ΕΔ • Android Studio -> Preference ->
Editor -> General -> Appearance -> ʮShow line numbersʯ (νΣοΫΛೖΕΔ)
GENERATE • ࣗಈੜͰ͖ΔͷͷγϣʔτΧοτ (⌘+n)
ࠔͬͨ࣌ • (Alt + Enter)ͰͦͷͰͰ͖Δ͜ͱΛ αδΣετͯ͘͠ΕΔ
ଞʹͨ͘͞Μ • http://qiita.com/sugoi_wada/items/ db449d5cbb5c83cb586c • http://qiita.com/takke/items/ 5cbc629f7f65d6a49906
Ϗϧυ
ϏϧυγεςϜ • Gradle • GroovyͰهड़Ͱ͖Δ • setting.gradleͰରͱͳΔϞδϡʔϧΛࢦఆ • app/build.gradleʹϏϧυ࣌ͷλεΫΛهड़ •
ίϚϯυϥΠϯ or ASͷػೳͰϏϧυ࣮ߦ
None
ίϚϯυϥΠϯ • $./gradlew assembleDebug • BuildType͕DebugͰϏϧυ͞ΕͨapkΛ app/build/outputs/apk ʹ࡞ • $./gradlew
installDebug • ରͷσόΠεʹapkΛΠϯετʔϧ
࣮ػ OR ΤϛϡϨʔλ
࣮ػ͕ͳ͚ΕΤϛϡϨʔλ • ७ਖ਼ͷͷ͋͘ͼ͕ग़Δ΄Ͳ͍ • 2.x͔Βૣ͘ͳΔΒ͍͠ɻ • GenymotionΛ͏
GENYMOTION • രͷΤϛϡϨʔλ • ແྉ൛ͩͱ੍ݶ͕͋Δ͕ɺ ௨ৗར༻ͳΒे • https://www.genymotion.com/
LOGCAT
LOGCAT • ଓ͞Ε͍ͯΔσόΠε͕ྲྀ͍ͯ͠ΔϩάΛ ऩूɾදࣔ͢Δػೳ
දࣔͤ͞Δ • ͬͱίʔυʹ৮Δʂʁ • 14ߦʹ Log.d(“Trunk”, “onCreate”);
͜͏͍͏ͱ͖͕ • Alt + Enterͷग़൪ʂ
දࣔ͞Εͨ • ݟ͚͕ ͭ͘Α͏ʹ ͳͬͨ
अຐͳͷΛഉআ͍ͨ͠ • FilterΛ࡞͢Δ
ݟ͘͢ͳͬͨʂ
͍͚ • Log.v(String tag, String msg) ʮʯ • Log.d(String tag,
String msg) ʮσόοάʯ • Log.i(String tag, String msg) ʮใʯ • Log.w(String tag, String msg) ʮܯࠂʯ • Log.e(String tag, String msg) ʮΤϥʔʯ
BREAKPOINT
BREAK POINT • LogcatͩͱΫϥογϡͨ͠ॴͰɺଞͷ͕ Ͳ͏ͳ͍ͬͯΔ͔ͳͲ͕Θ͔Βͳ͍ • Ϋϥογϡ͢Δ͔ۙΒಈ͖Λ ͭͿ͞ʹ͍͍ͨʂ
DEBUG • ϓϩάϥϜΛ ࢭΊ͍ͨॴʹ ؙΛઃஔ • ʮhogeʯͷ ΛݟͯΈΔ
͓͍ͷσόΠεਖ਼ৗͰ͢ • σόΠεଆʹද͕ࣔ ͰΔ͕ͭ
εςοϓΦʔόʔ • 15ߦͰBreak • ࢭ·ͬͨߦ ͦͷ࣌Ͱ ධՁ͞Εͳ͍
• ʮhogeʯ͕ఆٛ ͞Ε͍ͯΔ
• ʮhogeʯͷ த͕”huga”ʹ ͳ͍ͬͯΔ
ෳઃஔͨ࣌͠ • ݱࡏͷ Breakpoint͔Β ൈ͚ͨΓଓΛ Δ͜ͱ Ͱ͖Δ
ιʔείʔυཧ
GIT • ࢄܕόʔδϣϯཧγεςϜ • GitHub • GitΛ༻͍ͨWebαʔϏε
Α͘͏ίϚϯυ • git status • git diff ϑΝΠϧ • git
checkout ϑΝΠϧ • git add ϑΝΠϧ • git commit -m “ϝοηʔδ” • git pull “ϦϞʔτϦϙδτϦͷURL” “ϩʔΧϧͷϒϥϯν໊” • git push “ϦϞʔτϦϙδτϦͷURL” “ϩʔΧϧͷϒϥϯν໊”
• git status • ݱࡏͷϒϥϯνͰ มߋ͕͋Δ͔Ͳ͏͔Λ֬ೝ • git diff ϑΝΠϧ
• ରͷϑΝΠϧͷ Ͳ͜ʹมߋ͕͋Δͷ͔Λ֬ೝ
• git checkout ϑΝΠϧ • ରͷϑΝΠϧͷ ϩʔΧϧϦϙδτϦͰͷมߋΛ͢ • git add
ϑΝΠϧ • ରͷϑΝΠϧΛcommitରʹ͢Δ
• git commit -m “ϝοηʔδ” • commitରʹͨ͠ϑΝΠϧͨͪΛ pushରʹ͢Δ • git
pull “ϦϞʔτϦϙδτϦͷURL” “ϩʔΧϧͷ ϒϥϯν໊” • ϦϞʔτϦϙδτϦͷมߋΛϩʔΧϧʹ өͤ͞Δ
• git push “ϦϞʔτϦϙδτϦͷURL” “ϩʔΧ ϧͷϒϥϯν໊” • pushରʹͨ͠ϑΝΠϧͨͪΛϦϞʔτ ϦϙδτϦpush͢Δ
~/.GITCONFIG [user] name = Shinya Sakemoto email =
[email protected]
[color]
ui = auto [alias] st = status br = branch -a ch = checkout cm = commit stt = status -uno difff = diff --word-diff • Α͘͏ͷ ొ͓ͯ͘͠ͱศར
ৄ͘͠ • http://blog.nanapi.co.jp/tech/2014/04/23/git-love/
GITHUBʹొ͠Α͏ • ઌ΄Ͳ࡞ͨ͠ϓϩδΣΫτΛొ • GitHubͰదͳϦϙδτϦ࡞ • $git remote add origin
ϦϙδτϦ
ADOBE CREATIVE CLOUD
SDK • Software Development Kit • ࠓճͩͱAdobe͕ఏڙ͍ͯ͠ΔػೳΛɺΞϓϦ ʹΈࠐΉ͜ͱ͕Ͱ͖Δɻ • https://creativesdk.adobe.com/docs/android/#/articles/
gettingstarted/index.html • Ұॹʹઃఆ͠·͠ΐ͏