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
Androidオープンソースライブラリの作り方
Search
takahirom
February 19, 2015
Programming
4
1.2k
Androidオープンソースライブラリの作り方
takahirom
February 19, 2015
Tweet
Share
More Decks by takahirom
See All by takahirom
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
610
Google の LLM ライブラリ を Android アプリで 使うには?
takahirom
1
1.9k
Robolectric Native Graphics and Roborazzi
takahirom
1
2k
Androidアプリで安定して動作させ継続的に開発するために設計の原則を利用して開発した話
takahirom
2
1.4k
Android Tools & Performance
takahirom
1
1.2k
Jetpack Compose State Practices
takahirom
1
1.4k
Inside Jetpack Compose
takahirom
1
980
What’s new in Android Jetpack and Tools
takahirom
0
390
ABEMAのKotlin Multiplatform
takahirom
4
5.9k
Other Decks in Programming
See All in Programming
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
460
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
180
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
490
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
540
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
190
私はどうやって技術力を上げたのか
yusukebe
43
17k
CSC509 Lecture 01
javiergs
PRO
1
430
dynamic!
moro
9
6.6k
Swift Concurrency - 状態監視の罠
objectiveaudio
2
460
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
For a Future-Friendly Web
brad_frost
180
9.9k
Become a Pro
speakerdeck
PRO
29
5.5k
Writing Fast Ruby
sferik
629
62k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
A designer walks into a library…
pauljervisheath
209
24k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Unsuck your backbone
ammeep
671
58k
Navigating Team Friction
lara
189
15k
Transcript
AndroidΦʔϓϯιʔε ϥΠϒϥϦͷ࡞Γํ
ࣗʹ͍ͭͯ UBLBIJSPN !OFX@SVOOBCMF ! ࣄझຯ"OESPJE
AndroidΞϓϦͷϥΠϒϥϦ ButterKnifeͱ͔ Volleyͱ͔ Daggerͱ͔ RxAndroidͱ͔ ͍Ζ͍Ζ͋Γ·͢ΑͶʁ
ࣗͰ࡞ΕͨΒخ͍ͣ͠
ϥΠϒϥϦ ϓϩδΣΫτͷ࡞Γํ
Android StudioͰ ී௨ʹΞϓϦͷϓϩδΣΫτΛ࡞Δ
/FX.PEVMFͰ"OESPJE-JCSBSZΛࢦఆ
͜͜Ͱ໊લΛzMJCSBSZzΈ͍ͨͳ ҆қͳ໊લΛ͚ͭͯ͠·͍͕ͪͰ͕͢ɺɺ
test-library-nameͱ͍͏Α͏ͳ ϋΠϑϯ۠Γͷܗʹ
ΓํʹΑΓ·͕͢ ͜ͷ࣌ͷσΟϨΫτϦ໊Ͱ ϥΠϒϥϦͷ໊લ͕มΘΓ·͢ ! ! (ϓϩδΣΫτ໊͕ϥΠϒϥϦ໊ʹͳΔͨΊ) MJCSBSZʹͳͬͯ͠·ͬͨCVJMEHSBEMF IUUQTHJUIVCDPNUBLBIJSPN8FBS-JTUFOFS4FSWJDF#SPBEDBTUFSCMPC CEBCEDBFBFCFEECEGMJCSBSZCVJMEHSBEMF
ϞδϡʔϧΛࢀর
MJCSBSZϓϩδΣΫτͷத͕ BQQϓϩδΣΫτ͔Βී௨ʹࢀরͰ͖ΔͷͰ ! BQQϓϩδΣΫτΛαϯϓϧͱͯ͠ ։ൃ͠·͢ ։ൃ
Φʔϓϯιʔεʹ͢Δ "QBDIFͳͲͷϥΠηϯεදهΛͯ͠ (JUIVCʹQVTI͠·͢
ϥΠϒϥϦͷެ։ • GithubͰެ։͢Δํ๏ • jCenterͰެ։͢Δํ๏(ΦεεϝͰ͢) • MavenCentralͰެ։͢Δํ๏(େมΒ͍͠) • jitpack.io(jCenterʹΞοϓ͞Ε͍ͯͳ͍ϥΠϒϥ ϦΛ͑ΔΒ͍͠)
GithubͰެ։͢Δ(ެ։ଆ) EFGSFQPOFX'JMF SPPU%JS SFQPTJUPSZ BQQMZQMVHJONBWFO VQMPBE"SDIJWFT\ SFQPTJUPSJFT\
NBWFO%FQMPZFS\ SFQPTJUPSZVSMpMF\SFQPBCTPMVUF1BUI^ QPNWFSTJPO QPNHSPVQ*EBUXBEB QPNBSUJGBDU*EBOESPJEEJBMPHGSBHNFOUT ^ ^ ^ IUUQXBEBCMPHTQPUDPNEJTUSJCVUFBOESPJEMJCSBSZBTNBWFOSFQPTJUPSZJOHJUIVCIUNMΑΓ
GithubͰެ։͢Δ (ར༻͢Δଆ) SFQPTJUPSJFT\ NBWFO\VSMIUUQSBXHJUIVCDPNXBEB"OESPJE %JBMPH'SBHNFOUTNBTUFSSFQPTJUPSZ^ ^ EFQFOEFODJFT\ DPNQJMFBUXBEBBOESPJEEJBMPHGSBHNFOUT ^
GithubͰެ։͢Δ ϝϦοτ खܰ σϝϦοτ ͏ଆͰೋߦॻ͘ඞཁ͋Γ ͏ଆͰϏϧυ͕͘ͳΔ(5ඵఔ͘ͳΔΑ͏Ͱ͢)
jCenterʹొ bintrayʹొ https://bintray.com/bintray/jcenter ->sign up
jCenterʹొ w ϩάΠϯͯ͠ɺQSPpMFͷϖʔδʹߦ͘&EJU"1*,FZ ͰݟΒΕΔ w IUUQTHJUIVCDPNCJOUSBZCJOUSBZFYBNQMFT USFFNBTUFSHSBEMFBBSFYBNQMF w ΛࢀߟʹϥΠϒϥϦͷϞδϡʔϧʹCVJMEHSBEMFΛ࣮
jCenterʹొ (SBEMFεΫϦϓτͰ HSPVQDPNCJOUSBZFYBNQMF WFSTJPO ͳͲΛࢦఆ͠·͢
jCenterʹొ bintrayʹΞοϓϩʔυ ./gradlew bintrayUpload
jCenterʹొ Ξοϓϩʔυ͢ΔͱbintrayʹͦͷϥΠϒϥϦͷ ϖʔδ͕Ͱ͖·͢ Link to jcenterͱ͍͏ϦϯΫ͕͋ΔͷͰΫϦοΫ ςΩετϘοΫε͕͋ΔͷͰ͕͢Կೖྗͤͣʹ ͦͷ··ਃ͢ΕOKʂ
jCenterʹొ(͏ଆ) dependencies{ compile ‘com.bintray.example:test-library- name:1.0.0’ } Ͱࢦఆͯ͋͛͠ΕେৎͰ͢
jCenterʹΞοϓϩʔυ͢Δલʹ ϩʔΧϧʹpublishͯ֬͠ೝ (ϥΠϒϥϦଆ) apply plugin: 'maven-publish' android.libraryVariants publishing { publications
{ maven(MavenPublication) { artifact bundleRelease } } } ͜ΕΛϥΠϒϥϦϞδϡʔϧͷͷbuild.gradleʹՃͯ͠ ./gradlew publishToMavenLocal ϩʔΧϧ্ʹ͋ΔϦϙδτϦʹpublish
jCenterʹΞοϓϩʔυ͢Δલʹ ϩʔΧϧʹpublishͯ֬͠ೝ (͏ଆ) repositories { mavenLocal() } dependencies { compile
‘com.bintray.example:test-library-name:1.0.0’ }
ΘΕͳ͍ͱ൵͍͠
࡞ͬͨΒڞ༗͢Δ Google+ͷAndroid projects on Githubʹ ߘ͢ΔͱAndroid ArsenalʹՃ͞ΕΔͷ Ͱ͍͍ײ͡ IUUQTQMVTHPPHMFDPNVDPNNVOJUJFT
ΦʔϓϯιʔεͰ ָ͘͠։ൃΛʂʂʂ
࡞͍ͬͯΔͷ ϚςϦΞϧσβΠϯΆ͍ ΥονϑΣΠεΞϓϦ(։ൃத) WearLocationWatchFace ! Android Wear͚ͷϥΠϒϥϦ WearSharedPreferences WearHttp 11ίϛοτ