登录
首页 » Android » Share photo,image on location

Share photo,image on location

于 2022-05-16 发布 文件大小:3.21 MB
0 201
下载积分: 2 下载次数: 1

代码说明:

我的团队得到了这个项目,并在5分钟内完成了它几个月。和客户机-服务器模式:其中客户机使用android,服务器使用PHP

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 聚会易应用(LBS)
    通过向朋友发起聚会邀请,组织聚会的客户端。 涉及到地图、定位、短信、通讯录、云服务器通讯等方面。 未经许可,不能用于商业用途
    2022-08-17 04:43:16下载
    积分:1
  • Android开源小说阅读器CoolReader源码
    Android开源小说阅读器CoolReader源码
    2015-04-06下载
    积分:1
  • android 小米文件管理器 实例源码下载
    android 小米文件管理器 实例源码下载
    2014-06-06下载
    积分:1
  • Camera预览实例
    Camera预览实例代码
    2014-02-25下载
    积分:1
  • DrawDemo02
    Android develop simple painting
    2020-06-30 09:20:02下载
    积分:1
  • Android滑动菜单特效实现,仿人人客户端侧滑效果demo
    Android滑动菜单特效实现,仿人人客户端侧滑效果demo.此为示例代码
    2022-03-12 08:32:27下载
    积分:1
  • Android的拨号器
    应用背景Lorem存有 ;仅仅是印刷排版业虚拟文本。Lorem存有一直是行业的标准虚拟文本自从16世纪,当一个未知的打印机把厨房型和炒它做字体样本。它不仅存活了五个世纪,而且还跨越了电子排版,基本上保持不变。这是流行在上世纪60年代随着拉突激光印字传输系统含Lorem存有通道释放,以及最近的桌面出版软件Aldus PageMaker包括Lorem存有版本。关键技术SED UT perspiciatis OMNIS ISTE Natus误差在坐voluptatem accusantium doloremque laudantium,totam REM aperiam平等,事实不云乎:AB伊洛inventore veritatis等准architecto beatae简历原则必须explicabo。尼莫”ipsam voluptatem quia Voluptas坐aspernatur AUT odit AUT福杰特,SED全能consequuntur麦尼多洛雷斯EOS魁属voluptatem Sequi nesciunt。neque波罗quisquam EST,魁dolorem ipsum quia悲哀坐特,consectetur,adipisci维利特,SED全能非numquam eius莫迪时代incidunt UT”等,quaerat voluptatem麦克纳姆痛苦。UT ENIM广告极小veniam,QUIS妙方exercitationem ullam体癣suscipit laboriosam,NiSi UT液体前EA的商品consequatur?在3 reprehenderit魁考德维尔QUIS EA voluptate维利特ESSE”无molestiae consequatur,VEL Illum魁dolorem EUM fugiat Voluptas pariatur现状不?
    2022-03-12 01:21:49下载
    积分:1
  • Android源代码开发和调试环境搭建
    Android源代码开发环境与SDK开发环境相比,优势是可以查看和调试系统源代码,包括Java代码和C/C++代码。这对应用开发也是非常有用的,因为在开发中碰到疑难杂症时可以跟踪到系统内部去定位问题。对于涉及到C/C++代码的开发,例如JNI开发和安全相关开发,更加建议在Android源代码开发环境进行,这样就可以利用gdb以及gdbclient工具进行调试。这个PPT主要讲Android源代码下载、编译和运行,以及C/C++、Java代码的调试。
    2022-08-06 03:06:56下载
    积分:1
  • 微信公众平台开发模式(JAVA) SDK/微信app
    【核心代码】package com.gson;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.Date;import java.util.Properties;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletInputStream;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.log4j.Logger;import com.gson.bean.Articles;import com.gson.bean.InMessage;import com.gson.bean.OutMessage;import com.gson.bean.TextOutMessage;import com.gson.inf.MessageProcessingHandler;import com.gson.util.Tools;import com.gson.util.XStreamFactory;import com.thoughtworks.xstream.XStream;/** * 请求拦截 * * @author GodSon * */public class WeChatFilter implements Filter { private final Logger logger = Logger.getLogger(WeChatFilter.class); private String _token; private String conf = "classPath:wechat.properties"; private String defaultHandler = "com.gson.inf.DefaultMessageProcessingHandlerImpl"; private Properties p; @Override public void destroy() { logger.info("WeChatFilter已经销毁"); } @Override public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) res; Boolean isGet = request.getMethod().equals("GET"); String path = request.getServletPath(); String pathInfo = path.substring(path.lastIndexOf("/")); if (pathInfo == null) { response.getWriter().write("error"); } else { _token = pathInfo.substring(1); if (isGet) { doGet(request, response); } else { doPost(request, response); } } } private void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("text/xml"); OutMessage oms = new OutMessage(); ServletInputStream in = request.getInputStream(); // 转换微信post过来的xml内容 XStream xs = XStreamFactory.init(false); xs.alias("xml", InMessage.class); String xmlMsg = Tools.inputStream2String(in); logger.debug("输入消息:[" xmlMsg "]"); InMessage msg = (InMessage) xs.fromXML(xmlMsg); // 获取自定消息处理器,如果自定义处理器则使用默认处理器。 String handler = p.getProperty("MessageProcessingHandlerImpl"); if (handler == null) handler = defaultHandler; try { // 加载处理器 Class clazz = Class.forName(handler); MessageProcessingHandler processingHandler = (MessageProcessingHandler) clazz.newInstance(); // 取得消息类型 String type = msg.getMsgType(); Method mt = clazz.getMethod(type "TypeMsg", InMessage.class); oms = (OutMessage) mt.invoke(processingHandler, msg); if (oms == null) { oms = new TextOutMessage(); ((TextOutMessage) oms).setContent("系统错误!"); } setMsgInfo(oms,msg); } catch (Exception e) { logger.error(e); oms = new TextOutMessage(); ((TextOutMessage) oms).setContent("系统错误!"); try { setMsgInfo(oms,msg); } catch (Exception e1) { logger.error(e); } } // 把发送发送对象转换为xml输出 xs = XStreamFactory.init(true); xs.alias("xml", oms.getClass()); xs.alias("item", Articles.class); String xml = xs.toXML(oms); logger.debug("输出消息:[" xml "]"); response.getWriter().write(xml); } private void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { String signature = request.getParameter("signature");// 微信加密签名 String timestamp = request.getParameter("timestamp");// 时间戳 String nonce = request.getParameter("nonce");// 随机数 String echostr = request.getParameter("echostr");// // 验证 if (Tools.checkSignature(_token, signature, timestamp, nonce)) { response.getWriter().write(echostr); } } private void setMsgInfo(OutMessage oms,InMessage msg) throws Exception { // 设置发送信息 Class outMsg = oms.getClass().getSuperclass(); Field CreateTime = outMsg.getDeclaredField("CreateTime"); Field ToUserName = outMsg.getDeclaredField("ToUserName"); Field FromUserName = outMsg.getDeclaredField("FromUserName"); ToUserName.setAccessible(true); CreateTime.setAccessible(true); FromUserName.setAccessible(true); CreateTime.set(oms, new Date().getTime()); ToUserName.set(oms, msg.getFromUserName()); FromUserName.set(oms, msg.getToUserName()); } /** * 启动的时候加载wechat.properties配置 可以在过滤器配置wechat.properties路径 */ @Override public void init(FilterConfig config) throws ServletException { String cf = config.getInitParameter("conf"); if (cf != null) { conf = cf; } String classPath = this.getClass().getResource("/").getPath().replaceAll("%20", " "); conf = conf.replace("classPath:", classPath); p = new Properties(); File pfile = new File(conf); if (pfile.exists()) { try { p.load(new FileInputStream(pfile)); } catch (FileNotFoundException e) { logger.error("未找到wechat.properties", e); } catch (IOException e) { logger.error("wechat.properties读取异常", e); } } logger.info("WeChatFilter已经启动!"); }}
    2014-01-21下载
    积分:1
  • 编程工具
    Android环境搭建工具,ADT希望能给大家带来方便。
    2023-01-17 22:45:26下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载