2016-09-27 14 views
1

属性、および1つのチュートリアルでは、私は以下のコードを見て:アセンブリの依存関係は、私はXamarinを勉強しています

using System; 

using Android.App; 
using Android.Content.PM; 
using Android.Runtime; 
using Android.Views; 
using Android.Widget; 
using Android.OS; 
using System.IO; 
using Xamarin.Forms; 

[assembly: Dependency(typeof(Notes.Droid.DadosEspecificos))] 

namespace Notes.Droid 
{ 
    [Activity(Label = "Notes", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity 
    { 
     protected override void OnCreate(Bundle bundle) 
     { 
      base.OnCreate(bundle); 

      global::Xamarin.Forms.Forms.Init(this, bundle); 
      LoadApplication(new App()); 
     } 
    } 

    public class DadosEspecificos : IDadosEspecificos 
    { 
     public string CaminhoDB(string NomeDB) 
     { 
      return Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), NomeDB); 
     } 
    } 
} 

プロジェクトは、クロスプラットフォームブランクのApp(Xamarin.Formsポータブル)です。

私は下の行の意味が何であるかを知っていると思い

[アセンブリ:依存関係(typeof演算(Notes.Droid.DadosEspecificos))]

なぜそれが必要なのか?

ありがとうございました。

+1

そのインスタンスを作成するための共有コード。詳細については、次の記事を参照してください。https://developer.xamarin.com/guides/xamarin-forms/dependency-service/ – SushiHangover

答えて

0

Xamarin.Formsは、プラットフォーム固有のプロジェクトで動作を定義することができます。依存関係サービスは、適切なプラットフォーム実装を見つけ、共有コードがネイティブ機能にアクセスできるようにします。

は、ここで参照 `DependencyService.Getが () 'で使用することができることを意味する` IDadosEspecificos`インタフェースの実装として `DadosEspecificos`クラスを登録している

https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/dependency-service/

+0

Android携帯のGPS APIにアクセスするには、依存サービス –

+0

を使用してアクセスできます。コメント、今や答え。 – Badiparmagi