Android SDKに含まれている aapt コマンドを下記の様に使うと、
apk内に格納された バイナリ化された AndroidManifest.xml を可視化できるようになります。
ex.)
aapt l -a hoge.apk
ですが、screenOrientation 属性や launchMode 属性は、
バイナリ化の際に文字列型から整数値と変更されるようで、以下のように表示されます。
A: android:screenOrientation(0x0101001e)=(type 0x10)0x1
とか
A: android:launchMode(0x0101001d)=(type 0x10)0x2
のように。
(どういうわけか) Android Developers にはどの値にマッピングされるのかは書いてないので
調べてみました。
android:screenOrientation
unspecified: -1(0xffffffff)
landscape: 0(0x0)
portrait: 1(0x1)
user: 2(0x2)
behind: 3(0x3)
sensor: 4(0x4)
nosensor: 5(0x5)
sensorLandscape: 6(0x6)
sensorPortrait: 7(0x7)
reverseLandscape: 8(0x8)
reversePortrait: 9(0x9)
fullSensor: 10(0xa)
userLandscape: 11(0xb)
userPortrait: 12(0xc)
fullUser: 13(0xd)
locked: 14(0xe)
android:launchMode
standard: 0(0x0)
singleTop: 1(0x1)
singleTask: 2(0x2)
singleInstance: 3(0x3)
(追記:ついでに以下も調べてみました)
android:configChanges
mcc: 0x1
mnc: 0x2
locale: 0x4
touchscreen: 0x8
keyboard: 0x10
keyboardHidden: 0x20
navigation: 0x40
orientation: 0x80
screenLayout: 0x100
uiMode: 0x200
screenSize: 0x400
smallestScreenSize: 0x800
layoutDirection: 0x2000
fontScale: 0x40000000
※ 内部的にはビットフラグのようです
android:uiOptions
none: 0(0x0)
splitActionBarWhenNarrow: 1(0x1)
android:windowSoftInputMode
stateUnspecified: 0(0x0)
stateUnchanged: 1(0x1)
stateHidden: 2(0x2)
stateAlwaysHidden: 3(0x3)
stateVisible: 4(0x4)
stateAlwaysVisible: 5(0x5)
adjustUnspecified: 0x0
adjustResize: 0x10
adjustPan: 0x20
※ adjust* はビットフラグのようです。
(再追記)
android:installLocation
auto : 0(0x0)
internalOnly : 1(0x1)
preferExternal : 2(0x2)