share_intent_package 1.0.21
share_intent_package: ^1.0.21 copied to clipboard
Zero-configuration Flutter share intent plugin. Receive shared content from other apps with one-command setup. Fully automated iOS ShareExtension + Android intent filters.
Changelog #
All notable changes to this project will be documented in this file.
1.0.21 - 2025-12-06 #
📝 Documentation Fix #
- Fixed Android setup command typo in README.md (
dart run setup_android) - Clarified setup instructions for both iOS and Android
- No code changes, documentation only
1.0.20 - 2025-12-06 #
🚀 Complete Sharing Solution + Professional Documentation #
Major New Features
- ✅ Outbound Sharing: Share content TO other apps (not just receive)
- 📤 Share Text:
ShareIntentPackage.shareText('Hello World!') - 📁 Share Files:
ShareIntentPackage.shareFiles(['/path/to/image.jpg']) - 🔄 Share Mixed Content: Text + files in one share action
- 🎯 Cross-Platform: Works on both iOS (UIActivityViewController) and Android (Intent.ACTION_SEND)
Implementation Details
- 🔧 iOS: Native UIActivityViewController with iPad popover support
- 🤖 Android: Intent.ACTION_SEND with FileProvider for secure file sharing
- ✅ Error Handling: Proper validation and error messages
- 📋 File Validation: Checks file existence before sharing
Documentation Overhaul
- 📚 Professional README: Clean, structured documentation with clear sections
- 🎯 Quick Start Guide: 3-step setup with copy-paste code examples
- 📋 API Reference: Complete method documentation with return types
- 🛠️ Troubleshooting: Common issues and solutions
- ✨ Visual Design: Badges, emojis, and structured tables for better readability
1.0.19 - 2025-12-06 #
📚 Documentation Update #
- ✅ Enhanced README: Updated with comprehensive usage example showing proper initialization
- 🔧 Better Error Handling: Example shows proper async initialization and error handling
- 📱 Complete API Usage: Demonstrates
hasContent,isImage,isVideo,isUrlproperties - 💡 Real-world Example: Shows proper stream subscription management and lifecycle handling
1.0.18 - 2025-12-06 #
🚀 Release Ready - Zero Configuration #
Major Enhancements
- ✅ Fully Automated Setup: Complete zero-configuration setup for both iOS and Android
- 🎯 Robust Bundle ID Detection: Enhanced algorithm selects shortest bundle ID (main app) from multiple matches
- 🔧 Bulletproof App Groups: Consistent App Group configuration across all entitlement files
- 📁 Enhanced ShareExtension: Added temp file sharing for iOS Simulator compatibility
- 🔄 Re-run Safe: Setup commands can be run multiple times without conflicts
Cross-Platform Testing
- ✅ iOS ShareExtension: Automatic Xcode project configuration, no manual steps
- ✅ Android Intent Filters: Automatic AndroidManifest configuration
- ✅ Multiple Project Types: Tested across different bundle ID patterns and naming conventions
- ✅ Real Share Data: End-to-end testing confirms actual share functionality works
Developer Experience
- 🎯 One Command Setup:
setup_ios_cleanandsetup_androidexecutables work globally - 📋 Clear Logging: Detailed setup progress and bundle ID detection process
- 🛠️ Error Handling: Graceful handling of edge cases and project variations
- 📚 Clean Documentation: Concise README emphasizing zero manual configuration
1.0.17 - 2025-12-06 #
Enhanced #
- 🚀 Cross-Container Data Sharing: Enhanced data sharing mechanism to work reliably across iOS container isolation
- 📁 System Temp Directory: Updated to use system-wide
/tmp/directory for improved cross-container file sharing - 🔧 iOS Simulator Compatibility: Fixed App Groups issues in iOS Simulator with fallback file sharing mechanism
- ✅ Fully Tested: Complete end-to-end testing validates automated setup and sharing functionality
- 📚 Documentation Update: Updated README to highlight zero-configuration automated setup
1.0.13 - 2025-12-05 #
Fixed #
- 🐛 Entitlements Bug: Fixed ShareExtension entitlements creation to use passed bundle ID parameter instead of redeclaring
- 🔧 App Groups Configuration: Ensures ShareExtension uses correct App Groups with actual bundle ID
- 📱 Share Menu Fix: Complete fix for ShareExtension not appearing in iOS share menu
1.0.12 - 2025-12-04 #
Fixed #
- 🐛 Bundle ID Detection: Fixed bundle ID detection to read actual bundle ID from Xcode project instead of placeholder
- 🔧 App Groups: Ensures App Groups use correct bundle ID for both main app and ShareExtension
- 📱 Share Menu: Fixed issue where ShareExtension wouldn't appear in iOS share menu due to bundle ID mismatch
1.0.11 - 2025-12-04 #
Changed #
- 🚀 Complete Rewrite: Embedded all setup logic directly into Dart script eliminating shell script dependency
- ⚡ Zero Dependencies: Pure Dart implementation works with pub executable system without external scripts
- 🔧 Full Automation: Complete Xcode project modification including targets, build phases, file references
- 📱 Ready to Use: ShareExtension creation, configuration, and embedding all in single command
[1.0.11] - 2025-12-04 #
Fixed #
- 🎯 Complete Rewrite: Self-contained Dart executable with all setup logic embedded
- 📱 No Dependencies: Removes need for shell script execution, works directly via dart run
- 🔧 Pub.dev Ready: Executable works correctly when installed from pub.dev package
1.0.10 - 2025-12-04 #
Fixed #
- 🔧 Dart Wrapper: Improved script path debugging for better error reporting
- 📍 Path Resolution: Enhanced executable wrapper with directory listing for troubleshooting
1.0.9 - 2025-12-04 #
Fixed #
- 🔧 Executable Path: Fixed pubspec.yaml executable reference after removing duplicate script
- 📱 Script Execution: Ensures correct script runs without .dart extension lookup errors
- ✅ File Permissions: Made setup script properly executable
- 🛠️ Package Structure: Cleaned up duplicate scripts to avoid confusion
1.0.8 - 2025-12-04 #
Fixed #
- 🔧 Script Caching: Fixed executable caching issue that was running old script version
- 📱 Correct Script: Ensures the fully automatic script runs instead of manual steps version
- ✅ Cache Clearing: Forces rebuild of executable to use latest script version
- 🛠️ Execution Path: Fixed script execution path to use correct automation script
1.0.7 - 2025-12-04 #
Fixed #
- 🔧 Script Execution: Fixed published version to properly run automatic Xcode project modification
- 📱 Error Handling: Improved error detection with stack traces for debugging
- ✅ Complete Automation: Ensures ShareExtension target is actually created without manual steps
- 🛠️ Version Sync: Fixed mismatch between repository and published versions
1.0.6 - 2025-12-04 #
Fixed #
- 🔧 Xcode Target Creation: Fixed ShareExtension target not being properly added to Xcode project
- 📄 File References: Fixed file references being added correctly to project.pbxproj
- 🛠️ Error Handling: Added better error detection and logging for Xcode project modification
- ✅ Target Detection: Improved ShareExtension target detection logic
- 📱 Complete Automation: Fixed the "Unable to find target ShareExtension" pod install error
1.0.5 - 2025-12-04 #
Fixed #
- 🔧 App Groups Capability: Properly configures App Groups in main app entitlements file
- 📱 Resources Build Phase: Adds missing Resources build phase to ShareExtension target
- 🛠️ Complete Build Phases: Ensures both Sources and Resources phases are configured
- ✅ Main App Entitlements: Auto-creates/updates Runner.entitlements with App Groups
- 🎯 Proper Embedding: Complete ShareExtension embedding with all required configurations
1.0.4 - 2025-12-04 #
Enhanced #
- 🎯 Complete iOS Automation: Enhanced automatic Xcode project modification with proper ShareExtension embedding
- 🔧 Embed App Extensions: Automatically configures embedding phases for ShareExtension in main app target
- 📱 App Groups Configuration: Full automatic setup of App Groups capability and entitlements
- 🛠️ Target Dependencies: Proper dependency management between main app and ShareExtension targets
- ✅ Build Phase Management: Complete source, resource, and embedding build phases configuration
- 🚀 Zero Manual Steps: Comprehensive automation requiring no manual Xcode configuration
1.0.3 - 2025-12-04 #
Added #
- 🚀 FULLY AUTOMATIC iOS Setup: Complete ShareExtension configuration without any manual Xcode steps
- 🔧 Automatic Xcode Project Modification: Script now automatically adds ShareExtension target to Xcode project
- 📱 Complete Build Configuration: Automatically configures build settings, entitlements, and dependencies
- 🎯 Zero Manual Configuration: Users just run the command - everything is configured automatically
Enhanced #
- 🛠️ Smart Xcode Project Parsing: Intelligently modifies project.pbxproj with proper UUIDs and references
- 📋 Automatic Podfile Update: Adds ShareExtension target to Podfile automatically
- 🔐 Complete Entitlements Setup: App Groups and all required entitlements configured automatically
- 📱 Bundle ID Detection: Automatically detects and uses project's bundle ID for all configurations
Commands Now Available #
dart run share_intent_package:setup_ios_clean- FULLY AUTOMATIC iOS setup (no manual steps!)dart run share_intent_package:setup_android- Android intent filter setup
1.0.2 - 2025-12-04 #
Fixed #
- 📝 Corrected setup commands: Fixed installation commands to use
dart runinstead ofdart pub global run - 🔧 Flutter compatibility: Resolved Flutter package global activation limitation
- 📚 Updated documentation: All README examples now use the correct
dart run package:executablesyntax
Commands Now Available #
dart run share_intent_package:setup_ios_clean- iOS ShareExtension setupdart run share_intent_package:setup_android- Android intent filter setup
1.0.1 - 2025-12-04 #
Fixed #
- 🔧 Accessible setup scripts: Made setup scripts available as global executables
- 📚 Accurate documentation: Fixed misleading Android "zero configuration" claims
- 🤖 Automated Android setup: Added
setup_androidexecutable for intent filter configuration - 🛠️ Improved iOS setup: Enhanced
setup_ios_cleanexecutable with better error handling - 📋 Clear installation instructions: Updated README with correct global command usage
Commands Available (Fixed) #
dart run share_intent_package:setup_ios_clean- iOS ShareExtension setup (was incorrectly documented as global command)dart run share_intent_package:setup_android- Android intent filter setup (was incorrectly documented as global command)
1.0.0 - 2025-12-04 #
Added #
- 🎯 Complete share intent functionality for Flutter
- 📱 Cross-platform support (iOS 11+ and Android API 16+)
- 🚀 Universal content handling: text, URLs, images, videos, documents, multiple files
- ⚡ Real-time sharing: Receive content while app is running
- 🔧 Automated iOS setup:
setup_ios_ultimate_simplecommand with minimal manual steps - 📋 Simple Android setup: Intent filter configuration
- 🔍 Setup verification: Built-in
verify_setupcommand
Core API #
ShareIntentPackage.instance.init(): Initialize the pluginShareIntentPackage.instance.getInitialShare(): Get content when app launches from shareShareIntentPackage.instance.getShareStream(): Stream of shared content while app is runningShareIntentPackage.instance.reset(): Clear cached shared dataShareDataclass: Unified data structure for all shared content types
Platform Implementation #
- iOS: Swift-based ShareExtension with App Groups integration
- Android: Kotlin plugin with activity awareness and intent handling
- Flutter: Dart API with method channels and event channels
Content Support #
- Text: Plain text, URLs, web links
- Images: JPEG, PNG, GIF, WebP from camera, gallery, or other apps
- Videos: MP4, MOV, AVI from recordings or downloads
- Documents: PDF, Office files, ZIP archives, JSON, XML
- Multiple files: Batch sharing of mixed content types
- MIME types: Automatic detection and classification
0.0.1 Initial Development #
Features #
- ✅ Complete Android share intent handling (text, images, videos, files)
- ✅ iOS share extension support with automatic configuration
- ✅ Support for single and multiple file sharing
- ✅ Automatic MIME type detection and content URI handling
- ✅ Stream-based real-time sharing while app is running
- ✅ Initial share detection when app is launched from share intent
- ✅ Comprehensive file type support (images, videos, documents, etc.)
- ✅ Simple API with minimal setup required
- ✅ Automatic file copying and path management
- ✅ Complete example app with all features demonstrated