|
|
@@ -1,6 +1,11 @@
|
|
|
package com.sheep.jiuyan.samllsheep.page;
|
|
|
|
|
|
import android.app.AlertDialog;
|
|
|
+import android.net.Uri;
|
|
|
+import android.os.Environment;
|
|
|
+import android.provider.MediaStore;
|
|
|
+import android.text.ClipboardManager;
|
|
|
+import android.content.Context;
|
|
|
import android.content.Intent;
|
|
|
import android.graphics.Bitmap;
|
|
|
import android.graphics.drawable.ColorDrawable;
|
|
|
@@ -18,25 +23,30 @@ import com.sheep.jiuyan.samllsheep.base.BaseActivity;
|
|
|
import com.sheep.jiuyan.samllsheep.net.NetManager;
|
|
|
import com.sheep.jiuyan.samllsheep.net.SheepCallback;
|
|
|
import com.sheep.jiuyan.samllsheep.net.Url;
|
|
|
+import com.sheep.jiuyan.samllsheep.page.entry.InviteUrl;
|
|
|
import com.sheep.jiuyan.samllsheep.utils.DeviceUtils;
|
|
|
import com.sheep.jiuyan.samllsheep.utils.PackageUtil;
|
|
|
import com.sheep.jiuyan.samllsheep.utils.SpUtils;
|
|
|
+import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
|
|
|
import com.uuzuche.lib_zxing.activity.CodeUtils;
|
|
|
|
|
|
+import java.io.File;
|
|
|
+import java.io.FileOutputStream;
|
|
|
+import java.io.IOException;
|
|
|
import java.util.HashMap;
|
|
|
|
|
|
/**
|
|
|
* Created by Administrator on 2018/1/24.
|
|
|
*/
|
|
|
|
|
|
-public class AskFriendActivity extends BaseActivity implements View.OnClickListener{
|
|
|
+public class AskFriendActivity extends BaseActivity implements View.OnClickListener {
|
|
|
private TextView tv_reward_size;
|
|
|
- private TextView tv_friend_size;
|
|
|
- private TextView tv_proportion_size;
|
|
|
- private RelativeLayout rl_emw;
|
|
|
- private RelativeLayout rl_link;
|
|
|
+ private TextView tv_friend_size;
|
|
|
+ private TextView tv_proportion_size;
|
|
|
+ private RelativeLayout rl_emw;
|
|
|
+ private RelativeLayout rl_link;
|
|
|
|
|
|
- private String shareLink;
|
|
|
+ private String shareLink;
|
|
|
|
|
|
@Override
|
|
|
protected int getLayoutId() {
|
|
|
@@ -45,11 +55,12 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
|
|
|
@Override
|
|
|
public void initView() {
|
|
|
- tv_reward_size=(TextView)findViewById(R.id.tv_reward_size);
|
|
|
- tv_friend_size=(TextView)findViewById(R.id.tv_friend_size);
|
|
|
- tv_proportion_size=(TextView)findViewById(R.id.tv_proportion_size);
|
|
|
- rl_emw=(RelativeLayout) findViewById(R.id.rl_emw);
|
|
|
- rl_link=(RelativeLayout) findViewById(R.id.rl_link);
|
|
|
+ tv_reward_size = (TextView) findViewById(R.id.tv_reward_size);
|
|
|
+ tv_friend_size = (TextView) findViewById(R.id.tv_friend_size);
|
|
|
+ tv_proportion_size = (TextView) findViewById(R.id.tv_proportion_size);
|
|
|
+ rl_emw = (RelativeLayout) findViewById(R.id.rl_emw);
|
|
|
+ rl_link = (RelativeLayout) findViewById(R.id.rl_link);
|
|
|
+ TitleBarUtils.getInstance().setTitle(this, "邀请好友").setTitleFinish(this);
|
|
|
|
|
|
}
|
|
|
|
|
|
@@ -64,13 +75,13 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
getShareLink();
|
|
|
}
|
|
|
|
|
|
- private void getShareLink(){
|
|
|
+ private void getShareLink() {
|
|
|
HashMap<String, String> map = new HashMap<>();
|
|
|
map.put("wx_open_id", SpUtils.getOpenId(this));
|
|
|
- NetManager.get(Url.USER_INVITE_URL, map, getApplicationContext(), new SheepCallback<String>(this) {
|
|
|
+ NetManager.get(Url.USER_INVITE_URL, map, getApplicationContext(), new SheepCallback<InviteUrl>(this) {
|
|
|
@Override
|
|
|
- public void success(String o) {
|
|
|
- shareLink=o;
|
|
|
+ public void success(InviteUrl o) {
|
|
|
+ shareLink = o.getUrl();
|
|
|
}
|
|
|
});
|
|
|
|
|
|
@@ -78,12 +89,11 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
|
|
|
- switch (view.getId()){
|
|
|
- case R.id.rl_emw:
|
|
|
+ switch (view.getId()) {
|
|
|
+ case R.id.rl_emw:
|
|
|
|
|
|
showEMW();
|
|
|
|
|
|
@@ -94,14 +104,12 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
break;
|
|
|
|
|
|
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
- private void showEMW(){
|
|
|
-
|
|
|
+ private void showEMW() {
|
|
|
AlertDialog.Builder builder = new AlertDialog.Builder(AskFriendActivity.this);
|
|
|
View view = View.inflate(this, R.layout.ema_dialog, null);
|
|
|
builder.setView(view);
|
|
|
@@ -110,7 +118,7 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
dialog.getWindow().setDimAmount(0.1f);
|
|
|
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0));
|
|
|
dialog.show();
|
|
|
- ImageView iv_close=(ImageView)view.findViewById(R.id.iv_close);
|
|
|
+ ImageView iv_close = (ImageView) view.findViewById(R.id.iv_close);
|
|
|
iv_close.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
@@ -118,27 +126,53 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
}
|
|
|
});
|
|
|
|
|
|
- ImageView iv_ema=(ImageView)view.findViewById(R.id.iv_ema);
|
|
|
- Bitmap mBitmap = CodeUtils.createImage(shareLink, 200, 200,null );
|
|
|
+ ImageView iv_ema = (ImageView) view.findViewById(R.id.iv_ema);
|
|
|
+ final Bitmap mBitmap = CodeUtils.createImage(shareLink, 200, 200, null);
|
|
|
iv_ema.setImageBitmap(mBitmap);
|
|
|
- LinearLayout ll_save=(LinearLayout)view.findViewById(R.id.ll_save);
|
|
|
+ LinearLayout ll_save = (LinearLayout) view.findViewById(R.id.ll_save);
|
|
|
ll_save.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
-
|
|
|
+ boolean isOk = saveImageToGallery(AskFriendActivity.this, mBitmap);
|
|
|
+ if (isOk) {
|
|
|
+ Toast.makeText(AskFriendActivity.this, "保存成功", Toast.LENGTH_SHORT).show();
|
|
|
+ } else {
|
|
|
+ Toast.makeText(AskFriendActivity.this, "保存失败,请重试", Toast.LENGTH_SHORT).show();
|
|
|
+ }
|
|
|
}
|
|
|
});
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
+ //保存图片,更新系统图库
|
|
|
+ public boolean saveImageToGallery(Context context, Bitmap bmp) {
|
|
|
+ String storePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "Sheep";
|
|
|
+ File appDir = new File(storePath);
|
|
|
+ if (!appDir.exists()) {
|
|
|
+ appDir.mkdir();
|
|
|
+ }
|
|
|
+ String fileName = System.currentTimeMillis() + ".jpg";
|
|
|
+ File file = new File(appDir, fileName);
|
|
|
+ try {
|
|
|
+ FileOutputStream fos = new FileOutputStream(file);
|
|
|
+ boolean isSuccess = bmp.compress(Bitmap.CompressFormat.JPEG, 100, fos);
|
|
|
+ fos.flush();
|
|
|
+ fos.close();
|
|
|
+ MediaStore.Images.Media.insertImage(context.getContentResolver(), file.getAbsolutePath(), fileName, null);
|
|
|
+ Uri uri = Uri.fromFile(file);
|
|
|
+ context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, uri));
|
|
|
+ if (isSuccess) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
- private void showLink(){
|
|
|
+ private void showLink() {
|
|
|
AlertDialog.Builder builder = new AlertDialog.Builder(AskFriendActivity.this);
|
|
|
View view = View.inflate(this, R.layout.link_dialog, null);
|
|
|
builder.setView(view);
|
|
|
@@ -147,7 +181,7 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
dialog.getWindow().setDimAmount(0.1f);
|
|
|
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0));
|
|
|
dialog.show();
|
|
|
- ImageView iv_close=(ImageView)view.findViewById(R.id.iv_close);
|
|
|
+ ImageView iv_close = (ImageView) view.findViewById(R.id.iv_close);
|
|
|
iv_close.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
@@ -155,13 +189,16 @@ public class AskFriendActivity extends BaseActivity implements View.OnClickLis
|
|
|
}
|
|
|
});
|
|
|
|
|
|
- EditText et=(EditText)view.findViewById(R.id.et);
|
|
|
+ EditText et = (EditText) view.findViewById(R.id.et);
|
|
|
et.setText(shareLink);
|
|
|
- ImageView iv_link=(ImageView)view.findViewById(R.id.iv_link);
|
|
|
+ ImageView iv_link = (ImageView) view.findViewById(R.id.iv_link);
|
|
|
iv_link.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
-
|
|
|
+ ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
|
|
|
+ // 将文本内容放到系统剪贴板里。
|
|
|
+ cm.setText(shareLink);
|
|
|
+ Toast.makeText(AskFriendActivity.this, "复制成功,可以发给朋友们了。", Toast.LENGTH_SHORT).show();
|
|
|
}
|
|
|
});
|
|
|
|