Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
1ヶ月でAndroidカメラアプリ開発(1/4)
Search
sakebook
April 04, 2016
Programming
1.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
1ヶ月でAndroidカメラアプリ開発(1/4)
Adobe Creative SDKを使った写真加工アプリの開発のスライドです。全4回。
sakebook
April 04, 2016
Transcript
69 slides
̍ϲ݄Ͱ 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 • Ұॹʹઃఆ͠·͠ΐ͏
More Decks by sakebook
See All by sakebook
「私のチーム」を飛び出したスクラムマスターの試行錯誤:うまくいく社内企画・うまくいかない社内企画の違い
sakebook
0
7
属人化を防ぎ、スプリントゴールを達成するために開発者が始めた取り組み
sakebook
0
210
私とスクラム私とコミュニティ私とOST
sakebook
0
110
目指せKotlin 100%
sakebook
1
2.6k
Make full use of Chrome Custom Tabs
sakebook
3
3.5k
Chrome Custom Tabsを使いこなそう
sakebook
1
2.6k
1ヶ月でAndroidカメラアプリ開発(2/4)
sakebook
0
1.2k
1ヶ月でAndroidカメラアプリ開発(3/4)
sakebook
0
1.1k
1ヶ月でAndroidカメラアプリ開発(4/4)
sakebook
0
1.1k
Other Decks in Programming
See All in Programming
Crash Auto Pipelines
veronikapj
1
420
Spec-driven Development with AI
simas
PRO
0
2.3k
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.3k
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
880
protojson における文字化けの扱い
kazuki1023
0
430
疎結合とは何か?ソフトウェア設計における結合バランスについて考える #phpcon_niigata
kajitack
0
160
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
320
Scalaの型でマルチテナントの認可を守る
nextbeatdev
0
130
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
15
12k
Secure Your Coding Agent Like It’s Malware (v1.5) 🇬🇧 @Code.talks 2026
richargh
0
150
小さなアプリを作って公開するまで
onozaty
0
180
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
Designing for Performance
lara
612
70k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
350
WENDY [Excerpt]
tessaabrams
15
40k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
400
Designing Powerful Visuals for Engaging Learning
tmiket
1
650
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
KATA
mclloyd
PRO
35
16k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
570
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
840
Skip the Path - Find Your Career Trail
mkilby
1
290