# User Story
As a user I want to get remote CardDAV contacts synced into my local Android device contacts

# Similar apps
These app include the required functionalities, but have massively more features (like 2-way-sync, calendar sync,…):
    – PeopleSyncClient: (link removed)
    – DAVx: (link removed)

Forking of these projects is not allowed (re-using libraries is allowed).

# Technical Requirements
## Tech Stack
    – Android (equal or greater than 12)
    – Flutter

    – Android Enterprise
    – Microsoft 365 Intune (current version)

    – Our managed CardDAV server (radicale 3.1.8)

    – Responsive UI, optimized for phone screen usage

## Managed config
As an Microsoft Intune admin I can distribute these parameters to all assigned users/devices:
    – CardDAV credentials:
        – CardDAV Base URL (like (link removed))
        – CardDAV username
        – CardDAV password
    – Sync parameters:
        – Sync interval (in minutes)    
        – Contact label for synced contacts

## UI
As an Android app user I want to be able to trigger the contact sync immediately by button click.

As an Android app user I want to get the contacts synced automatically and regularly regarding the managed interval setting.

As an Android app user I want to see a sync log history for the last 7 days with this information:
    – Sync start datetime
    – Sync start type (manually or automatically)
    – Contact action (created, updated, deleted)
    – Sync finished datetime

As an Android app user I enjoy the same corporate design as defined in our design system.

## Sync
The sync mechanism of the Android app shall work this way:
    – One way (remote CardDAV to local Android device contacts)
    – CRUD:
        – Create new contact
        – Update existing contact (if synced before / identify by email or first name + last name)
        – Remove target contact (if not existing in source anymore)
    – User is not able to create, update, delete synced contacts
    – Synced contacts shall be stored in a separate contacts account on Android device:
    

# Receivables
    – Test accounts:
        – Microsoft 365 Intune
        – Managed CardDAV server account

# Deliverables
    – Working live demo
    – Source code
    – Signed document to handover all rights
    – Support to get app published into Google Play Store

# Milestones
    3 days:
        – Proof of concept: The app shows the config parameters managed by Intune (see ## Managed config)

    +3 days:
        – Contact sync works (see ## Sync)

    +3 days:
        – Pretty UI (see ## UI)

    +3 days:
        – Everything has been delivered (see # Deliverables)

Budget: $1,500

Posted On: March 20, 2024 09:24 UTC
Category: Mobile App Development
Skills:Flutter, Smartphone, Android, Microsoft Intune, Android App Development

Country: Germany

click to apply

Powered by WPeMatico