Janrain Jump.IOS ライブラリと Xamarin の統合に成功した人はいますか?
これまでのところ、GitHub から Jump.IOS をダウンロードして、XCode 静的ライブラリを作成し、JREngageフォルダーからすべてのものを追加してみました (今のところ、サインインが機能していれば満足です。サインアップだけで機能します)。当面の間、ウェブサイトを通じて)。Jump.IOS プロジェクト (JRConnectionManager、SFHFKeychainUtils、および JSONKit) の他の場所からのいくつかのビットをいじって含め、いくつかの必要なフレームワークを含めた後、XCode を.a
ファイルにコンパイルすることができました。
そこから、Objective Sharpie.cs
を介して実行し、ファイルを生成することができました。次に、Xamarin Studio でバインディング ライブラリ プロジェクトを作成し、自分の.a
ファイルとそのファイルのコードを含めて.cs
、もう少し手を加えてコンパイルしました。
ViewDidLoad
次に、シンプルなシングル ビュー アプリを作成し、メイン ビューのメソッドでライブラリを使用しようとしました。これはエラーなしでコンパイルおよび実行されますが、実際には何もしていないようです! 実際に Janrain コードを呼び出してサーバーに接続しているとは思いません。
作業するエラーがなければ、私は今困惑しています。
いくつかの更新:
Janrain の github リポジトリからすべてのコードを新しい XCode プロジェクトにダンプし、JRCapture を削除して (結果として、今は必要だと思います)、再コンパイルしました。少しいじって、コンパイルしました。私の最初の問題の大部分は、ユニバーサル バイナリがビルドされないことでした。ここでスクリプトを見つけて、xcode プロジェクトのビルド フェーズに追加したところ、問題が解決したようです。以前に ARM バイナリをビルドしていましたが、それらは (明らかに) シミュレータで実行されません。なぜ Apple がユニバーサル バイナリの作成をこれほど難しくしているのか、私にはわかりません!
Objective Sharpie を実行JRConnectionManager.h
してスローしてファイルを作成し、バインディング プロジェクトに追加しました。少し微調整するとコンパイルされます。次に、テスト用の簡単な iPhone プロジェクトを作成しました。iPhone プロジェクトのいくつかの重要なポイント:JREngage.h
.cs
- ファイルを xcode プロジェクトに含めても
.xib
、xamarin プロジェクトでは使用できません。それらをすべてiPhoneプロジェクト自体に再度追加する必要があります(JREngage/Resources/xibsで見つけてください) - 起動するコードは、ではなく
ShowAuthenticationDialog
にある必要があります。どうやらビューがロードされているようですが、実際にはまだ表示されていないため、Janrain コードはそのダイアログをビューに追加できません。ViewDidAppear
ViewDidLoad
- github リポジトリにはすべてのイメージが と にネストされているという事実にもかかわらず、
Resources\Images
コードResources\Images-2x
は実際にはすべてのイメージがアプリケーションのルートにあることを想定しています。IPhoneResourcePrefix
セミコロンで区切られたパスのリストでタグを編集して、.csproj
すべてのパスを自動的に削除することができます。ここ を参照してください。
そのいくつかをいじると、実際に機能するようになりました。認証ダイアログが表示され、適切なプロバイダーに接続され、データが返されます。あとは、応答をどうするかを考えなければなりません。