Android调用系统分享功能以及createChooser的使用

时间:2024-10-20 15:03:56

工程结构

Android调用系统分享功能以及createChooser的使用

//效果图

Android调用系统分享功能以及createChooser的使用

点击测试分享                                                                                                          点击createChoose妙用

Android调用系统分享功能以及createChooser的使用     Android调用系统分享功能以及createChooser的使用

主要是看右边的,可不是用什么Dialog来搞的哦,而是你Activity程序,可以激活进去了

提示:这个东西可以延伸到一个音频文件,打开时,可以调用你的音乐播放器来播放哦,视频,图片,也是类似,可以调用你自己的东西

当然,前提是你的manifest.xml里的东西要配置对呀

<data Android:mimeType="mark/nimei" />

如下

<activity android:name=".TestActivity"
            android:label="你妹啊"
            >
            <intent-filter>  
                <action android:name="android.intent.action.XXMM" />  
                 <category android:name="android.intent.category.DEFAULT" />  
                 <category android:name="android.intent.category.OPENABLE" />  
                 <data android:mimeType="mark/nimei" />  
            </intent-filter>  
        </activity>
        <activity android:name=".Test2Activity"
            android:label="你妹啊2"
            >
            <intent-filter>  
                <action android:name="android.intent.action.XXMM" />  
                 <category android:name="android.intent.category.DEFAULT" />  
                 <category android:name="android.intent.category.OPENABLE" />  
                 <data android:mimeType="mark/nimei" />  
            </intent-filter>  
        </activity>

//代码如下:

  1. package com.mark.share.demo;
  2. import java.io.File;
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.net.Uri;
  6. import android.os.Bundle;
  7. import android.view.View;
  8. import android.view.View.OnClickListener;
  9. import android.widget.Button;
  10. public class AppShareDemoActivity extends Activity
  11. {
  12. private Button testshare;
  13. private Button createChooserBtn;
  14. @Override
  15. public void onCreate(Bundle savedInstanceState)
  16. {
  17. super.onCreate(savedInstanceState);
  18. setContentView(R.layout.main);
  19. testshare=(Button) findViewById(R.id.testshare);
  20. createChooserBtn=(Button) findViewById(R.id.Test_createChooser);
  21. testshare.setOnClickListener(new OnClickListener()
  22. {
  23. @Override
  24. public void onClick(View v)
  25. {
  26. Intent intent = new Intent(Intent.ACTION_SEND);
  27. intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  28. intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File("sdcard/1.png")));  //传输图片或者文件 采用流的方式
  29. intent.putExtra(Intent.EXTRA_TEXT, "分享分享微博");   //附带的说明信息
  30. intent.putExtra(Intent.EXTRA_SUBJECT, "标题");
  31. intent.setType("image/*");   //分享图片
  32. startActivity(Intent.createChooser(intent,"分享"));
  33. }
  34. });
  35. createChooserBtn.setOnClickListener(new OnClickListener()
  36. {
  37. @Override
  38. public void onClick(View v)
  39. {
  40. Intent intent = new Intent();
  41. intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  42. intent.setAction("android.intent.action.XXMM");
  43. intent.setDataAndType(Uri.parse("file:///sdcard/DCIM/cc.mp3"), "mark/nimei");
  44. startActivity(Intent.createChooser(intent, "Select music1 app"));
  45. }
  46. });
  47. }
  48. }

相关文章