
com.github.cosysoft.device.android.impl.InstalledAndroidApp Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of device-api Show documentation
Show all versions of device-api Show documentation
A set of tools for operate android device via android debug bridge
package com.github.cosysoft.device.android.impl;
import com.github.cosysoft.device.android.AndroidApp;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class InstalledAndroidApp implements AndroidApp {
private String packageName;
private String activityName;
private String version;
public InstalledAndroidApp(String appInfo) {
Pattern infoPattern = Pattern.compile("(.+):(.+)/(.+)");
Matcher patternMatcher = infoPattern.matcher(appInfo);
if (patternMatcher.matches()) {
packageName = patternMatcher.group(1);
version = patternMatcher.group(2);
activityName = patternMatcher.group(3);
} else {
throw new RuntimeException(
"Format for installed app is: tld.company.app:version/ActivityClass");
}
}
@Override
public String getBasePackage() {
return packageName;
}
@Override
public String getMainActivity() {
return (activityName.contains(".")) ? activityName : packageName + "."
+ activityName;
}
public void setMainActivity(String mainActivity) {
this.activityName = mainActivity;
}
@Override
public String getVersionName() {
return version;
}
@Override
public void deleteFileFromWithinApk(String file) {
// no-op
}
@Override
public String getAppId() {
return packageName + ":" + version;
}
@Override
public String getAbsolutePath() {
return null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy