mirror of
https://github.com/f-droid/fdroidclient.git
synced 2026-05-24 08:25:00 -04:00
Merge branch 'two-swap-fixes' into 'master'
two swap fixes See merge request fdroid/fdroidclient!1263
This commit is contained in:
@@ -82,6 +82,7 @@ public abstract class IndexCreator<T>(
|
||||
val versionCode = PackageInfoCompat.getLongVersionCode(packageInfo)
|
||||
val apkName = "${packageName}_$versionCode.apk"
|
||||
val apkFile = File(repoDir, apkName)
|
||||
if (apkFile.exists()) apkFile.delete()
|
||||
symlink(packageInfo.applicationInfo.publicSourceDir, apkFile.absolutePath)
|
||||
if (!apkFile.exists()) {
|
||||
File(packageInfo.applicationInfo.publicSourceDir).copyTo(apkFile)
|
||||
|
||||
@@ -5,6 +5,7 @@ import android.content.pm.PackageManager
|
||||
import android.content.pm.PackageManager.GET_PERMISSIONS
|
||||
import android.content.pm.PackageManager.GET_SIGNATURES
|
||||
import android.os.Build.VERSION.SDK_INT
|
||||
import android.util.Log
|
||||
import androidx.core.content.pm.PackageInfoCompat
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.json.encodeToStream
|
||||
@@ -63,10 +64,14 @@ public class IndexV1Creator(
|
||||
@Suppress("DEPRECATION")
|
||||
val flags = GET_SIGNATURES or GET_PERMISSIONS
|
||||
|
||||
@Suppress("PackageManagerGetSignatures")
|
||||
val packageInfo = packageManager.getPackageInfo(packageName, flags)
|
||||
apps.add(getApp(packageInfo))
|
||||
packages[packageName] = listOf(getPackage(packageInfo))
|
||||
try {
|
||||
@Suppress("PackageManagerGetSignatures")
|
||||
val packageInfo = packageManager.getPackageInfo(packageName, flags)
|
||||
apps.add(getApp(packageInfo))
|
||||
packages[packageName] = listOf(getPackage(packageInfo))
|
||||
} catch (e: PackageManager.NameNotFoundException) {
|
||||
Log.i("IndexV1Creator", "app disappeared during addApp: " + e)
|
||||
} ?: return // this app disappeared, nothing left to do
|
||||
}
|
||||
|
||||
private fun getApp(packageInfo: PackageInfo): AppV1 {
|
||||
|
||||
Reference in New Issue
Block a user