├── res ├── win32.rc ├── highlight │ ├── strings.def │ ├── numbers.def │ ├── yml.def │ ├── smali.def │ ├── xml.def │ ├── default.theme │ └── java.def ├── extra │ └── logo.psd ├── images │ ├── logo.png │ └── viewer_bg.png ├── fonts │ ├── scp_bold.ttf │ └── scp_regular.ttf ├── icons │ ├── apkstudio.ico │ ├── dialog_quit.png │ ├── toolbar_apk.png │ ├── toolbar_dir.png │ ├── dialog_about.png │ ├── dock_console.png │ ├── dock_project.png │ ├── toolbar_build.png │ ├── toolbar_save.png │ ├── toolbar_sign.png │ ├── toolbar_settings.png │ └── toolbar_terminal.png ├── html │ └── about.html ├── styles │ └── default.qss ├── all.qrc └── lang │ └── en.ts ├── external ├── bitrock.png ├── wiki │ └── building │ │ ├── 1.png │ │ ├── 2.png │ │ ├── 3.png │ │ ├── 4.png │ │ ├── 5.png │ │ ├── 6.png │ │ ├── 7.png │ │ └── 8.png └── screenshots │ ├── linux-1.png │ ├── linux-2.png │ └── windows-1.png ├── apkstudio.desktop ├── appveyor.yml ├── include ├── toolbar.h ├── textutils.h ├── macros.h ├── dialog.h ├── fileutils.h ├── adb.h ├── pathutils.h ├── zipalign.h ├── widgetbar.h ├── pleasewait.h ├── menubar.h ├── runner.h ├── installrunnable.h ├── runnable.h ├── java.h ├── jarsigner.h ├── buildrunnable.h ├── statusbar.h ├── coderhighlightertheme.h ├── consoledock.h ├── flickcharm.h ├── preopenapk.h ├── coderhighlighter.h ├── settingseditor.h ├── signrunnable.h ├── decoderunnable.h ├── apktool.h ├── signexportapk.h ├── process.h ├── qrc.h ├── codersidebar.h ├── findreplace.h ├── viewer.h ├── projectdock.h ├── coderhighlighterdefinition.h ├── editortabs.h ├── preferences.h ├── coder.h ├── constants.h └── ide.h ├── src ├── qrc.cpp ├── dialog.cpp ├── runnable.cpp ├── textutils.cpp ├── zipalign.cpp ├── widgetbar.cpp ├── runner.cpp ├── buildrunnable.cpp ├── decoderunnable.cpp ├── jarsigner.cpp ├── toolbar.cpp ├── adb.cpp ├── pleasewait.cpp ├── main.cpp ├── installrunnable.cpp ├── java.cpp ├── process.cpp ├── signrunnable.cpp ├── apktool.cpp ├── pathutils.cpp ├── coderhighlightertheme.cpp ├── coderhighlighterdefinition.cpp ├── viewer.cpp ├── statusbar.cpp ├── fileutils.cpp ├── coderhighlighter.cpp ├── signexportapk.cpp ├── codersidebar.cpp ├── projectdock.cpp ├── consoledock.cpp ├── settingseditor.cpp ├── menubar.cpp ├── preopenapk.cpp ├── findreplace.cpp ├── preferences.cpp ├── flickcharm.cpp ├── editortabs.cpp ├── ide.cpp └── coder.cpp ├── .gitignore ├── .travis.yml ├── apkstudio.pro ├── README.md └── LICENSE.md /res/win32.rc: -------------------------------------------------------------------------------- 1 | IDI_ICON1 ICON DISCARDABLE "icons/apkstudio.ico" 2 | -------------------------------------------------------------------------------- /res/highlight/strings.def: -------------------------------------------------------------------------------- 1 | strings "[^<"]*" 2 | strings '[^<']*' 3 | -------------------------------------------------------------------------------- /res/highlight/numbers.def: -------------------------------------------------------------------------------- 1 | numbers [-+]?\b\d+\b 2 | numbers \b0[xX][0-9a-fA-F]+\b 3 | -------------------------------------------------------------------------------- /external/bitrock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/bitrock.png -------------------------------------------------------------------------------- /res/extra/logo.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/extra/logo.psd -------------------------------------------------------------------------------- /res/highlight/yml.def: -------------------------------------------------------------------------------- 1 | @include numbers.def 2 | @include strings.def 3 | comments #[^\n]* 4 | -------------------------------------------------------------------------------- /res/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/images/logo.png -------------------------------------------------------------------------------- /res/fonts/scp_bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/fonts/scp_bold.ttf -------------------------------------------------------------------------------- /res/fonts/scp_regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/fonts/scp_regular.ttf -------------------------------------------------------------------------------- /res/icons/apkstudio.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/apkstudio.ico -------------------------------------------------------------------------------- /res/icons/dialog_quit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/dialog_quit.png -------------------------------------------------------------------------------- /res/icons/toolbar_apk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_apk.png -------------------------------------------------------------------------------- /res/icons/toolbar_dir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_dir.png -------------------------------------------------------------------------------- /res/images/viewer_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/images/viewer_bg.png -------------------------------------------------------------------------------- /res/icons/dialog_about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/dialog_about.png -------------------------------------------------------------------------------- /res/icons/dock_console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/dock_console.png -------------------------------------------------------------------------------- /res/icons/dock_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/dock_project.png -------------------------------------------------------------------------------- /res/icons/toolbar_build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_build.png -------------------------------------------------------------------------------- /res/icons/toolbar_save.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_save.png -------------------------------------------------------------------------------- /res/icons/toolbar_sign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_sign.png -------------------------------------------------------------------------------- /external/wiki/building/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/1.png -------------------------------------------------------------------------------- /external/wiki/building/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/2.png -------------------------------------------------------------------------------- /external/wiki/building/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/3.png -------------------------------------------------------------------------------- /external/wiki/building/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/4.png -------------------------------------------------------------------------------- /external/wiki/building/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/5.png -------------------------------------------------------------------------------- /external/wiki/building/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/6.png -------------------------------------------------------------------------------- /external/wiki/building/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/7.png -------------------------------------------------------------------------------- /external/wiki/building/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/wiki/building/8.png -------------------------------------------------------------------------------- /res/icons/toolbar_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_settings.png -------------------------------------------------------------------------------- /res/icons/toolbar_terminal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/res/icons/toolbar_terminal.png -------------------------------------------------------------------------------- /external/screenshots/linux-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/screenshots/linux-1.png -------------------------------------------------------------------------------- /external/screenshots/linux-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/screenshots/linux-2.png -------------------------------------------------------------------------------- /external/screenshots/windows-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/probonopd/apkstudio/patch-1/external/screenshots/windows-1.png -------------------------------------------------------------------------------- /apkstudio.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Type=Application 3 | Name=APK Studio 4 | Exec=apkstudio 5 | Icon=apkstudio 6 | Categories=Development; 7 | -------------------------------------------------------------------------------- /res/highlight/smali.def: -------------------------------------------------------------------------------- 1 | @include numbers.def 2 | variables \b[pv][0-9]+\b 3 | namespace (?<=L)([a-zA-Z0-9/]+)(?=;) 4 | keywords [.][a-z\-]+\b 5 | @include strings.def 6 | comments #[^\n]* 7 | -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- 1 | install: 2 | - set QTDIR=C:\Qt\5.5\mingw492_32 3 | - set PATH=%PATH%;%QTDIR%\bin;C:\MinGW\bin 4 | build_script: 5 | - qmake apkstudio.pro 6 | - lrelease res\lang\en.ts 7 | - mingw32-make 8 | test: off 9 | -------------------------------------------------------------------------------- /include/toolbar.h: -------------------------------------------------------------------------------- 1 | #ifndef TOOLBAR_H 2 | #define TOOLBAR_H 3 | 4 | #include 5 | #include "macros.h" 6 | 7 | APP_NAMESPACE_START 8 | 9 | class ToolBar : public QToolBar 10 | { 11 | Q_OBJECT 12 | public: 13 | explicit ToolBar(QWidget *parent = 0); 14 | }; 15 | 16 | APP_NAMESPACE_END 17 | 18 | #endif // TOOLBAR_H 19 | -------------------------------------------------------------------------------- /include/textutils.h: -------------------------------------------------------------------------------- 1 | #ifndef TEXTUTILS_H 2 | #define TEXTUTILS_H 3 | 4 | #include 5 | #include "macros.h" 6 | 7 | class TextUtils 8 | { 9 | public: 10 | static QString ltrim(const QString& str, const QChar& c = QChar::Space); 11 | static QString rtrim(const QString& str, const QChar& c = QChar::Space); 12 | }; 13 | 14 | #endif // TEXTUTILS_H 15 | -------------------------------------------------------------------------------- /include/macros.h: -------------------------------------------------------------------------------- 1 | #ifndef MACROS_H 2 | #define MACROS_H 3 | 4 | #define APP_NAMESPACE ApkStudio 5 | #define APP_NAMESPACE_START namespace APP_NAMESPACE { 6 | #define APP_NAMESPACE_END } 7 | #define APP_CONNECTIONS_LIST QList _connections; 8 | #define APP_CONNECTIONS_DISCONNECT foreach (QMetaObject::Connection c, _connections) { disconnect(c); } 9 | 10 | #endif // MACROS_H 11 | -------------------------------------------------------------------------------- /res/highlight/xml.def: -------------------------------------------------------------------------------- 1 | keywords <[\s]*[/]?[\s]*[\w]+(?=[\s/>]) 2 | keywords <[\s]*[/]?[\s]*[\w]+-(\w+/?)+(?=[\s/>]) 3 | keywords [<>] 4 | keywords /> 5 | keywords 8 | attributes \w+(?=\=) 9 | attributes \w+:(\w+/?)+(?=\=) 10 | @include numbers.def 11 | strings "[^\n"]+"(?=[\s/>]) 12 | resources @([a-zA-Z])+(?=/) 13 | comments#multiline