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カメラアプリ開発(3/4)
Search
sakebook
April 04, 2016
Programming
0
1k
1ヶ月でAndroidカメラアプリ開発(3/4)
Adobe Creative SDKを使った写真加工アプリの開発のスライドです。全4回。
sakebook
April 04, 2016
Tweet
Share
More Decks by sakebook
See All by sakebook
私とスクラム私とコミュニティ私とOST
sakebook
0
65
目指せKotlin 100%
sakebook
1
2.4k
Make full use of Chrome Custom Tabs
sakebook
3
3.2k
Chrome Custom Tabsを使いこなそう
sakebook
1
2.4k
1ヶ月でAndroidカメラアプリ開発(1/4)
sakebook
1
1.8k
1ヶ月でAndroidカメラアプリ開発(2/4)
sakebook
0
1.1k
1ヶ月でAndroidカメラアプリ開発(4/4)
sakebook
0
980
Other Decks in Programming
See All in Programming
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
600
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
260
CSC307 Lecture 17
javiergs
PRO
0
110
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
610
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
22
6.1k
関数型まつりレポート for JuliaTokai #22
antimon2
0
100
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
110
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
190
カクヨムAndroidアプリのリブート
numeroanddev
0
420
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
240
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
370
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
The Invisible Side of Design
smashingmag
299
51k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
A designer walks into a library…
pauljervisheath
206
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
480
Adopting Sorbet at Scale
ufuk
77
9.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
123
52k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
̍ϲ݄Ͱ ANDROIDΧϝϥΞϓϦ։ൃ @Trunk ञຊ৳ 2016/3/27
ຊͷྲྀΕ • ՝ͷ֬ೝ • Intent • Χϝϥݺͼग़͠ • ը૾ड͚औΓ •
ΪϟϥϦʔݺͼग़͠ • ΤσΟλʔىಈ • ը૾γΣΞ • (҉తIntentͷ݅ઃఆ)
՝ͷ֬ೝ
՝ • ͕ࣗ࡞Γ͍ͨΞϓϦͷϨΠΞτΛߟ͑ ࣮ͯ͠ΈΔ • ͕ࣗ࡞Γ͍ͨΞϓϦͷ͍͔ͭ͘ͷwidgetͰ ΠϕϯτϋϯυϦϯάΛઃఆ͢Δ
INTENT
INTENT • Activity(Component)ಉ࢜ͷΓͱΓʹ༻͍Δ • ผͷΞϓϦؒͰΓͱΓՄೳ • ༷ʑͳใΛ٧ΊΒΕΔ(੍ݶ͋Γ)
2छྨ͋Δ • ໌ࣔతIntent • ݺͼग़͍ͨ͠૬खΛComponent໊Ͱࢦఆ • ҉తIntent • ݺͼग़͍ͨ͠૬खΛػೳ͔Βࢦఆ
(ಥ)ֶߍʹྫ͑Δͱ • ໌ࣔతIntent • ʮࠤ౻͞Μͪΐͬͱདྷͯʯ • ରҰਓ • ҉తIntent •
ʮॏ͍ӡΔਓͪΐͬͱདྷͯʯ • ୭͕དྷΔ͔Θ͔Βͳ͍ • ෳਓདྷΔ߹͋Δ
Χϝϥݺͼग़͠
ͦͷ·͑ʹ • ΧϝϥONʹ͠ͳ͍ͱμϝ • ࣮ػͰͳ͍ͷͰ͓Εͳ͘
҉తINTENT • ʮΧϝϥ࣋ͬͯΔΞϓϦདྷͯʯ
ʮΧϝϥ࣋ͬͯΔΞϓϦདྷͯʯ • startActivityForResult • onActivityResultͰ ݁ՌΛड͚औΕΔݺͼग़͠ํ
• resultCode • Intent͕ظ௨Γऴ͔ྃͨ͠Ͳ͏͔
• requestCode • IntentΛૹͬͨૹ৴ݩΛผ͢Δࣈ
• data • IntentઌͰͷ݁Ռ͕٧ΊΒΕ͍ͯΔ (Nullable)
ը૾ड͚औΓ
BITMAPେ͖͍ • Bitmapը૾ͳͷͰ༰ྔ͕େ͖͍ • Intentʹ٧ΊΔʹ͍ۤ͠ • URIͰΓͱΓ͢Δ • https://ja.wikipedia.org/wiki/ Uniform_Resource_Identifier
ʮΧϝϥ࣋ͬͯΔΞϓϦདྷͯʯ • ʮͨͩ݁͠ՌfileUriʹೖΕ͍ͯͩ͘͞ʯ • Util.getOutputMediaFileUriͰ ݁ՌͷUriΛ࡞
URIΛੜ • GoogleͷνϡʔτϦΞϧ͔Βഈआ • https://developer.android.com/intl/ja/guide/ topics/media/camera.html#saving-media • આ໌ׂѪ
• fileUriʹͲΜͳ͕ೖ͍ͬͯΔͷ͔֬ೝͯ͠ ΈΑ͏ • ઌ΄ͲͱҟͳΓdatanullͳͷͰҙɻ
ΪϟϥϦʔݺͼग़͠
҉తINTENT • ʮը૾Ұཡ͕ݟ͍ͨʯ
ʮը૾Ұཡ͕ݟ͍ͨʯ • ݟ্ͨʹҰͭબ͍ͨ͠
• data.getData()Ͱ ΪϟϥϦʔ͔Βબͨ͠ը૾ͷUriΛऔಘ • ΧϝϥɾΪϟϥϦʔͲͪΒʹ͓͍ͯΤσΟ λʔىಈͷͨΊʹUriΛ͢
ΤσΟλʔىಈ
໌ࣔతINTENT • SDKͷComponentΛࢦఆ • ʮAviaryͷΤσΟλʔདྷͯʯ
ʮAVIARYͷΤσΟλʔདྷͯʯ • AdobeImageIntent • SDKͷΫϥε • Ճ͍ͨ͠ը૾ͷUriΛ͢
தΛݟΔͱ • AdobeImageIntent.class • AdobeImageEditorActivity.class • ಛఆͷCompomentΛࢦఆ͍ͯ͠Δɻ
• data.getData()ͰՃͨ͠ը૾ͷUriΛऔಘ • औಘͨ͠Uri͔ΒImageViewʹը૾Ληοτ
ը૾γΣΞ
҉తINTENT • ʮը૾ૹΓ͍ͨΜ͚ͩͲ୭͔ʯ
ʮը૾ૹΓ͍ͨΜ͚ͩͲ୭͔ʯ • setAction • ૹΓ͍ͨ • putExtra • ͢σʔλ •
setType • σʔλͷϑΥʔϚοτ
͜ΕͰಉ͡ • Χϝϥݺͼग़͠ʹࣅͯΔ
ڪΒͨ͘͘͞ΜԠ͢Δ • Twitter, Facebook, Instagram, LINE… • ͦͷબࢶ͕ԿΛҙຯ͢Δͷ͔ λΠτϧΛ͚ͭͯϢʔβʹ͔Γ͘͢͢Δ
None
• Intent.createChooserͰλΠτϧΛ͚ͭΒΕΔ • จࣈྻxmlͰఆٛͯ͠ಈతʹऔಘ͢Δɻ • res/values/strings.xml • جຊతʹϕλॻ͖͠ͳ͍
҉తINTENTͷ݅ઃఆ
Ͳ͏ͯ͠൴ΒԠ͢Δͷ͔ • ࣗͨͪͰ࡞ΕΔͷ͔ʁ ࡞Εͳ͍͕ͣͳ͍ɻ • ͔͜͠͠ͷΧϝϥΞϓϦ ԿʹԠ͠ͳ͍ • ҧ͍ʁ
ԠͰ͖Δ͜ͱΛهड़ • AndroidManifest.xmlʹ ͲͷComponent͕ ͳʹʹԠ͢Δͷ͔ఆٛ͢Δɻ
҉తINTENTͷ݅ઃఆ • ݅ઃఆ • Action • Category • Data
ACTION • ͲΜͳ͜ͱΛ͍ͤͨ͞ͷ͔ • Intent.ACTION_VIEW • ݟΔ • Intent.ACTION_SEND •
͢
CATEGORY • ͲΜͳΧςΰϦͷίϯϙʔωϯτʹ Ԡͯ͠Β͏͔ • Intent.CATEGORY_DEFAULT • ҉తIntentʹରԠ͍ͯ͠Δ • Intent.CATEGORY_LAUNCHER
• ϥϯνϟʔʹද͍ࣔͯ͠Δ
DATA • ίϯϙʔωϯτʹ͍ͨ͠Data • putExtra(String extra, Bundle data); • Intent.EXTRA_TEXT
• ACTION_SENDͰ͍ͨ͠Data(จࣈྻ) • Intent.EXTRA_STREAM • ACTION_SENDͰ͍ͨ͠Data(ϑΝΠϧύε)
DATA • setType(String mimeType) • ࣮ϑΝΠϧͤͳ͍ͷͰڭ͑Δඞཁ͕͋Δ • text/plain • ςΩετ
• image/jpeg • ը૾
ࢁ΄Ͳ͋Δ • https://developer.android.com/intl/ja/reference/ android/content/Intent.html
ઃఆྫ(ࣄྫͱͯ͠հ) • trunk://~ or http://~ ͷURLʹରͯ͠ɺ WebIntentActivityͱ͍͏ Component͕Ԡ͢Δ • ࣮ࡍड͚औͬͨޙͷॲཧඞཁ