Esempio n. 1
0
        public virtual void InitSdk(string sdk_decompiler_path, repack_tools.tool_apk_model apkinfo)
        {
            m_sdk_path = sdk_decompiler_path;
            m_apkinfo = apkinfo;

            m_sdkinfo = new repack_tools.tool_apk_model();
            m_sdkinfo.DecompilerFolder = sdk_decompiler_path;
            m_sdkinfo.AndroidManifestPath = sdk_decompiler_path + @"\AndroidManifest.xml";
            m_sdkinfo.ApktoolYml = sdk_decompiler_path + @"\apktool.yml";
            m_sdkinfo.in_assets = sdk_decompiler_path + @"\assets";
            m_sdkinfo.in_lib = sdk_decompiler_path + @"\lib";
            m_sdkinfo.in_res = sdk_decompiler_path + @"\res";
            m_sdkinfo.in_smali = sdk_decompiler_path + @"\smali";
            m_sdkinfo.in_unknown = sdk_decompiler_path + @"\unknown";
            m_sdkinfo.settings = new repack_tools.AndroidManifest_model();

            m_AndroidManifest_doc = new XmlDocument();
            m_AndroidManifest_doc.Load(m_sdkinfo.AndroidManifestPath);
            //获取SDK包名
            m_sdkinfo.PrePackageName = m_sdkinfo.NewPackageName = m_AndroidManifest_doc.DocumentElement.Attributes["package"].Value;
            m_sdkinfo.settings.PackageName = apkinfo.PrePackageName;

            //获取权限列表
            XmlNodeList nodePermissions = m_AndroidManifest_doc.DocumentElement.ChildNodes;
            m_sdkinfo.settings.Permissions.Clear();
            for (int i = 0; i < nodePermissions.Count; i++)
            {
                if (nodePermissions[i].Name != "application")
                {
                    m_sdkinfo.settings.Permissions.Add(nodePermissions[i].OuterXml);
                }
            }
        }
Esempio n. 2
0
 /// <summary>
 /// 初始化函数
 /// </summary>
 /// <param name="apkpath">APK路径</param>
 /// <param name="signedapkpath">签名之后的APK存放目录</param>
 /// <param name="keystore">签名信息</param>
 public virtual void Init(string apkpath, string signedapkpath, repack_tools.tool_keystore keystore)
 {
     m_Func = new repack_tools.tool_func();
     m_Func.InitApk(apkpath, signedapkpath, keystore);
     m_Apkpath = apkpath;
     m_SignedApkpath = signedapkpath;
     m_Keystore = keystore;
 }