Esempio n. 1
0
        private async void TxtPath_TextChanged(object sender, TextChangedEventArgs e)
        {
            if (!(sender is TextBox tb))
            {
                return;
            }

            txtLabel.Text      = ". . . .";
            txtLabel.ToolTip   = null;
            txtPackage.Text    = ". . . .";
            txtPackage.ToolTip = null;
            txtVersion.Text    = ". . . .";
            txtVersion.ToolTip = null;
            txtAbi.Text        = ". . . .";
            txtAbi.ToolTip     = null;
            txtSdk.Text        = ". . . .";
            imgIcon.Source     = App.GetPlaystoreImageFromResources();
            gbAction.IsEnabled = false;

            if (string.IsNullOrWhiteSpace(tb.Text))
            {
                return;
            }
            if (loadedApk == null || loadedApk.FilePath != tb.Text)
            {
                ShowLoading();

                var aapt = await Aapt.DumbBadging(tb.Text);

                if (aapt.Success)
                {
                    loadedApk = aapt.Apk;

                    txtLabel.Text    = loadedApk.Label;
                    txtLabel.ToolTip = txtLabel.Text;

                    txtPackage.Text    = loadedApk.PackageName;
                    txtPackage.ToolTip = txtPackage.Text;

                    txtVersion.Text    = string.Format("{0} ( {1} )", loadedApk.VersionName, loadedApk.VersionCode);
                    txtVersion.ToolTip = txtVersion.Text;

                    txtAbi.Text    = loadedApk.AbiList;
                    txtAbi.ToolTip = txtAbi.Text;

                    txtSdk.Text = loadedApk.SdkVersion.ToString();

                    imgIcon.Source     = loadedApk.Icon;
                    gbAction.IsEnabled = true;
                }
                // file corrupt or error
                else
                {
                    txtLabel.Text   = "file corrupt?";
                    txtPackage.Text = "not an apk file? unusual file path?";
                }

                ShowLoading(false);
            }
        }