HAVS Protect på hanterade telefoner: underlag för IT-godkännande
Fakta för en IT- eller säkerhetsavdelning som ska avgöra om appen HAVS Protect får användas på hanterade iOS- och Androidtelefoner. Uppgifterna kommer från appens källkod (version 2.12.0) och backendens konfiguration, inte från marknadsföring.
Uppdaterad 22 oktober 2026
Ingen certifiering
HAVS Protect och Copyl-plattformen har inte bedömts eller godkänts enligt säkerhetsskyddslagen (2018:585) eller något annat system för säkerhetsklassning, och vi påstår inte att de är det. Det här underlaget ger er fakta för er egen bedömning.
Indikator, inte mätning. En mobiltelefon är ingen kalibrerad ljudnivåmätare. Använd den för att se när du behöver hörselskydd och när en riktig mätning behövs.
Ljudet bearbetas bara i telefonen. Inget ljud spelas in, sparas eller skickas. Endast ljudnivåer (dB(A), tid, längd, verktyg och projekt) lämnar telefonen, och bara när du själv loggar ett arbetspass. Din arbetsgivare ser dem på samma sätt som dina vibrationsvärden.
Appar och identiteter
| App | HAVS Protect, utgiven av We Protect AB |
|---|---|
| iOS bundle id | io.havs (tillägg io.havs.HavsGlanceWidgetExtension och io.havs.HavsLiveActivityExtension) |
| App Store | https://apps.apple.com/se/app/havs-protect/id6469731381 |
| Lägsta iOS-version | iOS 16.1 |
| Android application id | io.havs |
| Google Play | https://play.google.com/store/apps/details?id=io.havs |
| Lägsta Android-version | Android 8.0 (API 26), mål-API 36 |
| Backend | api.copyl.com (Copyl-plattformen, Microsoft Azure, West Europe) |
Behörigheter per plattform
Varje behörighet efterfrågas först när funktionen som behöver den används. Arbetaren kan neka vilken som helst; då fungerar inte just den funktionen, resten av appen gör det.
Android
| Behörighet | Efterfrågas när | Varför |
|---|---|---|
| BLUETOOTH_SCAN (neverForLocation), BLUETOOTH_CONNECT | En HAVS Protect-sensor paras ihop | Ansluter till vibrationssensorn via Bluetooth. Sökningen är deklarerad som att den aldrig används för att ta fram telefonens position. |
| BLUETOOTH, BLUETOOTH_ADMIN, ACCESS_FINE_LOCATION (bara Android 11 och äldre), ACCESS_COARSE_LOCATION (bara Android 9 och äldre) | En sensor paras ihop på äldre Android | Äldre Android kräver dessa för all Bluetooth-sökning. De är inte deklarerade för Android 12 och senare. |
| RECORD_AUDIO | Bullerskärmen öppnas | Bullerindikatorn. Efterfrågas aldrig när indikatorn är avstängd av arbetsgivaren eller via MDM. |
| CAMERA | Ett foto bifogas till en anteckning | Foto på en anteckning. |
| POST_NOTIFICATIONS | Första start | Exponeringslarm och notisen som visas medan ett arbetspass pågår. |
| FOREGROUND_SERVICE, FOREGROUND_SERVICE_CONNECTED_DEVICE, FOREGROUND_SERVICE_DATA_SYNC | Ett arbetspass startas | Håller sensoranslutningen och uppladdningen igång med skärmen avstängd. En bestående notis visas under tiden. |
| REQUEST_IGNORE_BATTERY_OPTIMIZATIONS | Ett arbetspass startas | Hindrar batterioptimering från att avbryta ett pågående pass. |
| SCHEDULE_EXACT_ALARM | Exponeringslarm ställs in | Exponeringslarm går i rätt tid. |
Detta är appens eget manifest. Butiksversionen innehåller också behörigheter på normal nivå som bibliotek lägger till, till exempel INTERNET; Google Play visar hela listan. NFC används för att läsa verktygsetiketter där telefonen har det (bluetooth_le är en obligatorisk funktion, NFC är det inte).
iOS
| Behörighet | Efterfrågas när | Varför |
|---|---|---|
| Bluetooth (NSBluetoothAlwaysUsageDescription) | En HAVS Protect-sensor paras ihop | Ansluter till vibrationssensorn och håller anslutningen i bakgrunden. |
| Plats, alltid (NSLocationAlwaysUsageDescription) | Efterfrågas inte av appen (bara deklarerad) | Deklarerad i Info.plist för Bluetooth i bakgrunden; appen begär ingen plats på iOS och skickar ingen position till backend. |
| Mikrofon (NSMicrophoneUsageDescription) | Bullerskärmen öppnas | Bullerindikatorn. Efterfrågas aldrig när indikatorn är avstängd av arbetsgivaren eller via MDM. |
| Kamera (NSCameraUsageDescription) | Ett foto bifogas till en anteckning | Foto på en anteckning. |
| NFC (NFCReaderUsageDescription) | En verktygsetikett skannas | Läser verktygets identitet från etiketten. |
| Notiser | Första start | Exponeringslarm och pushnotiser. |
Deklarerade bakgrundslägen: bluetooth-central, bluetooth-peripheral, remote-notification, processing, fetch.
Dataflöde och region
Så hanteras ljudet i bullerindikatorn:
- Mikrofonströmmen bearbetas i minnet till en A-vägd nivå. Inget ljud skrivs till lagring och inget ljud skickas någonstans.
- Ingenting skickas medan arbetaren bara tittar på nivån på skärmen. Nivåer lämnar telefonen först när arbetaren loggar ett pass.
- Ett loggat pass skickas över HTTPS till api.copyl.com (Azure API Management) och lagras av tjänsten CopylAPI_Strategy i Azure SQL. Allt detta körs i Microsoft Azure, region West Europe (Nederländerna).
- Om telefonen saknar uppkoppling väntar det loggade passet i telefonen och skickas när den är uppkopplad igen.
Vad ett loggat bullerpass innehåller
- Starttid och längd
- Indikerad LAeq och LAmax i dB(A) samt sekunder över 80 och 85 dB(A)
- Telefonmodellen, korrektionen som används för modellen och om modellen saknar kalibrering
- Valfritt verktyget och projektet (arbetsmomentet) som arbetaren valt
- Arbetarens användar-id och arbetsgivarens företags-id, från inloggningen
Andra tjänster som appen använder
- Inloggning och konto: Copyl-plattformen (cUsersAPI, Azure West Europe). Valfri inloggning med Apple eller Google.
- Google Firebase: Google-inloggning, pushnotiser (Firebase Cloud Messaging), användningsstatistik och kraschrapporter (Firebase Analytics, Crashlytics). Inget ljud och inga ljudnivåer skickas till Firebase.
- Vibrationsdata (HAV) från sensorn går till samma tjänst CopylAPI_Strategy som buller.
Lagringstid
- Ljud: inget sparas, någonstans.
- Nivåer som visas direkt på skärmen sparas inte.
- Loggade pass sparas så länge arbetsgivarens Connected Worker-konto är aktivt, precis som vibrationsdata. Det finns ingen automatisk gallringstid i dag.
- Arbetarens eget pass kan raderas; det räknas då inte med i någon vy eller uppskattning. Arbetsgivaren kan be We Protect radera en arbetares data (kontakt nedan).
Vem hos arbetsgivaren ser vad
- Arbetaren ser sina egna nivåer och pass i appen.
- I arbetsgivarens Copyl-företag visar Connected Worker en arbetares bullerpass och dagsuppskattning bredvid vibrationsexponeringen, med exakt samma åtkomst som vibrationsdata. Ingen ny åtkomstväg har lagts till för buller.
- En annan organisation (till exempel en huvudentreprenör) ser dem bara genom en godkänd begäran om datadelning, på samma sätt som vibrationsdata.
- Ingen, inte heller We Protect, kan lyssna på något: det finns inget ljud att lyssna på.
Avstängning och nycklar för hanterad konfiguration
Bullerindikatorn kan stängas av för hela organisationen eller per telefon. När den är avstängd finns varken bullerskärmen eller kortet på startsidan, och appen ber aldrig om mikrofonen.
- Hanterad appkonfiguration via MDM på telefonen gäller först, om den är satt.
- Annars gäller organisationens inställning: Copyl › Inställningar › Connected Worker › Bullerindikator (bara företagsadministratörer). Förvalt på.
- Appen läser båda vid inloggning och vid appstart.
| Plattform | Nyckel | Typ | Värden |
|---|---|---|---|
| Android (hanterade konfigurationer, app_restrictions.xml) | noiseIndicatorEnabled | bool | false = av, true = på (förval) |
| iOS (com.apple.configuration.managed) | noiseIndicatorEnabled | Boolean | false = av, true = på (förval). Strängarna "false"/"true" och 0/1 godtas också. |
Exempel: appkonfiguration för iOS (Intune, Workspace ONE)
<dict>
<key>noiseIndicatorEnabled</key>
<false/>
</dict>- Android: nyckeln syns i EMM-konsolen under appens hanterade konfiguration som "Bullerindikator" när versionen med den är publicerad.
- Tar ni bort nyckeln gäller organisationens inställning igen.
Kontakt
We Protect AB. Frågor från IT- och säkerhetsavdelningar: [email protected]. Fråga oss om allt som underlaget inte svarar på, till exempel personuppgiftsbiträdesavtal eller källan till en uppgift här.