package com.electric.chargingpile.activity; import android.Manifest; import android.app.Activity; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; import com.electric.chargingpile.R; import com.electric.chargingpile.util.BarColorUtil; import com.electric.chargingpile.util.ToastUtil; import com.umeng.analytics.MobclickAgent; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.util.List; import pub.devrel.easypermissions.AfterPermissionGranted; import pub.devrel.easypermissions.AppSettingsDialog; import pub.devrel.easypermissions.EasyPermissions; public class AboutActivity extends Activity implements OnClickListener, EasyPermissions.PermissionCallbacks { private ImageView ivBack, icon_scan; private TextView tvVersion, tv_banquan, tv_call, android; private String app_version; Context mContext; private static final int RC_CALL_PERM = 123; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_about); mContext = this; BarColorUtil.initStatusBarColor(AboutActivity.this); initView(); } private void initView() { ivBack = (ImageView) findViewById(R.id.iv_back); ivBack.setOnClickListener(this); icon_scan = (ImageView) findViewById(R.id.icon_scan); icon_scan.setOnClickListener(this); tv_call = (TextView) findViewById(R.id.tv_call); tv_call.setOnClickListener(this); findViewById(R.id.tv_2).setOnClickListener(this); android = (TextView) findViewById(R.id.android); getVersion(); } public void getVersion() { try { PackageManager manager = getApplication().getPackageManager(); PackageInfo info = manager.getPackageInfo(getApplication().getPackageName(), 0); app_version = info.versionName; // return this.getString(R.string.version_name) + version; android.setText("For Android V" + app_version); } catch (Exception e) { e.printStackTrace(); // return this.getString(R.string.can_not_find_version_name); } } @Override public void onClick(View v) { ClipboardManager cm = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE); switch (v.getId()) { case R.id.iv_back: finish(); break; case R.id.tv_call: // telTask(); ClipData cdzData = ClipData.newPlainText("Label", "chongdianzhuang2"); cm.setPrimaryClip(cdzData); ToastUtil.showToast(getApplicationContext(), "微信号复制成功", Toast.LENGTH_SHORT); break; case R.id.tv_2: ToastUtil.showToast(getApplicationContext(), "微信号复制成功", Toast.LENGTH_SHORT); ClipData data = ClipData.newPlainText("Label", "firstev"); cm.setPrimaryClip(data); break; case R.id.icon_scan: saveBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.icon_erweima)); break; } } @Override protected void onResume() { super.onResume(); MobclickAgent.onResume(this); } @Override protected void onPause() { super.onPause(); MobclickAgent.onPause(this); } public void saveBitmap(Bitmap mBitmap) { String dir_path = Environment.getExternalStorageDirectory() + File.separator + "D1ev/"; File directory = new File(dir_path); File f = new File(directory, "erweima.png"); try { if (!directory.exists()) { directory.mkdir();//没有目录先创建目录 } f.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block } FileOutputStream fOut = null; try { fOut = new FileOutputStream(f); } catch (Exception e) { e.printStackTrace(); } mBitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut); // Log.e("!!!", "下载图片"); Toast.makeText(AboutActivity.this, "保存成功", Toast.LENGTH_SHORT).show(); try { fOut.flush(); } catch (IOException e) { e.printStackTrace(); } try { fOut.close(); } catch (IOException e) { e.printStackTrace(); } MediaStore.Images.Media.insertImage(getContentResolver(), mBitmap, "", ""); Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); Uri uri = Uri.fromFile(new File(dir_path)); intent.setData(uri); mContext.sendBroadcast(intent); } private void callPhoneShow() { new com.electric.chargingpile.view.AlertDialog(AboutActivity.this).builder() .setMsg("400-881-0405") .setPositiveButton("呼叫", new View.OnClickListener() { @Override public void onClick(View v) { String telNum = "4008810405"; Intent intent = new Intent(); intent.setAction("android.intent.action.CALL"); intent.addCategory("android.intent.category.DEFAULT"); intent.setData(Uri.parse("tel:" + telNum)); AboutActivity.this.startActivity(intent); } }).setNegativeButton("取消", new View.OnClickListener() { @Override public void onClick(View v) { } }).show(); } @Override public void onPermissionsGranted(int requestCode, List perms) { } @Override public void onPermissionsDenied(int requestCode, List perms) { if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) { new AppSettingsDialog.Builder(AboutActivity.this, "该功能需要开启拨号权限,是否前往开启?").build().show(); } } private boolean hasCallPhonePermission() { return EasyPermissions.hasPermissions(this, Manifest.permission.CALL_PHONE); } @AfterPermissionGranted(RC_CALL_PERM) public void telTask() { if (hasCallPhonePermission()) { // Have permission, do the thing! // Toast.makeText(this, "TODO: Camera things", Toast.LENGTH_LONG).show(); callPhoneShow(); } else { // Ask for one permission EasyPermissions.requestPermissions( this, "该功能需要开启拨号权限,是否前往开启?", RC_CALL_PERM, Manifest.permission.CALL_PHONE); } } }