温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

android调用系统分享

发布时间:2020-04-11 12:08:12 来源:网络 阅读:507 作者:671076656 栏目:移动开发
package com.example.sharedemo;

import com.google.zxing.WriterException;

import android.net.Uri;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.Context;

import android.content.DialogInterface;

import android.content.Intent;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class ShareActivity extends Activity {

private Button btnshare;

private Context context;

private String msg;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_share);

context = ShareActivity.this;

msg = "Test share";

btnshare = (Button) findViewById(R.id.button1);

btnshare.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

shareMemo(context, msg);

}

});

}

public static void shareMemo(final Context context, final String uid) {

new AlertDialog.Builder(context)

.setTitle(context.getString(R.string.selectsharemode))

.setItems(

context.getResources()

.getStringArray(R.array.sharemode),

new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog,

int which) {

// TODO Auto-generated method stub

if (which == 0) {

Intent it = new Intent(Intent.ACTION_SEND);

it.putExtra(Intent.EXTRA_TEXT, uid);

// it.setType("audio  

    public Bitmap Create2DCode(String str) throws WriterException {  

        //生成二维矩阵,编码时指定大小,不要生成了图片以后再进行缩放,这样会模糊导致识别失败 

    qrcode =  str;

        BitMatrix matrix = new MultiFormatWriter().encode(str,BarcodeFormat.QR_CODE, 300, 300);  

        int width = matrix.getWidth();  

        int height = matrix.getHeight();  

        //二维矩阵转为一维像素数组,也就是一直横着排了  

        int[] pixels = new int[width * height];  

        for (int y = 0; y < height; y++) {  

            for (int x = 0; x < width; x++) {  

                if(matrix.get(x, y)){  

                    pixels[y * width + x] = 0xff000000;  

                }  

                  

            }  

        }  

          

        Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);  

        //通过像素数组生成bitmap,具体参考api  

        bitmap.setPixels(pixels, 0, width, 0, 0, width, height);  

        return bitmap;  

    }

    

    public Uri  WriteBitmap(Bitmap bm)

    {    

    String filepath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + qrcode + ".png";

   

    File file = new File(filepath);

   

    try {

     

      if(!file.createNewFile()) {

     

          System.out.println("File already exists");

      }

    } catch (IOException ex) {

      

      System.out.println(ex);

     

    }

   

    try {

      FileOutputStream out = new FileOutputStream(file);

      bm.compress(Bitmap.CompressFormat.PNG, 90, out);

      out.flush();

      out.close();

     } catch (FileNotFoundException e) {

      // TODO Auto-generated catch block

      e.printStackTrace();

     } catch (IOException e) {

      // TODO Auto-generated catch block

      e.printStackTrace();

     }

   

    return Uri.fromFile(file);

    }

}

//少不了权限

 

//strings.xml

   请选择分享模式

   

        文字分享UID

        图片分享UID

   

   

另外需要导入core.jar库文件

这个可从网上下载


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI