package com.app.function; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import org.json.JSONArray; import org.json.JSONException; import com.app.interFace.ThirdPartyLoginCallBack; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.PorterDuff.Mode; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.RectF; import android.util.Log; import android.view.Display; import android.view.Gravity; import android.view.WindowManager; public class Configuration { public static final String server = "http://121.42.40.93/"; // public static final String server="http://192.168.1.28:3000/"; public static final String MyActivityService = server + "myactivityservice.json"; public static final String loginUrl = server + "login.json"; public static final String indexUrl = server + "get_allactivities.json"; public static final String getactivityUrl = server + "get_detailactivity.json"; public static final String getdynamicsUrl = server + "get_activitydynamics.json"; public static final String collectUrl = server + "newfavorite"; public static final String uncollectUrl = server + "deletefavorite"; public static final String sendUrl = server + "newactivity"; public static final String dynamicsUrl = server + "newdynamic"; public static final String canceljoinUrl = server + "canceljoin"; public static final String uploadimageUrl = server + "addcheckpicture"; public static final String updateuserUrl = server + "update_user"; public static final String updateuserpicUrl = server + "update_userpicture"; public static final String getdynamicmessagesUrl = server + "get_personaldynamics.json"; public static final String getdynamicjoinersUrl = server + "get_joiners.json"; public static final String getdynamicshoucangUrl = server + "get_favoriteactivities.json"; public static final String getdynamiccanyuUrl = server + "get_joinedactivities.json"; public static final String getdynamicfabuUrl = server + "get_publishedactivities.json"; public static final String appKey = "45c34afd98c6"; public static final String appSecred = "1b8e98a051b0c70b65da3721b26e3f36"; //ActivityResultInt public static final int BACK_IDENTIFY = 11; @SuppressWarnings("deprecation") public static void showLoginWindow(Activity activity, ThirdPartyLoginCallBack callback) { ThirdPartyLogin tpl = new ThirdPartyLogin(activity, callback); tpl.setCanceledOnTouchOutside(true); tpl.show(); WindowManager windowManager = activity.getWindowManager(); Display display = windowManager.getDefaultDisplay(); WindowManager.LayoutParams lp = tpl.getWindow().getAttributes(); lp.width = (int) (display.getWidth()); // 设置宽度 lp.gravity = Gravity.BOTTOM; tpl.getWindow().setAttributes(lp); } public static String getNowUTCtime() { DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); StringBuffer UTCTimeBuffer = new StringBuffer(); // 1取得本地时间: Calendar cal = Calendar.getInstance(); // 2取得时间偏移量: int zoneOffset = cal.get(java.util.Calendar.ZONE_OFFSET); // 3取得夏令时差: int dstOffset = cal.get(java.util.Calendar.DST_OFFSET); // 4从本地时间里扣除这些差量,即可以取得UTC时间: cal.add(java.util.Calendar.MILLISECOND, -(zoneOffset + dstOffset)); int year = cal.get(Calendar.YEAR); int month = cal.get(Calendar.MONTH) + 1; int day = cal.get(Calendar.DAY_OF_MONTH); int hour = cal.get(Calendar.HOUR_OF_DAY); int minute = cal.get(Calendar.MINUTE); UTCTimeBuffer.append(year).append("-").append(month).append("-") .append(day); UTCTimeBuffer.append(" ").append(hour).append(":").append(minute); try { format.parse(UTCTimeBuffer.toString()); return UTCTimeBuffer.toString(); } catch (ParseException e) { e.printStackTrace(); } return null; } public static String getLocalTimeFromUTC(String UTCTime) { if (UTCTime == "") { return "时间获取失败"; } SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd'T'HH:mm:ss.SSS Z"); UTCTime = UTCTime.replace("Z", " UTC"); Date dt = null; try { dt = sdf.parse(UTCTime); } catch (ParseException e) { e.printStackTrace(); } GregorianCalendar g = new GregorianCalendar(); int minutetime = 0; minutetime = Math.abs((int) (dt.getTime() - g.getTimeInMillis())) / (1000 * 60); if (minutetime <= 0) { return "刚刚"; } if (minutetime > 0 && minutetime < 60) { return minutetime + "分钟前"; } if (minutetime >= 60 && minutetime < 60 * 24) { return (int) minutetime / 60 + "小时前"; } else { return (int) minutetime / (60 * 24) + "天前"; } } public static Bitmap getRoundCornerBitmap(Bitmap bitmap, float roundPX) { int width = bitmap.getWidth(); int height = bitmap.getHeight(); Bitmap bitmap2 = Bitmap.createBitmap(width, height, Config.ARGB_8888); Canvas canvas = new Canvas(bitmap2); final int color = 0xff424242; final Paint paint = new Paint(); final Rect rect = new Rect(0, 0, width, height); final RectF rectF = new RectF(rect); paint.setColor(color); paint.setAntiAlias(true); canvas.drawARGB(0, 0, 0, 0); canvas.drawRoundRect(rectF, roundPX, roundPX, paint); paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); canvas.drawBitmap(bitmap, rect, rect, paint); return bitmap2; } public static int getActivityTimeType(String starttime, String endtime) { int type = 0; SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); Date start = null; Date end = null; try { start = sdf.parse(starttime); end = sdf.parse(endtime); } catch (ParseException e) { Log.i("test", e.toString()); } GregorianCalendar g = new GregorianCalendar(); long startmillis = start.getTime(); long endmillis = end.getTime(); long currentmillis = g.getTimeInMillis(); if (currentmillis < startmillis) type = 1; if (currentmillis >= startmillis && currentmillis <= endmillis) type = 2; if (currentmillis > endmillis) type = 3; return type; } public static String getActivityNumbers(String jsonString) { JSONArray array = null; String name = ""; try { array = new JSONArray(jsonString); } catch (JSONException e) { e.printStackTrace(); } int numbers = array.length(); if (numbers == 0) { return "现在还没人参与了活动"; } for (int i = 0; i < numbers; i++) { try { name += array.getJSONObject(i).getString("joinername") + ","; } catch (JSONException e) { } } int limit = 40; if (name.length() < limit) return name + "等" + numbers + "人参与了活动"; else return name.substring(0, limit) + "..." + "等" + numbers + "人参与了活动"; } }