2017-04-20 21 views
1

この単純なタスクを達成するのに最も苦労しています。私が今テストしているのはサンプルです!Xamarin.ios Today Visual Studioの拡張機能

this tutorialに続いて、私はMacで直接Xamarin StudioからToday Extensionを正常に作成することができました。しかし、私のWin 10 PCのVisual Studio 2015と同じプロセスに従えば、私は絶対に何も得ません(今日の拡張機能まで)。

私はいくつかの「修正」を試みました。まず、完成したアプリケーションをMacからWindowsにコピーするだけでした。それをVSで開くと、アプリは正常にビルドされ、シミュレータにデプロイされます。今日の拡張機能は実際に利用可能ですが、私の見解は決して読み込まれません。それはちょうど "ロードすることができません"と言います。ストーリーボードとハードコーディングの両方の方法を試しましたが、buenoはありません。シミュレータのシステムログを調べると、ハブ接続エラーとサポートされていないXPCオブジェクトos_xpc_dicについての情報が表示されます。

私はそれをもっと使いこなし、最終的にはシミュレータで作業するようになりました。私はCFBundleDisplayNameとCFBundleNameの両方にハイフン(app-ext名)を付けました。このANDを削除して、まったく異なるiosデバイスシミュレータ(6s plusではなく6 plus)にデプロイすると、今日の拡張機能は最終的にデフォルトのhello worldテキストを表示しました。

これを物理デバイスに展開しようとしましたが、残念ながら「読み込めません」というメッセージが表示されます。それはアプリの「汚れた」インストールと関係があると思っていたので、私は様々なクリーン/再ビルドを試み、デバイスを削除してデバイスに再追加しました。私はCFBundleIdentifierと共にCFBundleNameとDisplayNameを変更しようと試みましたが、何も動作していません!!!!

今日ウィジェットセンターがロードされる時にデバイスログを見ると、これは私が見たものである:1 contentStateChanged:

•は com.TexasDominos.ITSupport.AlertExtension visibilityChangedの出版状況を更新します:0 insertAtTop:0 notifyingObservers:com.TexasDominos.ITSupport.AlertExtension のisVisibleの1つの

•パブリケーションの状態:1つのhasContent:1

•com.Te xasDominos.ITSupport.AlertExtension:0x1576e8570;コンテナー: WGMajorListViewController理由のあるシーケンスを開始:外観 遷移

•com.TexasDominos.ITSupport.AlertExtension:0x1576e8570;コンテナ:アクティブライフサイクルシーケンスの中止 WGMajorListViewController:com.TexasDominos.ITSupport.AlertExtension•

:0x1576e8570。コンテナ:引数配列 としてWGMajorListViewController中止シーケンス(WGWidgetLifeCycleSequence:0x170a35740; sequenceID: com.TexasDominos.ITSupport.AlertExtension.WGMajorListViewController.4/17/20、 午前11時31分00秒AM; currentStateの: WGWidgetLifeCycleSequenceStateDidRequestRemoteView)がありません予想 範囲内(WGWidgetLifeCycleSequenceStateDidConnectRemoteView \ Mbの\ M^@のの\ M^S \ MB \ 240WGWidgetLifeCycleSequenceStateRemoteViewRevealed)

•com.TexasDominos.ITSupport.AlertExtension:0x1576e8570。コンテナ: WGMajorListViewController新しいライフサイクルシーケンスの開始: 'WGWidgetLifeCycleSequence:0x170a35740; sequenceID: com.TexasDominos.ITSupport.AlertExtension。WGMajorListViewController.4/20/17、 11:31:00 AM; currentState:WGWidgetLifeCycleSequenceStateQuiescent '

•com.TexasDominos.ITSupport.AlertExtension:0x1576e8570;コンテナ:com.TexasDominos.ITSupport.AlertExtension• の外見転移」

:理由で要求された接続 WGMajorListViewController 0x1576e8570。コンテナ: WGMajorListViewControllerは が

com.TexasDominos.ITSupport.AlertExtension•

ブラックリストに載っているリモートビューコントローラ要求することはできません:0x1576e8570を。コンテナ: WGMajorListViewControllerは、私は、この問題のように混乱していますし、物理デバイス上でこれを修正するために何もすることができないよう、リモートビューコントローラ

を要求します。私の物理的なデバイスを完全に拭き取れば、エクステンションは正常に動作するようになります。なぜなら、それはシミュレータのクリーンインストールからも機能しているからです。しかし、地獄に私は単純な修正でなければならないもののために私のデバイスを拭くつもりはない方法はありません。

ヒント?

Gerneio

*注:私はまた、VSの中から直接、今日の拡張機能を作成して追加しようとしたが、私はさらに多くの問題を受けました。ビルドの順序と依存関係、コンテナから拡張機能への参照を手動で変更する必要がありました。それでも、拡張子はまったく表示されませんでした。上記の経路は、最初はもっと有望であった...

答えて

1

私は自分の理論から、携帯電話自体からすべてのアプリデータを消去しても間違いないと考えています。私は拡張機能を正しく動作させることができました...

  1. デバイスからアプリケーションを削除します。
  2. プロビジョニングプロファイルを最初に作成して展開するために、Xamarin.iosガイドで作成した最初の空のアプリケーションをXcodeから再インストールします。
  3. 空白のアプリを削除します。
  4. VSからアプリをインストールします。

今、私の今日の拡張が正しく表示されます!どんな面倒です。

サイドノート:何点かの理由で、私のアプリは今日のエクステンションのインストールを正しく停止しました。上記の手順を実行してもう一度修正してください。また、新しいコードで更新を中止することもあります。ここでも、上記の手順でこれを解決しました。正確には安定したシステムではありません。私はこれがリリース版でどれくらいうまくいくのか不思議です。

関連する問題