「java手机端」java手机端接口开源

博主:adminadmin 2022-12-21 05:45:09 102

今天给各位分享java手机端的知识,其中也会对java手机端接口开源进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

手机上能运行java吗?

当然可以的,不过这个需要手机支持JAVA以前的老版手机大部分都有这种的,不过,现在最流行的是安卓的手机了,手机游戏也大部分是安卓写的;

电脑上编写的java程序直接放在手机里  能否运行  要看手机是否支持java程序

以前很多老版机器是默认就有java的功能了, 直接不支持java的机器就越过了。

如果手机支持 默认又没有java环境  可以在网上去下载  。

java做手机端后台,如何接受get请求参数

package com.weixin.util;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.StringWriter;

import java.io.UnsupportedEncodingException;

import java.util.ArrayList;

import java.util.List;

import java.util.Map;

import org.apache.http.Header;

import org.apache.http.HttpHost;

import org.apache.http.HttpResponse;

import org.apache.http.HttpStatus;

import org.apache.http.HttpVersion;

import org.apache.http.ParseException;

import org.apache.http.client.ClientProtocolException;

import org.apache.http.client.HttpClient;

import org.apache.http.client.entity.UrlEncodedFormEntity;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.client.methods.HttpPost;

import org.apache.http.client.params.CookiePolicy;

import org.apache.http.client.params.HttpClientParams;

import org.apache.http.conn.params.ConnRoutePNames;

import org.apache.http.impl.client.DefaultHttpClient;

import org.apache.http.message.BasicNameValuePair;

import org.apache.http.params.BasicHttpParams;

import org.apache.http.params.HttpConnectionParams;

import org.apache.http.params.HttpParams;

import org.apache.http.params.HttpProtocolParams;

import org.apache.http.protocol.HTTP;

//import bsh.ParseException;

import com.google.gson.Gson;

/**

 * TODO

 * @Version 1.0

 */

public class HttpClients {

/** UTF-8 */

private static final String UTF_8 = "UTF-8";

/** 日志记录tag */

private static final String TAG = "HttpClients";

/** 用户host */

private static String proxyHost = "";

/** 用户端口 */

private static int proxyPort = 80;

/** 是否使用用户端口 */

private static boolean useProxy = false;

/** 连接超时 */

private static final int TIMEOUT_CONNECTION = 60000;

/** 读取超时 */

private static final int TIMEOUT_SOCKET = 60000;

/** 重试3次 */

private static final int RETRY_TIME = 3;

/**

 * @param url

 * @param requestData

 * @return

 */

public String doHtmlPost(HttpClient httpClient,HttpPost httpPost )

{

String responseBody = null;

int statusCode = -1;

try {

HttpResponse httpResponse = httpClient.execute(httpPost);

Header lastHeader = httpResponse.getLastHeader("Set-Cookie");

if(null != lastHeader)

{

httpPost.setHeader("cookie", lastHeader.getValue());

}

statusCode = httpResponse.getStatusLine().getStatusCode();

if (statusCode != HttpStatus.SC_OK) {

System.out.println("HTTP" + "  " + "HttpMethod failed: " + httpResponse.getStatusLine());

}

InputStream is = httpResponse.getEntity().getContent();

responseBody = getStreamAsString(is, HTTP.UTF_8);

} catch (Exception e) {

// 发生网络异常

e.printStackTrace();

} finally {

// httpClient.getConnectionManager().shutdown();

// httpClient = null;

}

return responseBody;

}

/**

 * 

 * 发起网络请求

 * 

 * @param url

 *            URL

 * @param requestData

 *            requestData

 * @return INPUTSTREAM

 * @throws AppException

 */

public static String doPost(String url, String requestData) throws Exception {

String responseBody = null;

HttpPost httpPost = null;

HttpClient httpClient = null;

int statusCode = -1;

int time = 0;

do {

try {

httpPost = new HttpPost(url);

httpClient = getHttpClient();

// 设置HTTP POST请求参数必须用NameValuePair对象

ListBasicNameValuePair params = new ArrayListBasicNameValuePair();

params.add(new BasicNameValuePair("param", requestData));

UrlEncodedFormEntity entity = new UrlEncodedFormEntity(params, HTTP.UTF_8);

// 设置HTTP POST请求参数

httpPost.setEntity(entity);

HttpResponse httpResponse = httpClient.execute(httpPost);

statusCode = httpResponse.getStatusLine().getStatusCode();

if (statusCode != HttpStatus.SC_OK) {

System.out.println("HTTP" + "  " + "HttpMethod failed: " + httpResponse.getStatusLine());

}

InputStream is = httpResponse.getEntity().getContent();

responseBody = getStreamAsString(is, HTTP.UTF_8);

break;

} catch (UnsupportedEncodingException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生致命的异常,可能是协议不对或者返回的内容有问题

e.printStackTrace();

} catch (ClientProtocolException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生致命的异常,可能是协议不对或者返回的内容有问题

e.printStackTrace();

} catch (IOException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生网络异常

e.printStackTrace();

} catch (Exception e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生网络异常

e.printStackTrace();

} finally {

httpClient.getConnectionManager().shutdown();

httpClient = null;

}

} while (time  RETRY_TIME);

return responseBody;

}

/**

 * 

 * 将InputStream 转化为String

 * 

 * @param stream

 *            inputstream

 * @param charset

 *            字符集

 * @return

 * @throws IOException

 */

private static String getStreamAsString(InputStream stream, String charset) throws IOException {

try {

BufferedReader reader = new BufferedReader(new InputStreamReader(stream, charset), 8192);

StringWriter writer = new StringWriter();

char[] chars = new char[8192];

int count = 0;

while ((count = reader.read(chars))  0) {

writer.write(chars, 0, count);

}

return writer.toString();

} finally {

if (stream != null) {

stream.close();

}

}

}

/**

 * 得到httpClient

 * 

 * @return

 */

public HttpClient getHttpClient1() {

final HttpParams httpParams = new BasicHttpParams();

if (useProxy) {

HttpHost proxy = new HttpHost(proxyHost, proxyPort, "http");

httpParams.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);

}

HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_CONNECTION);

HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_SOCKET);

HttpClientParams.setRedirecting(httpParams, true);

final String userAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.14) Gecko/20110218 Firefox/3.6.14";

HttpProtocolParams.setUserAgent(httpParams, userAgent);

HttpProtocolParams.setVersion(httpParams, HttpVersion.HTTP_1_1);

HttpClientParams.setCookiePolicy(httpParams, CookiePolicy.RFC_2109);

HttpProtocolParams.setUseExpectContinue(httpParams, false);

HttpClient client = new DefaultHttpClient(httpParams);

return client;

}

/**

 * 

 * 得到httpClient

 * 

 * @return

 */

private static HttpClient getHttpClient() {

final HttpParams httpParams = new BasicHttpParams();

if (useProxy) {

HttpHost proxy = new HttpHost(proxyHost, proxyPort, "http");

httpParams.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);

}

HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_CONNECTION);

HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_SOCKET);

HttpClientParams.setRedirecting(httpParams, true);

final String userAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.14) Gecko/20110218 Firefox/3.6.14";

HttpProtocolParams.setUserAgent(httpParams, userAgent);

HttpProtocolParams.setVersion(httpParams, HttpVersion.HTTP_1_1);

HttpClientParams.setCookiePolicy(httpParams, CookiePolicy.BROWSER_COMPATIBILITY);

HttpProtocolParams.setUseExpectContinue(httpParams, false);

HttpClient client = new DefaultHttpClient(httpParams);

return client;

}

/**

 * 打印返回内容

 * @param response

 * @throws ParseException

 * @throws IOException

 */

public static void showResponse(String str) throws Exception {

Gson gson = new Gson();

MapString, Object map = (MapString, Object) gson.fromJson(str, Object.class);

String value = (String) map.get("data");

//String decodeValue =  Des3Request.decode(value);

//System.out.println(decodeValue);

//logger.debug(decodeValue);

}

/**

 * 

 * 发起网络请求

 * 

 * @param url

 *            URL

 * @param requestData

 *            requestData

 * @return INPUTSTREAM

 * @throws AppException

 */

