Fix package_name shared uid matching

This commit is contained in:
世界
2026-03-23 18:33:03 +08:00
parent d2a933784c
commit 0045103d14
13 changed files with 74 additions and 56 deletions

View File

@@ -426,8 +426,8 @@ func (r *Router) matchRule(
} else {
r.logger.InfoContext(ctx, "found process path: ", processInfo.ProcessPath)
}
} else if processInfo.AndroidPackageName != "" {
r.logger.InfoContext(ctx, "found package name: ", processInfo.AndroidPackageName)
} else if len(processInfo.AndroidPackageNames) > 0 {
r.logger.InfoContext(ctx, "found package name: ", strings.Join(processInfo.AndroidPackageNames, ", "))
} else if processInfo.UserId != -1 {
if processInfo.UserName != "" {
r.logger.InfoContext(ctx, "found user: ", processInfo.UserName)

View File

@@ -25,10 +25,15 @@ func NewPackageNameItem(packageNameList []string) *PackageNameItem {
}
func (r *PackageNameItem) Match(metadata *adapter.InboundContext) bool {
if metadata.ProcessInfo == nil || metadata.ProcessInfo.AndroidPackageName == "" {
if metadata.ProcessInfo == nil || len(metadata.ProcessInfo.AndroidPackageNames) == 0 {
return false
}
return r.packageMap[metadata.ProcessInfo.AndroidPackageName]
for _, packageName := range metadata.ProcessInfo.AndroidPackageNames {
if r.packageMap[packageName] {
return true
}
}
return false
}
func (r *PackageNameItem) String() string {