2016-10-24 8 views
0

Facebook Notification .aarライブラリのバインドを作成しようとしています。Xamarin - .aar Javaバインディング - '[メソッド名]'という名前は現在のコンテキストに存在しません

私はエラーコンパイル取得していますしかし:

enter image description here

重大度コード説明プロジェクトファイルの行の抑制状態 エラーCS0103名は「CreateAsset」は現在 コンテキストFBNotifications Cには存在しません:\ユーザー\ ja​​kub \ documents \ visualスタジオ 2015 \ Projects \ FBNotifications \ FBNotifications \ obj \ Release \ generated \ src \ Com.Facebook.Notifications.Internal.Asset.Handlers.BitmapAssetHandler.cs 344アクティブ

重大度コード説明プロジェクトファイルの行の抑制状態名 'CREATEVIEW' は現在 コンテキストFBNotifications Cには存在しません エラーCS0103:\ Users \ユーザーヤクブ\文書は 2015プロジェクト\ FBNotifications \ FBNotifications \ OBJ \リリース\ Visual Studioのを\します\生成\ SRC \ Com.Facebook.Notifications.Internal.Asset.Handlers.BitmapAssetHandler.cs 350アクティブ

問題を抱えている方法は次のとおりです。

enter image description here

// This method is explicitly implemented as a member of an instantiated Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler 
     global::Java.Lang.Object global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler.CreateAsset (global::Org.Json.JSONObject p0, global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetCache p1) 
     { 
      return global::Java.Interop.JavaObjectExtensions.JavaCast<Java.Lang.Object>(CreateAsset (p0, p1)); 
     } 

     // This method is explicitly implemented as a member of an instantiated Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler 
     global::Android.Views.View global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler.CreateView (global::Java.Lang.Object p0, global::Android.Content.Context p1) 
     { 
      return CreateView (global::Java.Interop.JavaObjectExtensions.JavaCast<global::Com.Facebook.Notifications.Internal.Asset.Handlers.BitmapAssetHandler.BitmapAsset>(p0), p1); 
     } 

私は、コードの問題は、このように固定することができる見ることができます。

// This method is explicitly implemented as a member of an instantiated Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler 
     global::Java.Lang.Object global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler.CreateAsset (global::Org.Json.JSONObject p0, global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetCache p1) 
     { 
      return global::Java.Interop.JavaObjectExtensions.JavaCast<Java.Lang.Object>(((AssetManager.IAssetHandler)this).CreateAsset (p0, p1)); 
     } 

    // This method is explicitly implemented as a member of an instantiated Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler 
    global::Android.Views.View global::Com.Facebook.Notifications.Internal.Asset.AssetManager.IAssetHandler.CreateView (global::Java.Lang.Object p0, global::Android.Content.Context p1) 
    { 
     return ((AssetManager.IAssetHandler)this).CreateView (global::Java.Interop.JavaObjectExtensions.JavaCast<global::Com.Facebook.Notifications.Internal.Asset.Handlers.BitmapAssetHandler.BitmapAsset>(p0), p1); 
    } 

私はBitmapAssetHandlerのための部分的なクラスを作成し、のmetadata.xmlでそれを除去しながらそこに訂正方法を置くことは、それを修正するだろうと思いましたそれはそれのようには見えません。

<remove-node path="/api/package[@name='com.facebook.notifications.internal.asset.handlers']/class[@name='BitmapAssetHandler']/method[@name='CreateAsset']" /> 
    <remove-node path="/api/package[@name='com.facebook.notifications.internal.asset.handlers']/class[@name='BitmapAssetHandler']/method[@name='CreateView']" /> 

私は、私は方法が二回存在するというエラーを取得することを行う場合(何とかそれらが生成されたコードから削除されません)。私はそれがあまりにも複雑ではないことを願っています。私のアプローチは正しいのですか?あるいは、それを働かせるために必要なことがありますか?

答えて

0

除去ノード要素がトリックします。

<remove-node path="/api/package[@name='com.facebook.notifications.internal.asset.handlers']/class[@name='BitmapAssetHandler']" /> 
関連する問題