0

テキストとメールをFB、TW、メールに投稿する必要があります。

ここで 1 つの imageview を作成しました。これらの imageview をクリックする必要がある場合は、アラートのディスログ ボックスが開いていることを意味します。ここでは、次の 3 つの項目がリストされています。

ここで、アラート リストで FB を送信する必要がある場合、つまり action_send を使用して FB アプリに移動する必要がある場合は、テキストと画像も投稿します。他の TW とメール アプリは非表示になります。

アラート リストで TW をクリックする必要がある場合は、Tw アプリに移動し、テキストと画像を同時に投稿することを意味し、FB、メール アプリを非表示にします...

どのようにできるのか ???

plsは私を助けてください..私は以下のコードを使用しました...ここで私は何も起こらなかったことを意味するFbをクリックしました??? これらの解決策を教えてください...私のデバイスにインストールされたFB、TWアプリも...では、なぜ何も起こらないのですか??? plsは私に提案を与える??? 私のコードで何が問題なのですか???

ImageView share = (ImageView) findViewById(R.id.imageView5);
    share.setOnClickListener(new OnClickListener()
    {
        public void onClick (  final View v )
        {
            final CharSequence[] items =
            {
                    "Facebook", "Twitter", "Email"
            };

            AlertDialog.Builder builder = new AlertDialog.Builder(SubCate.this);
            builder.setTitle("Share Via:");
            builder.setItems(items, new DialogInterface.OnClickListener()
            {
                public void onClick ( DialogInterface dialog , int item )
                {
                    if (items[item] == "Facebook")
                    {

                        initShareIntent("facebook");

                    }
                    if(items[item] == "Twitter"){
                        initShareIntent("twitter");

                       } 
                    if (items[item] == "Email")
                    {

                        initShareIntent("gmail");

                    }
                }
            });
            AlertDialog alert = builder.create();
            alert.show();
        }
    });
}



  private void initShareIntent(String type) {
        boolean found = false;
        Intent share = new Intent(android.content.Intent.ACTION_SEND);
        share.setType("image/jpeg");

        // gets the list of intents that can be loaded.
        List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(share, 0);
        if (!resInfo.isEmpty()){
            for (ResolveInfo info : resInfo) {
                if (info.activityInfo.packageName.toLowerCase().contains(type) || 
                        info.activityInfo.name.toLowerCase().contains(type) ) {
                    share.putExtra(Intent.EXTRA_SUBJECT,  _Substring);
                    share.putExtra(Intent.EXTRA_TEXT,     _Substring);
                    share.putExtra(Intent.EXTRA_STREAM, Uri.parse(_Image)); 
                    share.setPackage(info.activityInfo.packageName);
                    found = true;
                    break;
                }
            }
            if (!found)
                return;

            startActivity(Intent.createChooser(share, "Select"));
        }
    }

編集:

ここでアプリを実行する必要があります:

Fb をクリックする必要がある場合は、Facebook ウォールが開いていることを意味します...しかし、テキストはここに表示されません...

Tw をクリックすると、Twitter ウォールが開いていることを意味します...Twitter のテキストがウォールに表示されます..しかし、画像を読み込めませんでしたというメッセージが表示されます....

メールをクリックする必要がある場合は、gmail が開いていることを意味し、件名のテキストも表示されます...

twiiter 画像を読み込めませんでしたというメッセージが表示されるのはなぜですか...FBのテキストと画像も表示されません???? plsはこれらの解決策を教えてください????

4

2 に答える 2

0

Facebook では、ユーザーがアクション送信を介してテキストを読み込めないが、画像をアップロードできるという既知の問題があります。Facebook APIを使用してテキストをロードすることもできます。

Twitterでも、画像だけでなくテキストも送信できますが、問題はありません。

以下のコードで試してみてください。これがあなたを助けることを願っています。

Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);

            shareIntent.setType("image/*");

            shareIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);

            Uri uri = Uri.parse("file://"+combinedFilepath.trim());
                String extraString="set";
                shareIntent.putExtra(Intent.EXTRA_TEXT,extraString);                                    
                shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
                shareIntent.putExtra(Intent.EXTRA_TITLE, extraString);
                shareIntent.putExtra(Intent.EXTRA_SUBJECT, "app name");         

                startActivity(Intent.createChooser(shareIntent, "Share via"));
于 2013-04-22T09:49:30.260 に答える
0

この機能にSoicalAuthを使用すると非常に簡単で、そのためにリストビューとレイアウトを作成する必要はありません....このリンクを参照してください

于 2013-04-22T07:13:05.120 に答える