3

SD カードに保存されている写真を Facebook に送信する際に問題があります。

これには 2 つの方法をコーディングしました。最初の方法は問題ありません。この場合、セレクターが表示されます。画面で Facebook を選択すると、完全なインターフェイスを備えた Facebook が起動します。写真はフェースブックに掲載されています。テキストを入力して [公開] ボタンを押します。

Uri screenshotUri = Uri.parse("file:///sdcard/"+nomFichier);  
try{
Intent intentPartager = new Intent(Intent.ACTION_SEND);
intentPartager.setType("image/*");
intentPartager.putExtra(Intent.EXTRA_STREAM, screenshotUri);
startActivity(Intent.createChooser(intentPartager, "Share image using"));               
} 
catch(Exception e){
        e.printStackTrace();
        Toast.makeText(this,R.string.erreurFaceBookAbsent,Toast.LENGTH_SHORT).show();
   }

この方法は、ユーザーが画像を送信するソフトウェア (MMS、twitter、facebook など) を選択できるようにするのに適していますが、コマンドを単純化し、facebook を直接呼び出したいと考えています。したがって、この 2 番目のメソッドを .setClassName("com.facebook.katana","com.facebook.katana.ShareLinkActivity") 命令で使用して、Facebook 呼び出しを強制します。残念ながら、この秒は機能しません。Facebook を開始しましたが、Facebook に画像がダウンロードされません (Facebook に表示されません)。facebookの画面インターフェースも最初の方法???とは違います。

Uri screenshotUri = Uri.parse("file:///sdcard/"+nomFichier);  
try{
Intent intentFacebook = new Intent(Intent.ACTION_SEND);
intentFacebook.setType("image/*");
intentFacebook.setClassName("com.facebook.katana","com.facebook.katana.ShareLinkActivity");
intentFacebook.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
//intentFacebook.putExtra(Intent.EXTRA_TEXT, "Mes performances avec SpeedMeter");
intentFacebook.putExtra(Intent.EXTRA_STREAM, screenshotUri);
//startActivity(intentFacebook);
startActivityForResult(intentFacebook, CODE_RETOUR_FACEBOOK);
} catch(Exception e){
        e.printStackTrace();
        Toast.makeText(this,R.string.erreurFaceBookAbsent,Toast.LENGTH_SHORT).show();
        }

誰かが私を助けることができますか?2番目の方法の問題はどこにありますか? シリル

4

0 に答える 0