最近开始微信公众平台的捣鼓,但相信和很多新手一样,遇到的第一件事就是如何配置url,主要是微信的80端口的蛋疼限制,我想这其中的流程应该是这样 的。我们在申请测试帐号时,微信需要指定一个URL和TOKEN,这样微信就可以根据分配给你的APPID和SECRET来通过你提供的URL来认证并且 通过这个接口返回你要的数据,所以也就是我们的程序和微信是能过这个URL来完成交互的,根据这个思路,我们需要一个能让微信访问到你项目的URL,至于 TOKEN可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。 在公司,首先应当解决的是怎么让外网访问你的项目,我用的是JAVA语言来做开发,刚 开始想通过3322动态解析平台让外网映射到公司来,然后用路由来做一个映射到我的tomcat 8080端口,但尝试后发现3322这个是不能用80端口做映射(很多都这样),所以没办法,也不能直接上公司的服务器来开发,而且80会被其他端口占 用,如果把项目托管到云服务器上也不方便开发,幸好在一个群里遇到高手,建议用ngrok直接把本地开放给外网(大喜),下载后直接把这个解压(我用的是ubuntu,所以下的linux版),在终端里运行./ngrok 8080,这样ngrok会返回一个动态的URL,果然可以访问了,但问题是我在微信里填写的这个URL不可能每次都变呀,于是运行./ngrok -subdomain=test 8080,但这个需要注册才可以用,于是去官网注册。 再根据提示运行一次验证,然后运行这个就OK了,这样我的URL就固定为http://test.ngrok.com。于是乎,我填写微信的URL为 http://test.ngrok.com/mywork/app/action/service(项目访问路径), 打开这tomcat,这样不要做任何更改就可以让外网访问了,然后点击申请认证,就可以看到微信平台已经访问到这我的项目了,接下来做一些验证(下篇贴出 验证代码-java版),OK。这下可以看到配置成功了。至此结束,开始微信之旅,这里感谢群里的老K,和其他的一些兄弟。
来源:
http://blog.csdn.net/aj1031689/article/details/17436125
//强制显示软银盘
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
//edittext默认焦点
scanbill.setFocusable(true);
scanbill.requestFocus();
scanbill.setFocusableInTouchMode(true);
第一步:在A类中点击按钮时调用B类
A类中:
int OUTBILL_CODE = 10;//全局啊
case R.id.diyoutbill:
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(ctx, Itemdiydown.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivityForResult(intent,OUTBILL_CODE);
break;
第二步:
B类中:
Bundle bundle = new Bundle();
bundle.putString("downtype",pubdowntype);
bundle.putString("startDate",pubstartDate);
bundle.putString("endDate", pubendDate);
Itemdiydown.this.setResult(RESULT_OK, this.getIntent().putExtras(bundle));
Itemdiydown.this.finish();//关闭当前窗口
第三类:
返回A类中:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == OUTBILL_CODE&& resultCode == RESULT_OK) {//
Bundle bundle = data.getExtras();
startDate = bundle.getString("startDate");
endDate = bundle.getString("endDate");
downtype = bundle.getString("downtype");
//执行事件
}
}
摘要: 转自:http://blog.sina.com.cn/s/blog_4f1c99de0101hur1.html除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPrefer...
阅读全文
java.util.Properties props = new java.util.Properties();
in = getClass().getResourceAsStream("/HotelBeContextDAO.properties");
try {
props.load(in);
props.getProperty("officeCode")
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
转自:http://www.tuicool.com/articles/3mE7BzR
以jquery mobile为例
1.在android界面拖入一个webview,然后添加一个internet权限
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
.............................
View Code
2. 在assets目录里面放入js,css,html资源文件
3.在写本地html的时候引入assert里的对应路径
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title> 标题 </title>
<link rel="stylesheet" type="text/css" href="file:///android_asset/css/jquery.mobile-1.4.2.min.css">
<script src="file:///android_asset/js/jquery-1.7.1.min.js"></script>
<script src="file:///android_asset/js/jquery.mobile-1.4.2.min.js"></script>
</head>
<body>
<div data-role="page">
<div data-role="header">
<h1>My Title</h1>
</div>
<div data-role="content">
<ul data-role="listview" data-inset="true" >
<li><a href="#">Acura</a></li>
<li><a href="#">Audi</a></li>
<li><a href="#">BMW</a></li>
<li><a href="#">Cadillac</a></li>
<li><a href="#">Ferrari</a></li>
</ul>
</div>
</div>
</body>
</html>
View Code
4.在代码里访问页面
package com.example.asd_webview;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.webkit.WebSettings;
import android.webkit.WebSettings.RenderPriority;
import android.webkit.WebView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView webview = (WebView)findViewById(R.id.webView1);
WebSettings wv_setttig = webview.getSettings();
wv_setttig.setJavaScriptEnabled(true);
String url = "file:///android_asset/index.html";
webview.loadUrl(url);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
View Code
5.最后效果如下: