этот метод извлечет пакет из строки XML, как ваш textView1, используйте метод ниже, чтобы получить пакет
Java
String getPackageNameFromXml(String s) {
try {
XmlPullParserFactory xmlFactoryObject = XmlPullParserFactory.newInstance();
XmlPullParser myParser = xmlFactoryObject.newPullParser();
myParser.setInput(new StringReader(s));
int event = myParser.getEventType();
while (event != XmlPullParser.END_DOCUMENT) {
String name = myParser.getName();
switch (event) {
case XmlPullParser.START_TAG: {
if (name.toLowerCase().equals("manifest")) {
String packageName = myParser.getAttributeValue(null, "package");
if (packageName != null) {
return packageName;
}
}
}
break;
case XmlPullParser.END_TAG: {
}
break;
}
event = myParser.next();
}
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "";
}
Kotlin
fun getPackageNameFromXml(s: String): String {
try {
val xmlFactoryObject = XmlPullParserFactory.newInstance()
val myParser = xmlFactoryObject.newPullParser()
myParser.setInput(StringReader(s))
var event = myParser.eventType
while (event != XmlPullParser.END_DOCUMENT) {
val name = myParser.name
when (event) {
XmlPullParser.START_TAG -> {
if (name.toLowerCase() == "manifest") {
val packageName = myParser.getAttributeValue(null, "package")
if (packageName != null) {
return packageName
}
}
}
XmlPullParser.END_TAG -> {
}
}
event = myParser.next()
}
} catch (e: XmlPullParserException) {
e.printStackTrace()
} catch (e: IOException) {
e.printStackTrace()
}
return ""
}
просто вызовите этот метод, как показано ниже
textView2.setText(getPackageNameFromXml(textView1.getText().toString()))
ScreenShot