android分享软件功能的实现
16lz
2021-01-26
经常看到一些软件有一些共享的按钮,点击这个按钮,就会出现一大推你安装过软件列表,比如:微博,短信,蓝牙,邮件等。其实实现非常简单:
Intent intent=new Intent(Intent.ACTION_SEND); intent.setType("text/plain"); //"image/*"intent.putExtra(Intent.EXTRA_SUBJECT,"共享软件"); intent.putExtra(Intent.EXTRA_TEXT, "我在安卓市场发现了个好东东【通讯录】,快来......下载吧!!安卓市场里面还有很多应用来看看吧!");intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(Intent.createChooser(intent, "选择分享类型"));
//发邮件 private void sendMail(String emailBody){ Intent email = new Intent(android.content.Intent.ACTION_SEND); email.setType( "plain/text" ); String emailSubject = "共享软件" ; //设置邮件默认地址 // email.putExtra(android.content.Intent.EXTRA_EMAIL, emailReciver); //设置邮件默认标题 email.putExtra(android.content.Intent.EXTRA_SUBJECT, emailSubject); //设置要默认发送的内容 email.putExtra(android.content.Intent.EXTRA_TEXT, emailBody); //调用系统的邮件系统 startActivityForResult(Intent.createChooser(email, "请选择邮件发送软件" ), 1001 ); }
直接发送短信
//发短信 private void sendSMS(){ Uri smsToUri = Uri.parse( "smsto:" ); Intent sendIntent = new Intent(Intent.ACTION_VIEW, smsToUri); //sendIntent.putExtra("address", "123456"); // 电话号码,这行去掉的话,默认就没有电话 sendIntent.putExtra( "sms_body" , "我要共享这个软件" ); sendIntent.setType( "vnd.android-dir/mms-sms" ); startActivityForResult(sendIntent, 1002 ); }
EditText num=(EditText)findViewById(R.id.num); EditText content=(EditText)findViewById(R.id.content); String mobile=num.getText().toString(); String smstext=content.getText().toString(); //获取SmsManager SmsManager sms=SmsManager.getDefault(); //如果内容大于70字,则拆分为多条 List<String> texts=sms.divideMessage(smstext); //逐条发送短信 for(String text:texts) { sms.sendTextMessage(mobile, null, text, null, null); } //发送结果提示 Toast.makeText(SendSMS.this, "发送成功", Toast.LENGTH_LONG).show();
更多相关文章
- Okhttp post 发送空的body
- Android学习之坑——静态广播问题
- Android(安卓)中Crash时如何获取异常信息详解及实例
- Android(安卓)Studio 如果修改LogCat的颜色,默认全是黑色看着挺不
- Android—启动内置APK和动态发送接收自定义广播
- 在 Android(安卓)P 中使用默认 TLS 来保护您的用户
- android新浪分享实例
- Android(安卓)p2p局域网聊天软件的实现
- 关于解决 AVD的中文路径出现的问题和更改avd的默认路径