工程结构
//效果图
点击测试分享 点击createChoose妙用
主要是看右边的,可不是用什么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>
//代码如下:
- package com.mark.share.demo;
- import java.io.File;
- import android.app.Activity;
- import android.content.Intent;
- import android.net.Uri;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- public class AppShareDemoActivity extends Activity
- {
- private Button testshare;
- private Button createChooserBtn;
- @Override
- public void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- testshare=(Button) findViewById(R.id.testshare);
- createChooserBtn=(Button) findViewById(R.id.Test_createChooser);
- testshare.setOnClickListener(new OnClickListener()
- {
- @Override
- public void onClick(View v)
- {
- Intent intent = new Intent(Intent.ACTION_SEND);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File("sdcard/1.png"))); //传输图片或者文件 采用流的方式
- intent.putExtra(Intent.EXTRA_TEXT, "分享分享微博"); //附带的说明信息
- intent.putExtra(Intent.EXTRA_SUBJECT, "标题");
- intent.setType("image/*"); //分享图片
- startActivity(Intent.createChooser(intent,"分享"));
- }
- });
- createChooserBtn.setOnClickListener(new OnClickListener()
- {
- @Override
- public void onClick(View v)
- {
- Intent intent = new Intent();
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- intent.setAction("android.intent.action.XXMM");
- intent.setDataAndType(Uri.parse("file:///sdcard/DCIM/cc.mp3"), "mark/nimei");
- startActivity(Intent.createChooser(intent, "Select music1 app"));
- }
- });
- }
- }