public static String doGet(String url) throws Exception {

String responseBody = null;

HttpGet httpGet = null;

HttpClient httpClient = null;

int statusCode = -1;

int time = 0;

do {

try {

httpGet = new HttpGet(url);

httpClient = getHttpClient();

HttpResponse httpResponse = httpClient.execute(httpGet);

statusCode = httpResponse.getStatusLine().getStatusCode();

if (statusCode != HttpStatus.SC_OK) {

System.out.println("HTTP" + "  " + "HttpMethod failed: " + httpResponse.getStatusLine());

}

InputStream is = httpResponse.getEntity().getContent();

responseBody = getStreamAsString(is, HTTP.UTF_8);

break;

} catch (UnsupportedEncodingException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生致命的异常,可能是协议不对或者返回的内容有问题

e.printStackTrace();

} catch (ClientProtocolException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生致命的异常,可能是协议不对或者返回的内容有问题

e.printStackTrace();

} catch (IOException e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生网络异常

e.printStackTrace();

} catch (Exception e) {

time++;

if (time  RETRY_TIME) {

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

}

continue;

}

// 发生网络异常

e.printStackTrace();

} finally {

httpClient.getConnectionManager().shutdown();

httpClient = null;

}

} while (time  RETRY_TIME);

return responseBody;

}

}

什么是手机的Java?

Java技术是一个开放、标准、通用的网络运算平台,由于其强大的兼容性,已经成为在互联网技术领域被广泛采用的一个成熟的技术平台。Java在1995年推出时,专门面向服务器、储存设备等计算机使用,之后,SUN与微软一度有过相关的争执。2000年9月,SUN向无线终端开放了Java技术的许可,Java有了更广阔的应用领域和发展前景!

Java手机在全球的发展

早在2000年,Java手机一些游戏服务项目已经开始应用,2001年Java手机首先在日本上市。韩国的LG TeleCom公司已于2000年7月提供使用Java技术的新服务项目。

摩托罗拉是最早把Java应用在手机、传呼机等产品的厂商之一。摩托罗拉第一部基于Java编程语言的双频移动电话被称为Timeport P108 ,于2000年一季度开发成功。

真正的Java应用是SUN公布无线终端的Java技术之后,这种技术被称之为“Mobile Information Device(MID)Profile”。MID由Java Community Process(JCP)开发的,参加开发的企业包括Motorola、Nokia、Siemens、富士通、英国Symbian、香港SmarTone、台湾Far EasTone、西班牙Telefonica、美国Nextel、美国在线、爱立信、日立、NTT DoCoMo、DDI、J-Phone、美国Palm Computing、三星、夏普等,众多厂商的参与预示着Java必将走向主流的趋势!

MID以面向嵌入设备的Java环境“Java2 Platform Micro Edition(J2ME)”为基础,通过使用MID,可以提供为顾客定制的交互式无线终端服务。

使用Java编程语言有助于改进手机的互联网连接特性,包括电子邮件、HTML和WAP微型浏览器,同时也可与台式机或Yahoo、 Excite等互联网站点实现应用数据的同步化。

随着越来越多手提电话和个人数字助理开始融入到信息高速公路之上,从移动设备上访问Web站点变得越来越重要。Java开创了消费设备中小型的储存容量的先河,它是用于开发手机、传呼机及其他微型设备应用程序的理想语言。于是,Java手机的全球应用将不可避免!

Java在无线方面的优势

Sun公司推出的基于Java技术的无线服务高级平台的关键组件,对个性化交互式无线服务的开发和配置给以重要支持。该平台的技术规范是由第三代合作项目(3GPP)小组确立的,它适用于基于Java 2 Micro版(J2ME)的移动性信息器件(MID),是无线交互式服务的快速开发的标准平台。Java技术已经用于多种标准系统,如全球移动通信系统(GSM),为服务提供商和开发商提供了丰富的功能,满足了广大客户的不同需求。

J2ME技术一直被3GPP项目小组用作无线器件应用程序开发的业界标准。3GPP是无线业界的一个合作小组,它负责确立新一代无线网络技术规范,MeXe工作小组也在用这一技术规范定义手机应用环境。3GPP MeXe工作小组最近宣布说,这一技术规范将是新一代3GPP移动手机的技术规范。

Sun公司推出的新的J2ME无线工具集将使内容提供商更容易地开发和配置新的无线服务。该无线工具集为Java技术开发商提供了更有效的开发环境、文档和实例,使适用于MID器件的应用程序和服务的开发更方便、更容易。该工具集与Forte工具紧密结合,使开发商在应用程序的开发过程中,从始至终无需再支付其他成本费用。

由于Java平台可用于提供个性化的交互式内容,因此它能使运营商和手机生产厂商研制和提供各种不同的无线产品与服务。对消费者而言,基于Java技术的交互式服务将会大大改变今天基于文本的静态内容。

Java平台可用于小到客户身份认定卡、大到交互式J2ME环境的各种应用程序的开发和配置。J2EE技术为无线通信解决方案的管理提供了重要的基础。有了J2EE平台,电信提供商采用的硬件就可以自由选择,不再受制于任何硬件厂商。这就是说,由于J2EE技术的集成性和适应性,端到端的无线服务可迅速开发与配置,网络设备(包括服务器)可以从多厂商采购。

换言之,J2EE功能可以为我们实现应用领域、流动商务、流动办公和信息点播的目标,这些利用手机随时随地进行交流、高效办公工具、个性化定制商务、生活工作和娱乐信息等。无论是 股票、外汇等 地址簿、日历、文件管理 天气预报和外汇等,均能通过J2EE加以落实。

Java是为网络电脑设计的一个开放的标准化通用平台。目前使用Java设计的应用程序层出不穷、丰富多彩,由于Java的充分兼容,因此不论我们身处何处、使用何种操作系统或设备,都能轻而易举地享受精彩纷呈的网上世界。而无线Java是Java 2微版本的一部分,所占空间不过几十个KB。它是完全针对手机或者是类似手机(比如PDA)的一些小型终端产品而设计的一个平台,任何型号的手机都可以在这个平台上共享乐趣无穷的无线Java世界。

随着J2EE技术的不断完善与发展,发展商们将对具有J2EE功能的手机用户提供更还更全面的服务,譬如互动游戏、互动新闻、增强手机连接到无线网络后进行数据交换的安全性、加载以Java语言写成的内容,以及遥控家用电器……这些都是J2EE可以预见的美好应用前景。

摩托罗拉的一项市场调查显示,到2007年,世界范围内的Java手机用户将达到4.5亿,Java手机的销售数量也将占到整个手机销售数量的74%。目前手机厂商已经为用户提供了60余款支持Java功能的手机。

Java手机登陆中国市场

无线Java服务商用业务进入中国市场有着特殊意义,作为全球最快、最大的无线通信市场,任何业务的成功都将带动一场通信世界的革命,都将带动产业的大发展。中国移动副总鲁向东表示,此次大赛可以视作中国移动正式商用无线Java服务前的预热,无线Java服务不久将正式投入商用。此次商用的成功与否将在未来很长一段时间左右相关新业务的命运。

为了开好无线Java应用的头,此次应用大赛的组织者不仅包含了中国移动和摩托罗拉这样的行业巨头,还将SUN、诺基亚、爱立信、西门子等Java产业链相关行业的领先企业也一网打尽。为了鼓励参赛者,中国移动甚至允诺对于此次无线Java应用设计大赛的获奖者优先提供SP(内容提供商)、AP(应用提供商)的执照,“通过此次大赛,中移动将帮助他们构建一个成功的商业模式。”中国移动梦网中心主任崔健说道。

“从此次大赛的阵容就足可以看出中国移动对无线Java应用业务的重视。”一位业内人士表示,Java业务未来很可能是中国移动继彩信业务之后的又一个业务亮点,“毕竟,基于Java的内容和应用实在太广泛了,而且Java又是未来手机发展的一个方向。”

值得注意的是,在此次大赛的组织者名单上出现了新华波导和东信两家国内手机企业,这也是类似活动中首次出现国产手机的身影。“这表明经过几年的努力,国产手机已经初步跟上了国外手机厂商对技术的研发步伐。”一位业内人士认为这是一个很可喜的现象。

