zoukankan      html  css  js  c++  java
  • 获取APP最新版本的接口案例

    思路:

      开发初期。安卓的应用可能没有上传到应用市场,可以把应用apk放到服务器上,供用户下载。把对应用的版本信息整理成为一个XML文件,放到服务器上,通过接口读取xml文件,获取有版本信息,然后安卓端判断版本是不是最新的,如果不是最新的提示用户升级。

    XML文件内容:

    <update>  
        <version>18</version>
        <name>2.1.4</name>
        <content>版本更新描述</content>
        <url>http://app.xxxx.com/Public/apk/BusGCF.apk</url>
    </update>

    接口DEMO:

        //获取最新版本信息
        public function getNewVersions($param){
            $client = $param->client;
    
            //获取安卓的最新版本信息
            if($client == "Android") {
                $xml = "";
                //打开文件
                $f = fopen('http://app.xxxx.com/Public/apk/version.xml', 'r');
                //循环读取文件的全部内容,每次读取4096个字符
                while( $data = fread( $f, 4096 ) ) {
                    $xml .= $data;
                }
                //关闭一个打开文件
                fclose( $f );
    
                //上面读取数据
                preg_match_all( "/<update>(.*?)</update>/s", $xml, $humans ); //匹配最外层标签里面的内容
    
                foreach( $humans[1] as $k=>$human ) {
                    preg_match_all( "/<version>(.*?)</version>/", $human, $version ); //匹配出版本号
                    preg_match_all( "/<content>(.*?)</content>/", $human, $content ); //匹配新版本的描述
                    preg_match_all( "/<name>(.*?)</name>/", $human, $name ); //匹配出姓名
                    preg_match_all( "/<url>(.*?)</url>/", $human, $url ); //匹配出Url
                }
    
                $r_version = $version[1][0];
                $r_content = $content[1][0];
                $r_name = $name[1][0];
                $r_url = $url[1][0];
    
                if($r_version == '' or $r_name == '' or $r_url == '') {
                    $array['status'] = 1;
                    $array['comment'] = '查询失败!';
                    return $array;
                }
    
                $array['status'] = 0;
                $array['comment'] = '查询成功';
                $responseParameters['version'] = $r_version;
                $responseParameters['content'] = $r_content;
                $responseParameters['name'] = $r_name;
    //        $responseParameters['url'] = "http://app.xxxx.com/Public/apk/BusGCF.apk";
                $responseParameters['url'] = $r_url;
                $array['responseParameters'] = $responseParameters;
            }
    
    
            return $array;
        }
  • 相关阅读:
    提交App Store注意事项1
    IOS中NSUserDefaults的用法(轻量级本地数据存储)
    iOS分类中通过runtime添加动态属性
    linux中计划任务执行脚本
    jquery插件Flot的简单讲解
    linux中init.d文件夹的说明
    使用python执行linux命令
    python中logging模块的使用
    策略模式和观察者模式
    ubuntu中将某一程序设置为开机启动项的方法
  • 原文地址:https://www.cnblogs.com/wangyuman26/p/5922974.html
Copyright © 2011-2022 走看看