Giter Site home page Giter Site logo

opentasks-provider's Introduction

Deprecated Repository

Note: OpenTasks Provider is now a module inside the OpenTasks repository. This separate repoistory is no longer maintained.

opentasks-provider

An open source task provider for Android

This is a task provider for Android. It supports multiple accounts and multiple lists per account. It aims to fully support RFC 5545 VTODO as well as other task models.

Requirements

Usage

This is a library project to be bundled with a task app. To use it include the following into your AndroidManifest

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="your.package" android:versionCode="1" android:versionName="1.0" >
    ...

    <permission
        android:name="your.package.permission.READ_TASKS"
        android:description="@string/permission_description_read_tasks"
        android:label="@string/permission_read_tasks"
        android:permissionGroup="android.permission-group.PERSONAL_INFO"
        android:protectionLevel="dangerous" >
    </permission>
    <permission
        android:name="your.package.permission.WRITE_TASKS"
        android:description="@string/permission_description_write_tasks"
        android:label="@string/permission_write_tasks"
        android:permissionGroup="android.permission-group.PERSONAL_INFO"
        android:protectionLevel="dangerous" >
    </permission>

    <uses-permission android:name="your.package.permission.READ_TASKS" />
    <uses-permission android:name="your.package.permission.WRITE_TASKS" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <provider
            android:name="org.dmfs.provider.tasks.TaskProvider"
            android:authorities="your.package.tasks"
            android:label="@string/provider_label"
            android:multiprocess="false"
            android:readPermission="your.package.permission.READ_TASKS"
            android:writePermission="your.packagel.permission.WRITE_TASKS" />

        <!-- This receives alarms that are fired when a task starts. It fires the actual due notification broadcast. -->
        <receiver android:name="org.dmfs.provider.tasks.broadcast.StartAlarmBroadcastHandler" >
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
            <intent-filter>
                <action android:name="org.dmfs.android.tasks.TASK_START" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.QUICKBOOT_POWERON" />
            </intent-filter>
        </receiver>

        <!-- This receives alarms that are fired when a task is due. It fires the actual due notification broadcast. -->
        <receiver android:name="org.dmfs.provider.tasks.broadcast.DueAlarmBroadcastHandler" >
            <intent-filter>
                <action android:name="org.dmfs.android.tasks.TASK_DUE" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.QUICKBOOT_POWERON" />
            </intent-filter>
        </receiver>

        <!-- Receiver that updates notifications when the time on the device has been changed -->
        <receiver
            android:name="org.dmfs.provider.tasks.broadcast.TimeChangeBroadcastReceiver"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.TIME_SET" />
            </intent-filter>
        </receiver>
    </application>
</manifest>

TODO:

  • add support for recurrence
  • add support for extended attributes like alarms, attendees and categories

License

Copyright (c) Marten Gajda 2015, licensed under Apache2.

opentasks-provider's People

Contributors

dmfs avatar arjunrn avatar ssiegel avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.