Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # framework deodex処理
- framework_deodex () {
- clear
- mkdir $WORK
- # Android 5.0.x以上の場合
- if [ $bootver = "64sys" -o $bootver = "32sys" ]; then
- # ファイル数取得
- fodexnum=`find $FRAMEWORK | grep -c ".odex"`
- if [ $bootver = "64sys" ]; then
- fbootdexlist=`find raw/boot64 | grep ".dex" | sed s/.dex//`
- elif [ $bootver = "32sys" ]; then
- fbootdexlist=`find raw/boot | grep ".dex" | sed s/.dex//`
- fi
- if [ $fodexnum != "0" ]; then
- if [ $bootver = "64sys" ]; then
- fodexlist=`find $FRAMEWORK/arm64 | grep ".odex" | sed s/.odex//`
- elif [ $bootver = "32sys" ]; then
- fodexlist=`find $FRAMEWORK/arm | grep ".odex" | sed s/.odex//`
- fi
- # XPERIA SemcGenericUxpRes 64bit
- if [ $bootver = "64sys" ]; then
- if [ -e $FRAMEWORK/SemcGenericUxpRes/arm64/SemcGenericUxpRes.odex ]; then
- cp $FRAMEWORK/SemcGenericUxpRes/arm64/SemcGenericUxpRes.odex $WORK/
- mv $FRAMEWORK/SemcGenericUxpRes/SemcGenericUxpRes.apk $WORK/
- cd $WORK
- # 実行結果非表示
- $TOOLS/oat2dex SemcGenericUxpRes.odex ../raw/boot64 > /dev/null 2>&1
- mv SemcGenericUxpRes.dex classes.dex
- 7z a -tzip SemcGenericUxpRes.apk classes.dex
- mv SemcGenericUxpRes.apk $FRAMEWORK/SemcGenericUxpRes/SemcGenericUxpRes.apk
- rm -rf classes.dex SemcGenericUxpRes.odex
- rm -rf $FRAMEWORK/SemcGenericUxpRes/arm*
- cd $DEF
- else
- :
- fi
- # framework-cleaase2処理 64bit
- if [ -e raw/boot64/framework-classes2.dex ]; then
- cp raw/boot64/framework-classes2.dex $WORK/
- cd $WORK
- mv framework-classes2.dex classes2.dex
- mv $FRAMEWORK/framework.jar framework.jar
- 7z a -tzip framework.jar classes2.dex
- mv framework.jar $FRAMEWORK/framework.jar
- rm -rf classes2.dex
- clear
- cd $DEF
- else
- :
- fi
- # XPERIA SemcGenericUxpRes 32bit
- elif [ $bootver = "32sys" ]; then
- if [ -e $FRAMEWORK/SemcGenericUxpRes/arm/SemcGenericUxpRes.odex ]; then
- cp $FRAMEWORK/SemcGenericUxpRes/arm/SemcGenericUxpRes.odex $WORK/
- mv $FRAMEWORK/SemcGenericUxpRes/SemcGenericUxpRes.apk $WORK/
- cd $WORK
- # 実行結果非表示
- $TOOLS/oat2dex SemcGenericUxpRes.odex ../raw/boot > /dev/null 2>&1
- mv SemcGenericUxpRes.dex classes.dex
- 7z a -tzip SemcGenericUxpRes.apk classes.dex
- mv SemcGenericUxpRes.apk $FRAME$WORK/SemcGenericUxpRes/SemcGenericUxpRes.apk
- rm -rf classes.dex SemcGenericUxpRes.odex
- rm -rf $FRAME$WORK/SemcGenericUxpRes/arm*
- cd $DEF
- else
- :
- fi
- # framework-cleaase2処理 32bit共通
- if [ -e raw/boot/framework-classes2.dex ]; then
- cp raw/boot/framework-classes2.dex $WORK/
- cd $WORK
- mv framework-classes2.dex classes2.dex
- mv $FRAMEWORK/framework.jar framework.jar
- 7z a -tzip framework.jar classes2.dex
- mv framework.jar $FRAMEWORK/framework.jar
- rm -rf classes2.dex
- clear
- cd $DEF
- else
- :
- fi
- fi
- # boot-class deodex 64bit 32bit共通
- for fbootdexfile in ${fbootdexlist[@]}
- do
- cp $fbootdexfile.dex $WORK/
- cd $WORK
- fconvbootdex=`find *.dex | sed s/.dex//`
- if [ $fconvbootdex = "framework-classes2" ]; then
- rm -rf $fconvbootdex.dex
- cd $DEF
- else
- mv $fconvbootdex.dex classes.dex
- mv $FRAMEWORK/$fconvbootdex.jar $fconvbootdex.jar
- 7z a -tzip $fconvbootdex.jar classes.dex
- mv $fconvbootdex.jar $FRAMEWORK/$fconvbootdex.jar
- rm -rf classes.dex
- clear
- cd $DEF
- fi
- done
- # boot-class以外 deodex 64bit
- if [ $bootver = "64sys" ]; then
- for fodexfile in ${fodexlist[@]}
- do
- cp $fodexfile.odex $WORK/
- cd $WORK
- fconvodex=`find *.odex | sed s/.odex//`
- if [ $fconvodex = "com.android.nfc_extras" ]; then
- mv $fconvodex.odex $FRAMEWORK/$fconvodex.odex
- cd $DEF
- else
- # 実行結果非表示
- $TOOLS/oat2dex $fconvodex.odex ../raw/boot64 > /dev/null 2>&1
- mv $fconvodex.dex classes.dex
- mv $FRAMEWORK/$fconvodex.jar $fconvodex.jar
- 7z a -tzip $fconvodex.jar classes.dex
- mv $fconvodex.jar $FRAMEWORK/$fconvodex.jar
- rm -rf $fconvodex.odex classes.dex
- clear
- cd $DEF
- fi
- done
- # boot-class以外 deodex 32bit共通
- elif [ $bootver = "32sys" ]; then
- for fodexfile in ${fodexlist[@]}
- do
- cp $fodexfile.odex $WORK/
- cd $WORK
- fconvodex=`find *.odex | sed s/.odex//`
- if [ $fconvodex = "com.android.nfc_extras" ]; then
- mv $fconvodex.odex $FRAMEWORK/$fconvodex.odex
- cd $DEF
- else
- # 実行結果非表示
- $TOOLS/oat2dex $fconvodex.odex ../raw/boot > /dev/null 2>&1
- mv $fconvodex.dex classes.dex
- mv $FRAMEWORK/$fconvodex.jar $fconvodex.jar
- 7z a -tzip $fconvodex.jar classes.dex
- mv $fconvodex.jar $FRAMEWORK/$fconvodex.jar
- rm -rf $fconvodex.odex classes.dex
- clear
- cd $DEF
- fi
- done
- fi
- if [ -e $FRAMEWORK/.jar ]; then
- rm -rf $FRAMEWORK/.jar
- fi
- rm -rf $FRAMEWORK/arm*
- echo ""
- echo "frameworkのdeodex完了"
- read Wait
- else
- echo ""
- echo "frameworkフォルダにodexファイルは存在しないのでdeodexの必要はありません"
- read Wait
- fi
- # Android 4.4以下
- elif [ $api -le 19 ]; then
- fodex=`find $FRAMEWORK | grep -c ".odex"`
- if [ $fodex != "0" ]; then
- cd $FRAMEWORK
- # For XPERIA
- if [ -e playstationcertified.odex ]; then
- mv playstationcertified.odex com.playstation.playstationcertified.odex
- fi
- if [ -e cneapiclient_release.odex ]; then
- mv cneapiclient_release.odex cneapiclient.odex
- fi
- if [ -e com.quicinc.cne_release.odex ]; then
- mv com.quicinc.cne_release.odex com.quicinc.cne.odex
- fi
- fapklist=`find *.apk | sed s/.apk//`
- for fapkfile in ${fapklist[@]}
- do
- clear
- $TOOLS/baksmali -d $FRAMEWORK -x $fapkfile.odex -o $WORK/$fapkfile
- $TOOLS/smali $WORK/$fapkfile -o $WORK/classes.dex
- 7z a -tzip $fapkfile.apk $WORK/classes.dex
- rm -rf $WORK/$fapkfile $fapkfile.odex $WORK/classes.dex
- done
- fodexlist=`find *.odex | sed s/.odex//`
- for fodexfile in ${fodexlist[@]}
- do
- clear
- $TOOLS/baksmali -d $FRAMEWORK -x $fodexfile.odex -o $WORK/$fodexfile
- $TOOLS/smali $WORK/$fodexfile -o $WORK/classes.dex
- 7z a -tzip $fodexfile.jar $WORK/classes.dex
- rm -rf $WORK/$fodexfile $fodexfile.odex $WORK/classes.dex
- done
- cd $DEF
- echo ""
- echo "frameworkのdeodex完了"
- read Wait
- else
- echo ""
- echo "frameworkフォルダにodexファイルは存在しないのでdeodexの必要はありません"
- read Wait
- fi
- fi
- rm -rf $WORK
- menu
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement