getsentry / getsentry/sentry-java
isSideLoaded issue tag on Android not working as expected
- Linguagem predominante
- Kotlin
- Estrelas
- 1.4k
- Forks
- 478
- Merge médio
- 3d 4h
- PRs com merge (30d)
- 72
Descrição
The `isSideLoaded` tag for Android displays `false` even for sideloaded apps (apps installed directly from the APK):

Here the `installerStore` tag shows the app was installed by `com.android.packageinstaller`, which is the system app used when installing an APK manually, and yet `isSideLoaded` shows `false`.
@marandaneto identified the Android documentation is misleading here: https://developer.android.com/reference/android/content/pm/PackageManager#getInstallerPackageName(java.lang.String)
It says "Retrieve the package name of the application that installed a package. This identifies which market the package came from."
The first sentence is true, the second is not, since not all installer apps are "markets".
Ultimately I don't think the `isSideLoaded` tag is useful even with this fixed, since it's not really defined what "sideloaded" means. Even when the app is actually installed from a market, there are shady market apps that rehost apps copied from Google Play. And apps installed from them are definitely "installed from a store/market", but the information useful for the app developer is that it was installed from an unofficial source, even though it was not technically "sideloaded" (or was it? where is the line?).
What I would propose as the actual fix:
- Remove the `isSideLoaded` tag: it doesn't provide any information not already visible in the `installerStore` tag
- Rename `installerStore` to `installer`: it's not always a store
- Use the red highlight (as visible in `isSideLoaded: false` on the screenshot) on the `installer` tag, when it doesn't contain one of the reputable stores (Google Play, Samsung Galaxy Store, Amazon Appstore)
- Show the `installer` as `none` when none
Guia de contribuição
Direção de pesquisa
Comece rastreando as tags de eventos do Android mencionadas na issue, especialmente isSideLoaded e installerStore, e compare seus valores atuais com o comportamento de instalação proposto. Resolva a definição de instaladores confiáveis em contraste com instaladores não oficiais antes de alterar os nomes das tags, o destaque ou o valor none; considera-se concluído quando os metadados resultantes correspondem à semântica acordada.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- android, kotlin
- Domínio
- mobile-dev
- Tipo de issue
- Funcionalidade
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 25/100