实例介绍
Media Plugin for Xamarin and Windows是一个简单的跨平台插件,可以从共享代码中拍照、录像或从图库中选择。
平台支持
平台 | 版本 |
---|---|
Xamarin.iOS | iOS 7 |
Xamarin.Android | API 14 |
Windows 10 UWP | 10 |
.NET for iOS | iOS 10 |
.NET for Android | API 21 |
Windows App SDK (WinUI3) | 10 |
.NET for Mac Catalyst | All |
【实例截图】
【核心代码】
文件清单
└── MediaPlugin-b5e65f1d4af817fbd74574820dd6e7d4a8ce0fb8
├── art
│ ├── icon_large.png
│ └── icon.png
├── CHANGELOG.md
├── LICENSE
├── nuget
│ └── readme.txt
├── README.md
├── samples
│ ├── MediaSample
│ │ ├── MediaSample
│ │ │ ├── App.cs
│ │ │ ├── MediaPage.xaml
│ │ │ ├── MediaPage.xaml.cs
│ │ │ └── MediaSample.csproj
│ │ ├── MediaSample.Droid
│ │ │ ├── AboutResources.txt
│ │ │ ├── Assets
│ │ │ │ └── AboutAssets.txt
│ │ │ ├── MainActivity.cs
│ │ │ ├── MediaSample.Droid.csproj
│ │ │ ├── MediaSample.Droid.csproj.bak
│ │ │ ├── Properties
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ └── AssemblyInfo.cs
│ │ │ └── Resources
│ │ │ ├── drawable
│ │ │ │ └── icon.png
│ │ │ ├── drawable-hdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xhdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ └── icon.png
│ │ │ ├── Resource.Designer.cs
│ │ │ └── xml
│ │ │ └── file_paths.xml
│ │ ├── MediaSample.iOS
│ │ │ ├── AppDelegate.cs
│ │ │ ├── EmptyStoryboard1.storyboard
│ │ │ ├── Entitlements.plist
│ │ │ ├── Info.plist
│ │ │ ├── iTunesArtwork
│ │ │ ├── iTunesArtwork@2x
│ │ │ ├── Main.cs
│ │ │ ├── MediaSample.iOS.csproj
│ │ │ ├── Properties
│ │ │ │ └── AssemblyInfo.cs
│ │ │ └── Resources
│ │ │ ├── Default@2x.png
│ │ │ ├── Default-568h@2x.png
│ │ │ ├── Default.png
│ │ │ ├── Default-Portrait@2x.png
│ │ │ ├── Default-Portrait.png
│ │ │ ├── Icon-60@2x.png
│ │ │ ├── Icon-60@3x.png
│ │ │ ├── Icon-76@2x.png
│ │ │ ├── Icon-76.png
│ │ │ ├── Icon-Small@2x.png
│ │ │ ├── Icon-Small@3x.png
│ │ │ ├── Icon-Small-40@2x.png
│ │ │ ├── Icon-Small-40@3x.png
│ │ │ ├── Icon-Small-40.png
│ │ │ └── Icon-Small.png
│ │ └── MediaSample.WinPhone
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ │ ├── AlignmentGrid.png
│ │ │ ├── ApplicationIcon.png
│ │ │ └── Tiles
│ │ │ ├── FlipCycleTileLarge.png
│ │ │ ├── FlipCycleTileMedium.png
│ │ │ ├── FlipCycleTileSmall.png
│ │ │ ├── IconicTileMediumLarge.png
│ │ │ └── IconicTileSmall.png
│ │ ├── LocalizedStrings.cs
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── MediaSample.WinPhone.csproj
│ │ ├── packages.config
│ │ ├── Properties
│ │ │ ├── AppManifest.xml
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── WMAppManifest.xml
│ │ ├── README_FIRST.txt
│ │ ├── Resources
│ │ │ ├── AppResources.Designer.cs
│ │ │ └── AppResources.resx
│ │ ├── SplashScreenImage.jpg
│ │ └── Toolkit.Content
│ │ ├── ApplicationBar.Add.png
│ │ ├── ApplicationBar.Cancel.png
│ │ ├── ApplicationBar.Check.png
│ │ ├── ApplicationBar.Delete.png
│ │ └── ApplicationBar.Select.png
│ ├── MediaSample.sln
│ └── MigrationBackup
│ ├── d734e0e3
│ │ └── MediaSample.iOS
│ │ ├── MediaSample.iOS.csproj
│ │ ├── NuGetUpgradeLog.html
│ │ └── packages.config
│ └── ff880872
│ └── MediaSample.Droid
│ ├── MediaSample.Droid.csproj
│ ├── NuGetUpgradeLog.html
│ └── packages.config
├── src
│ ├── Media.Plugin
│ │ ├── Android
│ │ │ ├── IntentExtraExtensions.cs
│ │ │ ├── ManifestInfo.cs
│ │ │ ├── MediaFile.cs
│ │ │ ├── MediaImplementation.cs
│ │ │ └── MediaPickerActivity.cs
│ │ ├── iOS
│ │ │ ├── CheckMarkView.cs
│ │ │ ├── ECLImagePickerViewController.cs
│ │ │ ├── MediaImplementation.cs
│ │ │ ├── MediaPickerController.cs
│ │ │ ├── MediaPickerDelegate.cs
│ │ │ ├── MediaPickerPopoverDelegate.cs
│ │ │ ├── NSDataStream.cs
│ │ │ ├── PhotoLibraryAccess.cs
│ │ │ └── UIImageExtensions.cs
│ │ ├── Media.Plugin.csproj
│ │ ├── Shared
│ │ │ ├── CrossMedia.cs
│ │ │ ├── FeatureFlags.cs
│ │ │ ├── IMedia.cs
│ │ │ ├── Location.cs
│ │ │ ├── MediaExtensions.cs
│ │ │ ├── MediaFile.cs
│ │ │ ├── MediaFileNotFoundException.cs
│ │ │ ├── MediaPermissionException.cs
│ │ │ └── MediaStoreOptions.cs
│ │ ├── Tizen
│ │ │ └── MediaImplementation.cs
│ │ └── UWP
│ │ ├── MediaImplementation.cs
│ │ └── NewMediaImplementation.cs
│ ├── Media.Plugin.Sample
│ │ ├── Media.Plugin.Sample
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── MediaPage.xaml
│ │ │ ├── MediaPage.xaml.cs
│ │ │ └── Media.Plugin.Sample.csproj
│ │ ├── Media.Plugin.Sample.Android
│ │ │ ├── Assets
│ │ │ │ └── AboutAssets.txt
│ │ │ ├── MainActivity.cs
│ │ │ ├── Media.Plugin.Sample.Android.csproj
│ │ │ ├── Properties
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ └── AssemblyInfo.cs
│ │ │ └── Resources
│ │ │ ├── AboutResources.txt
│ │ │ ├── layout
│ │ │ │ ├── Tabbar.axml
│ │ │ │ └── Toolbar.axml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ │ ├── icon_round.xml
│ │ │ │ └── icon.xml
│ │ │ ├── mipmap-hdpi
│ │ │ │ ├── Icon.png
│ │ │ │ └── launcher_foreground.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ ├── icon.png
│ │ │ │ └── launcher_foreground.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ ├── Icon.png
│ │ │ │ └── launcher_foreground.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ ├── Icon.png
│ │ │ │ └── launcher_foreground.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ ├── Icon.png
│ │ │ │ └── launcher_foreground.png
│ │ │ ├── Resource.designer.cs
│ │ │ ├── values
│ │ │ │ ├── colors.xml
│ │ │ │ └── styles.xml
│ │ │ └── xml
│ │ │ └── file_paths.xml
│ │ ├── Media.Plugin.Sample.iOS
│ │ │ ├── AppDelegate.cs
│ │ │ ├── Assets.xcassets
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon1024.png
│ │ │ │ ├── Icon120.png
│ │ │ │ ├── Icon152.png
│ │ │ │ ├── Icon167.png
│ │ │ │ ├── Icon180.png
│ │ │ │ ├── Icon20.png
│ │ │ │ ├── Icon29.png
│ │ │ │ ├── Icon40.png
│ │ │ │ ├── Icon58.png
│ │ │ │ ├── Icon60.png
│ │ │ │ ├── Icon76.png
│ │ │ │ ├── Icon80.png
│ │ │ │ └── Icon87.png
│ │ │ ├── Entitlements.plist
│ │ │ ├── Info.plist
│ │ │ ├── Main.cs
│ │ │ ├── Media.Plugin.Sample.iOS.csproj
│ │ │ ├── Properties
│ │ │ │ └── AssemblyInfo.cs
│ │ │ └── Resources
│ │ │ ├── Default@2x.png
│ │ │ ├── Default-568h@2x.png
│ │ │ ├── Default.png
│ │ │ ├── Default-Portrait@2x.png
│ │ │ ├── Default-Portrait.png
│ │ │ └── LaunchScreen.storyboard
│ │ └── Media.Plugin.Sample.UWP
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ │ ├── LargeTile.scale-100.png
│ │ │ ├── LargeTile.scale-200.png
│ │ │ ├── LargeTile.scale-400.png
│ │ │ ├── SmallTile.scale-100.png
│ │ │ ├── SmallTile.scale-200.png
│ │ │ ├── SmallTile.scale-400.png
│ │ │ ├── SplashScreen.scale-100.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── SplashScreen.scale-400.png
│ │ │ ├── Square150x150Logo.scale-100.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ ├── Square150x150Logo.scale-400.png
│ │ │ ├── Square44x44Logo.altform-unplated_targetsize-16.png
│ │ │ ├── Square44x44Logo.altform-unplated_targetsize-256.png
│ │ │ ├── Square44x44Logo.altform-unplated_targetsize-48.png
│ │ │ ├── Square44x44Logo.scale-100.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-400.png
│ │ │ ├── Square44x44Logo.targetsize-16.png
│ │ │ ├── Square44x44Logo.targetsize-256.png
│ │ │ ├── Square44x44Logo.targetsize-48.png
│ │ │ ├── StoreLogo.backup.png
│ │ │ ├── StoreLogo.scale-100.png
│ │ │ ├── StoreLogo.scale-200.png
│ │ │ ├── StoreLogo.scale-400.png
│ │ │ ├── Wide310x150Logo.scale-100.png
│ │ │ ├── Wide310x150Logo.scale-200.png
│ │ │ └── Wide310x150Logo.scale-400.png
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Media.Plugin.Sample.UWP.csproj
│ │ ├── Package.appxmanifest
│ │ └── Properties
│ │ ├── AssemblyInfo.cs
│ │ └── Default.rd.xml
│ └── Media.sln
└── tests
├── MediaAndroidTest
│ ├── Assets
│ │ └── AboutAssets.txt
│ ├── MainActivity.cs
│ ├── MediaAndroidTest.csproj
│ ├── Properties
│ │ ├── AndroidManifest.xml
│ │ └── AssemblyInfo.cs
│ └── Resources
│ ├── AboutResources.txt
│ ├── drawable
│ │ └── Icon.png
│ ├── layout
│ │ └── Main.axml
│ ├── Resource.Designer.cs
│ ├── values
│ │ └── Strings.xml
│ └── xml
│ └── file_paths.xml
├── Media.sln
├── MediaTest.iOS
│ ├── AppDelegate.cs
│ ├── Entitlements.plist
│ ├── GettingStarted.Xamarin
│ ├── Info.plist
│ ├── Main.cs
│ ├── Main.storyboard
│ ├── MediaTest.iOS.csproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── face-template.png
│ │ └── LaunchScreen.xib
│ ├── ViewController.cs
│ └── ViewController.designer.cs
├── MediaTest.UWP
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ ├── StoreLogo.png
│ │ └── Wide310x150Logo.scale-200.png
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── MediaTest.UWP.csproj
│ ├── Package.appxmanifest
│ └── Properties
│ ├── AssemblyInfo.cs
│ └── Default.rd.xml
└── MigrationBackup
├── 2e29093f
│ └── TestsApps
│ └── MediaTest.iOS
│ ├── MediaTest.iOS.csproj
│ ├── NuGetUpgradeLog.html
│ └── packages.config
└── 8ea7a4b0
└── TestsApps
└── MediaAndroidTest
├── MediaAndroidTest.csproj
├── NuGetUpgradeLog.html
└── packages.config
81 directories, 244 files
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论