5.获取应用程序版本号
//用PackageManager拿到PackageInfo,PackageInfo中的versionName
PackageInfo packinfo = context.getPackageManager().getPackageInfo(
context.getPackageName(), 0);
String version = packinfo.versionName;
6.源代码版本控制
-
安装VisualSVN Server——SVN服务器,一直下一步即可
-
导入仓库到服务器
1.在Repositories处右键,选择Import Existing Repository
2.选择Copy repository from another location,下一步
3.点击Browse,选择仓库路径,”代码/代码仓库/Repository/project”,点击下一步
4.点击Import
5.点击Finish,导入完成
- 安装TortoiseSVN——SVN客户端,一直下一步即可
1.在想要检出代码的地方右键,选择SVN Checkout
2.URL of repository处填https://127.0.0.1
/svn/project/,地址也可以从SVN服务器的project处右键选择Copy URL to clipboard拷贝
3.Checkout directory出填写检出代码要放的位置,然后点击OK
4.完成代码的检出
- 将代码更新到指定版本
1.project文件夹出右键,选择Update to version
2.点击show log
3.点击左下角的show all
4.选择要更新的版本,点击OK
5.版本更新完成
7.获取服务器版本号
//获取服务器地址
String path = getResources().getString(R.string.url);
URL url = new URL(path);
//创建网络连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod(“GET”);
conn.setConnectTimeout(5000);
//发出请求,获得返回码
int code = conn.getResponseCode();
if(code ==200){
//获取服务器返回的流并进行解析
InputStream is = conn.getInputStream();
String result = StreamTools.readStream(is);
//转化为json并解析出版本号
JSONObject json = new JSONObject(result);
String serverVersion = json.getString(“version”);
Log.i(TAG,“服务器版本:”+serverVersion);
}
8.将流转化为字符串
public static String readStream(InputStream is) throws IOException{
//ByteArrayOutputStream类是在创建它的实例时,程序内部创建一个byte型数组的缓冲区,缓冲区会随着数据的不断写入而自动增长。可使用 toByteArray()和 toString()获取数据
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = -1;
while((len = is.read(buffer))!=-1){
baos.write(buffer, 0, len);
}
is.close();
return baos.toString();
}
9.弹出对话框
1.使用AlertDialog.Builder
2.设置标题、信息、点击事件等
3.调用show方法显示出来,调用dismiss方法消失
10.下载apk
1.使用开源框架xUtils
2.使用HttpUtils的download方法,填入三个参数:服务器下载地址,手机中的存储位置、回调事件
3.回调事件中有三个常用的方法:onSuccess下载成功、onFailure下载失败、onLoading更新下载进度
xUtils补充
http://my.oschina.net/u/1171837/blog/147544 作者博客
11.安装apk
1.调用系统的安装apk的界面,传入对应的参数
2.具体实现方式
Intent intent = new Intent();
intent.setAction(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.setDataAndType(
Uri.fromFile(fileinfo.result),
“application/vnd.android.package-archive”);
startActivity(intent);
on(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.setDataAndType(
Uri.fromFile(fileinfo.result),
“application/vnd.android.package-archive”);
startActivity(intent);