自2001年中国移动开通“移动梦网”以来,中国移动先后在SMS、MMS、移动定位以及现在的Java商用等应用方面积极探索,并积极和国内外领先厂商合作,推动应用、挖掘价值、推动产业整体升值,从而将中国移动的影响力提高了很多,这将为中国移动在以后的数据业务发展方面打下良好的基础,能够及时带动整个产业链群体进入预涉领域,提高了自身的竞争力和影响力,并将自己逐步发展成为世界一流的移动运营商!

java手机版怎么输入账号登录

现系统的登录模块采用以前的后端以session为token的方式。

在手机端输入用户名或者密码似乎不太方便,类似qq,微信这种似乎登陆一次就不用再登录了,该功能是如何实现的?

我自己考虑有两种实现方式,

第一种简单粗暴将session或者说token超时时间设置为无限长。

第二种就是保存用户名密码在本地。

因为Java Web中shiro或者Spring secure这些库就是提供以session这种方式实现授权的。请问有没有其他方式可以简单的实现RESTFul 接口的认证模块

作为移动应用的后端使用session这种方式有那种优缺点?作为web方式的话session是否还是当前的最佳实践?

如何在安卓手机里运行JAVA程序?

安装JAVA程序方法:

在网站上搜索一个APK格式的JAVA虚拟机,下载安装程序后安装在手机上,

安装后手机上“所有程序”中增加此程序的图标,如下图(安装方法与安装其他程序一样,通过手机浏览器下载安装或通过电脑下载安装包)

先下载好自己需要的JAVA安装包放在储存卡上,进入手机已安装好的“JAVA“,

再点击菜单键(手机下方三条横线的图标),点击储存卡选项。

手机上会自动识别到储存卡上的JAVA软件,点击需要安装的一个软件,我们以安装QQ软件为列(注意:并不是保存的所有的JAVA软件都会被识别),选择后点击确定。

手机会提示选择文件夹,在点击空白处会自动跳转到下一个安装界面。

界面直接切换到下一步操作界面时,会提示:应用程序手机QQ不受信任,确定继续吗?请点击“确定”。

点击“确定“后,手机将开始安装JAVA软件。

安装完成后,手机会直接提示:想要启动应用程序吗?如需要启动就点击“确定“,如不需要就点击”取消“,QQ软件就已安装完毕,如果需要使用QQ软件,就进入手机上

安装的“JAVA”程序,安装的JAVA软件都会在此程序打开后的页面显示,点击“手机QQ”即可运行。

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。Java由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。2010年Oracle公司收购Sun Microsystems。

Java分为三个体系,分别为Java SE(J2SE,Java2 Platform Standard Edition,标准版),

JavaEE(J2EE,Java 2 Platform, Enterprise Edition,企业版),

Java ME(J2ME,Java 2 Platform Micro Edition,微型版)。

java可以开发手机端网页吗

Java是可以开发手机端网页的,可以使用htmlParser对新闻的链接进行解析,然后呈现出来:

1、要爬虫一个html数据在之前可以使用HtmlParser,见链接 但自从jsoup诞生后,使用比HtmlParser更方面。此处就是利用jsoup解析html的,需要加载lib文件夹下的jsoup-1.7.2.jar、jsoup-1.7.2-sources.jar,自己add to build path即可。后者是源码,可以查看,真正的包就第一个。

2、jsoup可以直接打开一个网页url,此处为了方便已经写了从url获取string类型的html代码了。所以可以直接利用Document doc = Jsoup.parse(htmlStr); 得到Document类。

以业界新闻为例,,按快捷键ctrl+u查看其源码,搜索关键字unit可以看到:

每一个新闻就是以关键字“unit”来标识的,第一页一共有10条新闻所以有10个unit。Elements units = doc.getElementsByClass("unit"); 得到这10个新闻item的集合。

3、接下来就是对一个新闻提取具体信息

关于java手机端和java手机端接口开源的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-21,除非注明,否则均为首码项目网原创文章,转载请注明出处。