forked from tommytomatoe/Android-Utility
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathapk_tool
More file actions
executable file
·260 lines (243 loc) · 5.44 KB
/
apk_tool
File metadata and controls
executable file
·260 lines (243 loc) · 5.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
#! /bin/bash
# Apktool Script
# Author: Tommy Nguyen [tommytomatoe]
# Version: 1.0.2
# Date: August 22, 2011
# Contact: tommytomatoe@gmail.com
# Setting Loop Variable
clear
APPLE=$1
# Functions
#enterKey
enterKey()
{ echo "### Press [enter] to continue, any other key to quit";
read -s -n 1 key
if [[ $key = "" ]]; then
echo
else
echo
echo "Installation aborted";
enter
apktool_s
fi
}
#enter
enter()
{ echo
echo "Please press [enter] to continue";
read -s -n 1 key
if [[ $key = "" ]]; then
echo
clear
fi
}
#enter
enterA()
{ echo
echo "Please press [enter] when ready";
read -s -n 1 key
if [[ $key = "" ]]; then
echo
fi
}
#load
load_dot ()
{ echo -n "."
sleep .1
echo -n "."
sleep .1
echo -n "."
sleep .1
echo -n "."
sleep .1
echo -n "."
sleep .1
echo "."
}
#quit
quit()
{ echo
echo "Thank you for choosing Android Utility"
echo "brought to you by tommytomatoe :-)"
echo
echo "Please Don't Drink and Drive"
echo
exit
}
#select
selection ()
{ echo
echo "You've selcted [$COM]"
echo
}
#install framework
a_if ()
{ COM="Install framework"
f=$HOME/android-utility/working-folder/framework-here
selection
clear
echo
echo "Please place framework-res.apk and/or other framework in:"
echo
echo $f
enterA
echo "Android Utility is preparing to install these frameworks:"
echo
ls -t -1 $f
sleep .5
echo
cd $f
a=framework-res.apk
if [[ -f $a ]] ; then
echo -n "Installing $a."
load_dot
apktool if $a
echo
else
echo ..
fi
b=com.htc.resources.apk
if [[ -f $b ]] ; then
echo -n "Installing $b."
load_dot
apktool if $b
else
echo ..
fi
c=twframework-res.apk
if [[ -f $c ]] ; then
echo -n "Installing $c."
load_dot
apktool if $c
else
echo ..
fi
d=SemcGenericUxpRes.apk
if [[ -f $d ]] ; then
echo -n "Installing $d."
load_dot
apktool if $d
else
echo ..
fi
enter
}
#apktool install
ins_apktool ()
{ COM="Install new apktool"
c=$HOME/android-utility/resources/clean
u=/usr/local/bin
selection
enterKey
clear
echo "Your current verion of apktool is listed as:"
echo
echo "### `apktool | sed -n 1p`"
echo
echo "Which version of apktool would you like to install?"
echo
echo " 1. apktool 1.3.1"
echo " 2. apktool 1.3.2"
echo " 3. apktool 1.4.1"
echo " 4. apktool 1.4.2 - compiled from source [8.22.2011]"
echo
echo " 5. apktool 1.3.2 experimental - fixed "-v4" and xml"
echo
echo " x. Keep current version"
echo
printf "Please make your selection: "
read sel
case $sel in
1) echo; sudo cp -v $c/apktool1.3.1/apktool.jar $u/; atool_v;;
2) echo; sudo cp -v $c/apktool1.3.2/apktool.jar $u/; atool_v;;
3) echo; sudo cp -v $c/apktool1.4.1/apktool.jar $u/; atool_v;;
4) echo; sudo cp -v $c/apktool1.4.2/apktool.jar $u/; atool_v;;
5) echo; sudo cp -v $c/apktool1.3.2mod/apktool.jar $u/; atool_v;;
x) echo; echo "Current version has not been changed";;
*) echo; echo "$sel is not a valid option"; echo;;
esac
enter
}
#just to remind apktool version
atool_v ()
{ echo
echo "Your version of apktool is now:"
echo
echo "### `apktool | sed -n 1p`"
}
ins_aapt ()
{ COM="Install new aapt"
c=$HOME/android-utility/resources/clean/aapt
u=/usr/local/bin
selection
enterKey
clear
echo "Which version of aapt would you like to install?"
echo
echo " 1. aapt sdk 8 - Froyo Development"
echo " 2. aapt sdk 9 - Gingerbread Development"
echo " 3. aapt sdk 10 - Honeycomb Development"
echo " 3. aapt sdk 11 - Honeycomb Development"
echo
echo " x. Keep current version"
echo
echo
printf "Please make your selection: "
read sel
case $sel in
1) echo; sudo cp -v $c/aapt-8 $u/aapt; aapt_vv;;
2) echo; sudo cp -v $c/aapt-9 $u/aapt; aapt_vv;;
3) echo; sudo cp -v $c/aapt-10 $u/aapt; aapt_vv;;
4) echo; sudo cp -v $c/aapt-11 $u/aapt; aapt_vv;;
x) echo; echo "Current version has not been changed";;
*) echo; echo "$sel is not a valid option"; echo; echo "Current version has not been changed";;
esac
enter
}
#aapt updated
aapt_vv ()
{ echo
echo "Your version of aapt has been updated"
}
#apktool
apktool_s ()
{ echo "Welcome to Android Application Re-Engineering Manager"
echo
echo "|----------------------------------------------------------------|"
echo "|### `apktool | sed -n 1p` |"
echo "|----------------------------------------------------------------|"
echo
echo "| Apktool Utility |"
echo "|-----------------------------------------------------|"
echo "| 1. Install framework first (ie. framework-res.apk)|"
echo "| 2. Decompile Apk | "
echo "| 3. Decompile Multiple Apk | "
echo "| 4. Recompile Apk |"
echo "| 5. Recompile Multiple Apk |"
echo "|-----------------------------------------------------|"
echo
echo "| Optional Flavors |"
echo "|-----------------------------------------------------|"
echo "| a. Use different version of apktool |"
echo "| b. Use different version of aapt |"
echo "| q. Go Back to Main Menu |"
echo "|-----------------------------------------------------|"
echo
printf %s " Please Select Feature: "
read num
case $num in
1) a_if;;
2) apk_dec;;
3) apk_dec -m;;
4) apk_build;;
5) apk_build -m;;
a) ins_apktool;;
b) ins_aapt;;
q) clear; exit;;
*) echo; echo "$num is not a valid option"; enter;
esac
}
while [ "$APPLE" = "" ]
do
apktool_s
done