apkをjavaにするのは手順が長そう(3段階くらいある)ので、再設定や実行をguiでできるようにするapk2javaをWPF+C#でつくった。
まずjsonファイルに、実行ファイルのパスや、入手先、実行時のフォルダ、出力先、引数を記述する。これをProcessとして実行すれば、GUIで操作できるというわけ。
jad.json
jad.json
{
"ExecuteFullPath": "jad158g.win/jad.exe",
"ExefileURL": "http://varaneckas.com/jad/",
"args": "-d [resultfolder] -s java -r [dataroot]Source_class/**/*.class",
"ResultFullPath": "Source_Java"
}
JSONを読むクラスを作る。
namespace apk2java {
public class ExeArg {
public string ExecuteFullPath { get; set; }
public string ExefileURL { get; set; }
public string args { get; set; }
public string ResultFullPath { get; set; }
}
}
JSONを読む。
private string filepath;
private string dataRoot;
public ExeArg jsonresult;
public Section(string filepath, string DataRoot) {
InitializeComponent();
this.filepath = filepath;
this.dataRoot = DataRoot;
jsonresult = ReadJSON(this.filepath, DataRoot);
}
private ExeArg ReadJSON(string filepath, string DataRoot) {
string jsonstring = File.ReadAllText(filepath, Encoding.UTF8);
ExeArg exearg = null;
try {
exearg = JsonConvert.DeserializeObject<ExeArg>(jsonstring);
ExecuteFullPath.Text = DataRoot + exearg.ExecuteFullPath.Replace("/", @"\");
ExefileURL.Text = exearg.ExefileURL;
args.Text = exearg.args;
ResultFullPath.Text = DataRoot + exearg.ResultFullPath.Replace("/", @"\");
}
catch (Exception exception) {
string error = filepath + "\r\n"+exception.Message;
}
return exearg;
}
もし、実行ファイルがなかったら、URLからとってこよう、みたいな。
実行したらうまくいった。
なっかなかです。