雑にAPKを管理しやすいファイル名にしたい
前置き
よくリリースAPKを作って、Driveに保存したりするのだけど、 app-develop.apk
みたいな名前だと管理しにくい。
いい感じの名前に変えてくれる君を書いたのでメモ。
分かりやすい名前
APKの特徴を表す情報がほしい
- PackageName
- VersionName
いつ作ったのか知りたい (同じversionでAPK作り直しとかあるので)
- Year/Month/Day/Hour/Minute/Second
これらを統合して次のような名前のAPKがよさそう
<packagename>-<version>-<%Y%m%d%H%M%S>.apk
me.mattak.example-0.0.1-20161013112233.apk
Script
apkup
#!/usr/bin/env ruby
AAPT=`find #{ENV['ANDROID_HOME']}/build-tools -type f -name 'aapt' | sort -r | head -1`.chomp
raise "aapt not found" unless File.exist? AAPT
if ARGV.size > 0
APK_SRC=`find . -type f -name '*.apk' | grep -v unaligned | grep #{ARGV[0]} | peco --select-1 --prompt 'Source>'`.chomp
else
APK_SRC=`find . -type f -name '*.apk' | grep -v unaligned | peco --select-1 --prompt 'Source>'`.chomp
end
LINE=`#{AAPT} dump badging #{APK_SRC} | grep package:`.chomp
LINE.sub (/name='(\S+)'/) {|it| PACKAGE = $1 }
LINE.sub (/versionName='(\S+)'/) {|it| VERSION = $1 }
FILE="#{PACKAGE}-#{VERSION}-#{Time.now.strftime('%Y%m%d%H%M%S')}.apk"
`cp #{APK_SRC} #{FILE}`
puts FILE
apkup
#!/usr/bin/env ruby
AAPT=`find #{ENV['ANDROID_HOME']}/build-tools -type f -name 'aapt' | sort -r | head -1`.chomp
raise "aapt not found" unless File.exist? AAPT
if ARGV.size > 0
APK_SRC=`find . -type f -name '*.apk' | grep -v unaligned | grep #{ARGV[0]} | peco --select-1 --prompt 'Source>'`.chomp
else
APK_SRC=`find . -type f -name '*.apk' | grep -v unaligned | peco --select-1 --prompt 'Source>'`.chomp
end
LINE=`#{AAPT} dump badging #{APK_SRC} | grep package:`.chomp
LINE.sub (/name='(\S+)'/) {|it| PACKAGE = $1 }
LINE.sub (/versionName='(\S+)'/) {|it| VERSION = $1 }
FILE="#{PACKAGE}-#{VERSION}-#{Time.now.strftime('%Y%m%d%H%M%S')}.apk"
`cp #{APK_SRC} #{FILE}`
puts FILE
雑にこんな感じの書いて使ってる.
pecoだけinstallが必要なので注意.
APKだけあれば、Directoryの場所を気にせず実行できるのでべんりだ.
Author And Source
この問題について(雑にAPKを管理しやすいファイル名にしたい), 我々は、より多くの情報をここで見つけました https://qiita.com/mattak/items/5b10264ee3de7967cb7f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .