2017-04-06 7 views
0

存在しない私は、Xamarin Studioでメディアプラグインのコードを書いています、と私はアプリを構築しようとすると、明らかに、私は次のエラーを持っている:名「クロスメディア」は現在のコンテキストC#のエラーで

"名前は 'CrossMedia'は現在のコンテキストに存在しません"

問題の修正を見つけようとしています。以下は、コードです。

using System; 
using Relate.Model; 
using Xamarin.Forms; 

using System.IO; 

namespace Relate.Views 
{ 

    public partial class EditMemberPage : ContentPage 
    { 
     public EditMemberPage() 
     { 
      InitializeComponent(); 
     } 

     async void TakeaPhoto_OnClicked(object sender, EventArgs e) 
     { 

      if (CrossMedia.Current.IsCameraAvailable && CrossMedia.Current.IsTakePhotoSupported) 
      { 
       // Supply media options for saving our photo after it's taken. 
       var mediaOptions = new Plugin.Media.Abstractions.StoreCameraMediaOptions 
       { 
        Directory = "Receipts", 
        Name = $"{DateTime.UtcNow}.jpg" 
       }; 

       // Take a photo of the business receipt. 
       var file = await CrossMedia.Current.TakePhotoAsync(mediaOptions); 
      } 

      if (CrossMedia.Current.IsCameraAvailable && CrossMedia.Current.IsTakeVideoSupported) 
      { 
       // Supply media options for saving our video after it's taken. 
       var mediaOptions = new Plugin.Media.Abstractions.StoreCameraMediaOptions 
       { 
        Directory = "Videos", 
        Name = $"{DateTime.UtcNow}.mp4" 
       }; 

       // Record a video 
       var file = await CrossMedia.Current.TakeVideoAsync(mediaOptions); 
      } 

      // Select a photo. 
      if (CrossMedia.Current.IsPickPhotoSupported) 
      { 
       var photo = await CrossMedia.Current.PickPhotoAsync(); 
      } 

      // Select a video. 
      if (CrossMedia.Current.IsPickVideoSupported) 
      { 
       var video = await CrossMedia.Current.PickVideoAsync(); 
      } 
     } 

     async void SaveButton_OnClicked(object sender, EventArgs e) 
     { 
      var famMemberItem = (FamMember)BindingContext; 
      await App.Database.SaveFamMemberAsync(famMemberItem); 
      await Navigation.PopAsync(); 
     } 
    } 
} 
+0

'CrossMedia'が存在する名前空間を'使用していますか? ' – dcg

+1

... '使用する 'が役に立たない場合は、このパッケージをナゲットからインストールしてください。 –

+0

@GraceFengどのパッケージですか? – Stephane

答えて

0

ファイルの先頭

+0

しました。 「タイプまたは名前空間 'プラグイン」が見つかりませんでした。アセンブリ参照がありませんか? – Stephane

+0

ファイルの先頭にその行のコードを追加することができました。プロジェクトクラスライブラリにPlugin Mediaのアセンブリリファレンスを追加することで、アプリケーションを構築できました。ただし、Androidエミュレータで写真を撮ろうとするたびに、「カメラエラーです。カメラにアクセスできない」というメッセージが表示されます。 – Stephane

+0

あなたのAndroidエミュレータはカメラで設定されていますか?そうでなければ、あなたはそれにアクセスすることができなくなります。 – JimBobBennett

0

using Plugin.Media;を追加し、そのマニュアルに言ったようにそれを使用する前に、最初のプラグインを初期化してみます。

await CrossMedia.Current.Initialize(); 
関連する問題