0

winjsアプリからデータ(単純なテキスト)を共有しようとしているときに、共有チャームをクリックすると、共有オプション(ターゲット)としてメールと別のパーソナライズされたアプリしかありません。FacebookまたはTwitterでコンテンツを共有したいと思っています。私のメトロアプリ。

FacebookとTwitterのアカウントを追加してPeopleアプリを構成しましたが、Facebookのすべての投稿とツイートを表示できます。

共有チャームをクリックしたときに表示される共有ターゲットにPeopleアプリを追加するにはどうすればよいですか?

挿入しなければならない余分なコードや他に何かする必要があるかどうか疑問に思っていますか?

役立つアドバイスはありますか?

//this the function that allow me to share content from the share charm
function ShowandShareContract() {

    Windows.ApplicationModel.DataTransfer.DataTransferManager.showShareUI();
    var dataTransferManager = Windows.ApplicationModel
                                     .DataTransfer
                                     .DataTransferManager
                                     .getForCurrentView();

    dataTransferManager.addEventListener("datarequested", function (e) {       
        var request = e.request;
        request.data.properties.title = "Debugmode";
        request.data.properties.description = "Debugmode Share App";
        request.data.setText("Hello from DebugMode App");
    });
4

1 に答える 1

0

@ブラヒム

共有コントラクトの秘訣は、アプリ (共有ソース) が提供した 1 つ以上の種類のデータを処理する場合にのみ、共有ターゲット (この例では People アプリ) がアプリのリストに表示されることです。タイトル、説明、およびテキストしか提供していないため、データ型をさらに追加してみることをお勧めします。

Windows ストア アプリ デベロッパー センターのコンテンツ ソース アプリの共有サンプルでは、​​共有できるさまざまな種類のデータの例を示しています。このサンプルをダウンロードして実行すると、People アプリでどれが受け入れられるかをテストできます (試してみたところ、うまく共有できたのはリンクだけでした)。

共有コントラクトの利点は、共有のために 1 つのアプリだけに依存する必要がないことです。実際、どのアプリがコンテンツを受信するかはユーザーが制御できるため、できるだけ多くの形式 (タイトル、説明、プレーン テキスト、HTML、リンク、該当する場合は画像など) でコンテンツを提供することをお勧めします。 、目的の受信アプリがサポートするコンテンツの種類に関係なく、アプリの共有要求を処理できるようにします。

それが役立つことを願っています。

Windows ストア アプリ開発の詳細については、Generation Appに登録してください。

于 2013-03-01T01:08:30.247 に答える