Utils.kt 687 B

12345678910111213141516171819202122
  1. package im.angry.openeuicc.util
  2. import android.content.Context
  3. import android.content.pm.PackageManager
  4. import im.angry.openeuicc.core.EuiccChannel
  5. import net.typeblog.lpac_jni.LocalProfileInfo
  6. import java.lang.RuntimeException
  7. val Context.selfAppVersion: String
  8. get() =
  9. try {
  10. val pInfo = packageManager.getPackageInfo(packageName, 0)
  11. pInfo.versionName
  12. } catch (e: PackageManager.NameNotFoundException) {
  13. throw RuntimeException(e)
  14. }
  15. val LocalProfileInfo.isEnabled: Boolean
  16. get() = state == LocalProfileInfo.State.Enabled
  17. val List<EuiccChannel>.hasMultipleChips: Boolean
  18. get() = distinctBy { it.slotId }.size > 1