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
Signature
Search
Keishin Yokomaku
May 22, 2015
Technology
1
370
Signature
The best practice to deal with keystore and signature in the project.
Keishin Yokomaku
May 22, 2015
Tweet
Share
More Decks by Keishin Yokomaku
See All by Keishin Yokomaku
One screen, many BottomSheets
keithyokoma
0
350
LazyColumnのitemがViewPortの中で占める領域の割合を知りたい
keithyokoma
0
600
Build apps for Cars
keithyokoma
0
480
Save the state
keithyokoma
0
530
Either in Kotlin
keithyokoma
0
540
持続的なアプリ開発のためのDXを支える技術
keithyokoma
2
5k
Make the objects serializable with kotlinx.serialization
keithyokoma
0
5k
Kotlin で書く Gradle Custom Tasks
keithyokoma
0
510
DX Improvements
keithyokoma
3
390
Other Decks in Technology
See All in Technology
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
510
DeepSeekとは?何がいいの? - Databricksと学ぶDeepSeek! 〜これからのLLMに備えよ!〜
taka_aki
1
170
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
200
JavaにおけるNull非許容性
skrb
2
2.7k
フォーイット_エンジニア向け会社紹介資料_Forit_Company_Profile.pdf
forit_tech
1
1.7k
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
困難を「一般解」で解く
fujiwara3
7
1.6k
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.9k
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
170
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
230
Introduction to OpenSearch Project - Search Engineering Tech Talk 2025 Winter
tkykenmt
2
160
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Producing Creativity
orderedlist
PRO
344
40k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Speed Design
sergeychernyshev
27
810
A Philosophy of Restraint
colly
203
16k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Unsuck your backbone
ammeep
669
57k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Transcript
Signature @KeithYokoma - Drivemode, Inc. Shibuya.apk #1
KeithYokoma Keishin Yokomaku Drivemode, Inc. Android Engineer GitHub: https://github.com/KeithYokoma Qiita:
http://qiita.com/KeithYokoma e-Book: http://amzn.to/1mZNydv
None
Keystore • Containing “Key” and “Certification” • Every applications are
signed with keystore • The same applications are signed with the same keystore
• Valid until … • Store password: … • Key
alias: … • Key password: … • Owner informations … Keystore
debug.keystore release.keystore Signing app-debug.apk app-release.apk
The problem
The problem Where should we put the keystore?
None
• Possibility to lost keystore files • Who remembers password?
• Manual operation to share keystore files • Dull to copy them by hand Shared drive?
Shared drive? Yuck!
Put keystores in the repository
Repository • No chance to lost(we have a history!) •
Quick set up build env with just cloning • Note: Safe to share them in PRIVATE repo
None
Wait, how do we share keystore password?
Keystore password • Use `echo something_seed_value | md5` • Set
it as ENV value ‘export KSTOREPWD=…’ • Read ENV value from build.gradle
build.gradle android { signingConfigs { release { storePassword System.getenv("KSTOREPWD") keyPassword
System.getenv(“KEYPWD”) } } }
Looks Good To Me
Signature @KeithYokoma - Drivemode, Inc. Shibuya.apk #1