搜索插件、代码仓与 APP 分类

插件详情v0.11.0

device_calendar_plus_android

Android implementation of the device_calendar_plus plugin.

Android
近 30 天下载
3.6万
喜欢数
1
Pub 分数
150

安装插件

flutter pub add device_calendar_plus_android

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

The device_calendar_plus_android package provides an Android-specific implementation for the device_calendar_plus plugin, enabling Flutter applications to access and manage device calendar data on Android devices. It allows users to create, read, update, and delete calendar events with native-level integration, ensuring reliable performance and compatibility with Android's calendar system. The package is designed to work seamlessly within the broader device_calendar_plus ecosystem, offering a consistent API across platforms while focusing on Android-specific features and optimizations.

适合场景

  • Accessing device calendar events
  • Creating and managing calendar entries
  • Synchronizing events with native calendar
  • Integrating calendar functionality in productivity apps
  • Building event-driven applications

主要特点

  • Native Android calendar integration
  • Support for CRUD operations on events
  • Consistent API with cross-platform plugin
  • Optimized performance on Android
  • Secure permission handling

适合对象

  • Android-only calendar apps
  • Event management tools
  • Productivity and scheduling apps
  • Apps requiring native calendar access
  • Developers using device_calendar_plus

使用建议

  • Requires Android-specific permissions
  • Limited to Android platform
  • Dependent on device_calendar_plus core
  • May require runtime permission requests
  • Not compatible with iOS or other platforms

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

device_calendar_plus

A modern, federated Flutter plugin for reading and writing device calendar events on Android and iOS.

Note: This is the developer/contributor documentation. For plugin usage and API documentation, see the device_calendar_plus package README.

🏗️ Architecture

This is a federated plugin following Flutter's federated plugin architecture:

device_calendar_plus/
├── packages/
│   ├── device_calendar_plus/              # Main package (public API)
│   ├── device_calendar_plus_platform_interface/  # Platform interface
│   ├── device_calendar_plus_android/      # Android implementation
│   └── device_calendar_plus_ios/          # iOS implementation
└── example/                                # Example app & integration tests
Package Structure
  • device_calendar_plus: The main package that app developers depend on. Contains the public Dart API and exports platform interface types.

  • device_calendar_plus_platform_interface: Defines the interface that platform implementations must follow. Contains method signatures and data contracts.

  • device_calendar_plus_android: Android-specific implementation using Kotlin and the Android Calendar Provider API.

  • device_calendar_plus_ios: iOS-specific implementation using Swift and EventKit.

  • example/: Example app demonstrating plugin usage, also contains integration tests.

🚀 Getting Started

Prerequisites
  • Flutter SDK (latest stable)
  • For iOS development: Xcode 15+
  • For Android development: Android Studio with Android SDK 24+

Optional (but recommended):

  • Very Good CLI: dart pub global activate very_good_cli - Makes running tests faster with optimized configuration
Setup
  1. Clone the repository:
git clone https://github.com/yourusername/device_calendar_plus.git
cd device_calendar_plus
  1. Install dependencies:
flutter pub get

This project uses Dart workspaces, so a single flutter pub get at the root will install dependencies for all packages.

🧪 Testing

Unit Tests

Run all unit tests across all packages using Very Good CLI (recommended):

very_good test --recursive

This will run tests in all /packages/*/test/ directories with optimized configuration.

Integration Tests

Integration tests are located in example/integration_test/ and test the plugin against real platform APIs.

Running on a Device/Emulator

From the example directory:

cd example
./run_integration_tests.sh <device-id>

Get the device ID from:

flutter devices
Platform-Specific Notes

iOS:

  • Requires a simulator or physical device
  • Calendar permissions will be requested during tests
  • Tests create temporary calendars that are cleaned up

Android:

  • Requires an emulator or physical device with API 24+
  • Calendar permissions will be requested during tests
  • Tests create temporary calendars that are cleaned up

🤝 Contributing

This project is closed to outside pull requests. Bug reports and feature requests are welcome - please open an issue. See CONTRIBUTING.md for the design philosophy and conventions.

📄 License

MIT © 2025 Bullet

See LICENSE for details.


Maintained by Bullet — a cross-platform task + notes + calendar app built with Flutter.

所属分类

依赖

源码仓库

使用此插件的项目

暂无相关数据。

所在榜单