2017-09-19 7 views
1

デフォルトのFacebookログインボタンをViewModelにバインドすることはできますか?Xamarin Android MvvmCrossバインドフェイスブックログインボタン

私のログインボタン:私は私のFBボタンを見つけ、クリックアクションを待つ必要が私の見解でログインボタンをクリックすると、今のところ

<com.facebook.login.widget.LoginButton 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/loginButton1" 
/> 

。このビジネスロジックをそこで行うためにビューモデルにバインドすることは可能ですか?ここ

UPDATE 1

一人の男は、そう私はバインドを書く方法を知っている...どのようにバインドするために私を示した...私はFacebookのコールバックに対処するためのviewmodelのコード例を必要とする具体的には

答えて

1

はい、

app:MvxBind="Click FacebookLoginCommand" 

UPDATE

A Facebookとのログインを担当するすべてのコードをPortableプロジェクトに移行するためには、Facebook SDKは特定のプラットフォーム(この場合はAndroid)を対象に設計されているため、そのため、おそらくあなたは、Androidプロジェクトにログインする部分を残し、ViewModelにでメソッドを作成することができます。

OnFacebookLogginSuccess(string accessToken); 
OnFacebookLogginError(string message); 

をしてGraphApiは、あなたがそれを照会することができます呼び出す単純なHTTP経由でアクセスすることができますので、

ViewModel.OnUserIsLoggedToFacebook(result.AccessToken.Token) 

ViewModel.OnFacebookLoginError(exception.LocalizedMessage) 

そして、Facebookのコールバックでそれらを呼び出しますポータブルプロジェクトで。

+0

facebookコールバックを処理するために私のビューモデルが継承すべきインターフェースを教えてください。あなたが私に 'FacebookLoginCommandHandler()'コード –

+0

Okeyを表示することができればそれは本当にいいですが、達成したいことを教えてください。 facebook SDKを使用してログインしたい場合、アンドロイドに滞在する必要がある部分があるためです。だから私はあなたを助けることができるようにあなたの計画をより具体的に記述してください。 –

+0

私は必要なシナリオは非常に単純です...ユーザーは、初めてアプリケーションを開きます。それから彼はFacebookのログインボタンを見て、それをクリックします。彼は彼の信任状を入力する。そして、facebookログイン機構が働き、 'onSuccess'が私に' LoginResult'オブジェクトを返します。このオブジェクトで、私は 'GraphRequest'を作成してユーザの電子メールを取得する必要があります。そしてユーザーが彼のFacebookに電子メールを持っていない場合、私は電子メールを満たすために新しいフォームを開く必要があります。私が得たすべての情報の後、私はデータベースにユーザーを保存する必要があります。 このタスクのほとんどはViewModelでなければならないと思っています。このタスクはUIタスクではありませんが、ビジネスロジックのようなものです –

関連する問題