[PM] Restore the PackageSetting value correctly

- ArrayUtils#appendInt doesn't allow the duplicated case by default.
  The behavior is like `Set`. Add more checks for restoring the split
  information.
- Add array length check in PackageManagerServiceUtils#checkDowngrade

Flag: EXEMPT bugfix
Bug: 355067421
Bug: 350851527
Test: atest PackageManagerSettingsTests
Test: atest PackageManagerServiceUtilsTest
Change-Id: I28cadf75c3b43f549870a1461cb01aff73e9d00c
4 files changed