精华内容
下载资源
问答
  • 平台运营 APP 需求调查 名 称 姓 名 职 务 概 负 责 人 电 话 手 机 况 单位地址 邮政编码 服务机构属性 1大学 2 科研院所 3 企业 4 名称 注明在建或拟建 1. 目前是否已建设了用于公众服务 政府信息公开的相关...
  • 利用Bmob更新APP

    千次阅读 2018-08-28 11:14:24
    首先我们新建update objectID是唯一标示,不能改变,我们根据这个ID获取APK文件的下载链接更新内容text,Code是APP版本号,服务器上的CODE号一定要比上个版本大。   流程:开启APP——检测CODE——CODE大于....

    在写自己App的时候,APP更新是非常重要的,后续版本的发布及时送到用户

     

    效果图:

    看下Bmob的后台,创建应用,配置啥的就不说了

    首先我们新建表update

    objectID是唯一标示,不能改变,我们根据这个ID获取APK文件的下载链接更新内容text,Code是APP版本号,服务器上的CODE号一定要比上个版本大。

     

    流程:开启APP——检测CODE——CODE大于当前CODE执行更新——下载APK——install

     

    获取APP版本号的工具类:

    import android.content.Context;
    import android.content.pm.PackageManager;
    
    /*获取版本code和name的工具类*/
    public class APKVersionCodeUtils {
    
        /* 获取当前本地apk的版本*/
        public static int getVersionCode(Context mContext) {
            int versionCode = 0;
            try {
                //获取软件版本号,对应AndroidManifest.xml下android:versionCode
                versionCode = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), 0).versionCode;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
            return versionCode;
        }
    
    
        /* 获取版本号名称*/
        public static String getVerName(Context context) {
            String verName = "";
            try {
                verName = context.getPackageManager().
                        getPackageInfo(context.getPackageName(), 0).versionName;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
            return verName;
        }
    
    }
    

    versionCode是版本号,,cersionName是版本号

    调用:

          int versionCode = APKVersionCodeUtils.getVersionCode(this) ;

           String versionName = APKVersionCodeUtils.getVerName(this);

    update.java

    import cn.bmob.v3.BmobObject;
    import cn.bmob.v3.datatype.BmobFile;
    
    public class update extends BmobObject {
    
    
        public BmobFile getAPK() {
            return APK;
        }
        public void setAPK(BmobFile APK) {
            this.APK = APK;
        }
        BmobFile APK;
    
    
    
        public String getText() {
            return text;
        }
        public void setText(String text) {
            this.text = text;
        }
        String text;
    
        public String getCode() {
            return Code;
        }
    
        public void setCode(String code) {
            Code = code;
        }
    
        String Code;
    
    
        public String getapkUrl(){
            return APK.getFileUrl();
        }
    
    
    }

    需要注意的是getAPKurl()这个方法是获取APK的下载链接

    获取版本Code和APK链接以及text:

        //查询单条数据
        public void querySingleData() {
            BmobQuery<update> bmobQuery = new BmobQuery<update>();
            bmobQuery.getObject("MF4j000B", new QueryListener<update>() {
                @Override
                public void done(update object, BmobException e) {
                    if (e == null) {
                        url = object.getapkUrl();
                        code1 = object.getCode();
                        text = object.getText();
                        System.out.println("APK更新地址:" + url);
                        System.out.println("版本号:" + code1);
                        System.out.println("更新内容" + text);
                        check(code1);
                    } else {
                        Log.i("bmob图片", "失败:" + e.getMessage() + "," + e.getErrorCode());
                    }
                }
            });
        }

    检测版本CODE:

        //判断版本大小
        public void check(String code1) {
            code = APKVersionCodeUtils.getVersionCode(this) ;
            int i = Integer.valueOf(this.code1).intValue();
            if (i > code) {
                showDialog();
            }
        }

    如果需要更新,显示Dialog给用户提示更新:

    private void showDialog() {
            AlertDialog dialog = new AlertDialog.Builder(this)
                    .setIcon(R.drawable.ic_launcher_background)//设置标题的图片
                    .setTitle("检查到新版本")//设置对话框的标题
                    .setMessage(text)//设置对话框的内容
                    //设置对话框的按钮
                    .setNegativeButton("取消", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            //Toast.makeText(MainActivity.this, "点击了取消按钮", Toast.LENGTH_SHORT).show();
                            dialog.dismiss();
                        }
                    })
                    .setPositiveButton("更新", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            //Toast.makeText(MainActivity.this, "点击了确定的按钮", Toast.LENGTH_SHORT).show();
                            //postUrl(url);
                            mIsCancel=false;
                            //展示对话框
                            showDownloadDialog(url);
                            dialog.dismiss();
                        }
                    }).create();
            dialog.show();
        }
    
        /*
         * 显示正在下载对话框
         */
        protected void showDownloadDialog(String url) {
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle("下载中");
            View view = LayoutInflater.from(mContext).inflate(R.layout.dialog_progress, null);
            mProgressBar = (ProgressBar) view.findViewById(R.id.id_progress);
            builder.setView(view);
    
            builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // 隐藏当前对话框
                    dialog.dismiss();
                    // 设置下载状态为取消
                    mIsCancel = true;
                }
            });
    
            mDownloadDialog = builder.create();
            mDownloadDialog.show();
    
            // 下载文件
            downloadAPK(url);
        }

    downloadAPK()及install()

    /*
         * 开启新线程下载apk文件
         */
        private void downloadAPK() {
            new Thread(new Runnable() {
                @Override
                public void run() {
                    try{
                        if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
                            String sdPath = Environment.getExternalStorageDirectory() + "/";
    //                      文件保存路径
                            mSavePath = sdPath + "SITdownload";
    
                            File dir = new File(mSavePath);
                            if (!dir.exists()){
                                dir.mkdir();
                            }
                            // 下载文件
                            HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
                            conn.connect();
                            InputStream is = conn.getInputStream();
                            int length = conn.getContentLength();
    
                            File apkFile = new File(mSavePath, mVersion_name);
                            FileOutputStream fos = new FileOutputStream(apkFile);
    
                            int count = 0;
                            byte[] buffer = new byte[1024];
                            while (!mIsCancel){
                                int numread = is.read(buffer);
                                count += numread;
                                // 计算进度条的当前位置
                                mProgress = (int) (((float)count/length) * 100);
                                // 更新进度条
                                mUpdateProgressHandler.sendEmptyMessage(1);
    
                                // 下载完成
                                if (numread < 0){
                                    mUpdateProgressHandler.sendEmptyMessage(2);
                                    break;
                                }
                                fos.write(buffer, 0, numread);
                            }
                            fos.close();
                            is.close();
                        }
                    }catch(Exception e){
                        e.printStackTrace();
                    }
                }
            }).start();
        }
    
        /**
         * 接收消息
         */
        private Handler mUpdateProgressHandler = new Handler(){
            @Override
            public void handleMessage(Message msg) {
                switch (msg.what){
                    case 1:
                        // 设置进度条
                        mProgressBar.setProgress(mProgress);
                        break;
                    case 2:
                        // 隐藏当前下载对话框
                        mDownloadDialog.dismiss();
                        // 安装 APK 文件
                        installAPK();
                }
            };
        };
    
        /*
         * 下载到本地后执行安装
         */
        protected void installAPK() {
            File apkFile = new File(mSavePath, mVersion_name);
            if (!apkFile.exists()){
                return;
            }
            Intent intent = new Intent(Intent.ACTION_VIEW);
    //	    安装完成后,启动app(源码中少了这句话)
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            Uri uri = Uri.parse("file://" + apkFile.toString());
            intent.setDataAndType(uri, "application/vnd.android.package-archive");
            mContext.startActivity(intent);
        }
    

    最后是mainfest权限:

        <uses-permission android:name="android.permission.INTERNET" />
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
        <uses-permission android:name="android.permission.WAKE_LOCK" />
        <uses-permission android:name="android.permission.READ_PHONE_STATE" />
        <!--往sdcard中写入数据的权限 -->
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <!--在sdcard中创建/删除文件的权限 -->
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

    API版本不能设置太高:

    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 26
        defaultConfig {
            applicationId "com.example.alex233.update"
            minSdkVersion 16
            targetSdkVersion 22
            versionCode 11
            versionName "2.9"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:26.+'
        implementation 'com.android.support.constraint:constraint-layout:1.1.2'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
        //以下SDK开发者请根据需要自行选择
        //bmob-sdk:Bmob的android sdk包,包含了Bmob的数据存储、文件等服务,以下是最新的bmob-sdk:
        //3.5.5:请务必查看下面注释[1]
        compile 'cn.bmob.android:bmob-sdk:3.6.3'
        //bmob-push:Bmob的推送包
        compile 'cn.bmob.android:bmob-push:0.8'
        //bmob-im:Bmob的即时通讯包,注意每个版本的im依赖特定版本的bmob-sdk,具体的依赖关系可查看下面注释[2]
        compile 'cn.bmob.android:bmob-im:2.1.0@aar'
        //如果你想应用能够兼容Android6.0,请添加此依赖(org.apache.http.legacy.jar)
        compile 'cn.bmob.android:http-legacy:1.0'
    
    }
    

    以上就是版本更新的内容了;

    其实可以用android自带的download下载器

    在dialog点击确认的点击事件中:

                    Intent intent = new Intent();
                    intent.setData(Uri.parse(url));//Url 就是你要打开的网址
                    intent.setAction(Intent.ACTION_VIEW);
                    startActivity(intent); //启动浏览器

    就很简单,不需要下面的一大堆了

    完整代码:

    https://github.com/IMAlex233/update.git

     

    展开全文
  • 云App接入总结

    千次阅读 2018-03-01 14:19:05
    云App接入总结 在app中接入听,可以高效率的捕获异常信息,是一款比较好用的统计分析工具,核心功能有:崩溃分析,交互分析,网络请求...1、添加听符号插件 apply plugin: ‘newlens’ 添加这个插件...

    听云App接入总结

    在app中接入听云,可以高效率的捕获异常信息,是一款比较好用的统计分析工具,核心功能有:崩溃分析,交互分析,网络请求分析,错误分析,ANR分析等。
    在接入听云App的过程中,遇到了一些坑,在这里做个总结。

    注意事项

    本文只针对Andorid Studio开发工具。

    1、添加听云符号表插件

    apply plugin: ‘newlens’

    添加这个插件的时候,不能将其放在library的build中,只能放在主module的build中
    同时,在添加的时候,应该写在 apply plugin:’maa’、apply plugin:’oneapm’、growingI() 后面,避免冲突。
    其它的配置,既可写在library的build中,也可写在module的build中,如 引入mavencentral()或compile “com.networkbench.newlens.agent.android:nbs.newlens.agent:2.8.1”

    错误形式:
    这里写图片描述

    正确形式:
    这里写图片描述

    2、Android Studio使用gralde版本要和听云sdk的版本适配

    Android Studio使用的gradle插件是3.0.0以上版本,需要升级听云sdk至2.7.1(含)及以上版本。
    gradle版本可在项目(Project)的build.gradle文件中查看:
    这里写图片描述

    这里写图片描述

    3、打印听云日志,查找错误。

    如听云接入没有问题,并且以上1和2也是正确的,项目运行后,听云仍启动失败:
    这里写图片描述
    可打印听云运行时的日志,查找错误。
    在Terminal面板中输入:

    gradlew clean assembleDebug –info –stacktrace 1>log.txt 2>&1

    等待打印,项目越大,打印的时间越长。
    打印完成后,会在项目中产生log.txt文件:
    这里写图片描述
    项目的整个启动过程,都在这个文件里,可在里面查找是否是其它因素影响了听云的启动。

    4、多次修改后,听云会存在缓存,致使一直运行不成功,可以对项目进行clean或重启Android Studio。

    5、听云运行成功:

    这里写图片描述

    扩展

    免费版的听云App里,只能建两个项目,当然,一个key可被多个项目使用,但是,这样会显得控制台收到的信息非常杂乱,很难辨别出这是来自哪个项目的bug信息。
    当然,你也可以去买收费版的听云App,收费版的可多建很多项目,价格小贵。
    有一种方法,使用免费版的听云,在控制台里可标志出这是来自哪个项目的bug信息,即在初始化后,设置个ID。
    自定义用户ID

    NBSAppAgent.setLicenseKey("bd2e0a7cc4bd40a6877d9579c947c221")
                    .withLocationServiceEnabled(true)
                    .start(this.getApplicationContext());
            NBSAppAgent.setUserIdentifier("com.example.risencn_mobile_yh");

    setUserIdentifier方法里可放入项目的包名。
    设置好后,在听云控制台崩溃的详细信息里,会标志出这是哪个项目抛出的异常信息。

    总结:这里只是本人在接入时遇到的坑,具体的操作文档,请参考听云官方文档。

    展开全文
  • 潮汐 v1.1.4

    2019-03-15 13:42:46
    潮汐表app是一款检测潮汐的工具,在赶海的时候潮汐表app能准确看到涨潮退潮的时间和次数,赶海必备,海钓必备,沙滩必备,旅游必备。潮汐表app,不仅仅查潮汐。 基本简介 潮汐,前身是...

    类型:系统工具
    版本:v1.1.4
    大小:14.1M
    更新:2019/3/7
    语言:简体
    等级:
    平台:安卓, 4.1以上, 4.4以上
    下载地址:
    云潮汐表 v1.1.4(1)
    云潮汐表 v1.1.4(2)
    云潮汐表 v1.1.4(3)
    云潮汐表app是一款检测潮汐的工具,在赶海的时候云潮汐表app能准确看到涨潮退潮的时间和次数,赶海必备,海钓必备,沙滩必备,旅游必备。云潮汐表app,不仅仅查潮汐。

    基本简介

    云潮汐,前身是全国潮汐表,使用新架构能够支Android/IOS/手机浏览器/微信内置浏览器等多种移动操作系统。

    云潮汐,旨在建立一个完善的跨客户端潮汐表交流场所,能够包含海钓航海气象天气等多种行业。

    在此缅怀一下《全国潮汐表2012-2016》

    告别传统观星望月计算潮汐时间的尴尬,让你有一个更加直观的方式看潮汐。

    常见问题

    你是否有过到海边赶海遇到涨潮的无奈?

    你是否有过玩过头被困在礁石上的困境?

    你是否有过海边拍照反而被海浪打湿了衣服的窘迫?

    全国潮汐表,正是为这个而制作的。

    展开全文
  • 因图纸或工程量中的错误而索赔属于()。A.因合同文件引起的索赔B.有关工程施工方案的索赔C.投标保证金的数额一般为投标价的()。A.2%B.3%C.5%D.10%选用合适的试剂,可吸收空气中的S02、H2S、HF等属于()。...

    因图纸或工程量表中的错误而索赔属于()。A.因合同文件引起的索赔B.有关工程施工方案的索赔C.

    投标保证金的数额一般为投标价的()。A.2%B.3%C.5%D.10%

    选用合适的试剂,可吸收空气中的S02、H2S、HF等属于()。A.吸收法B.吸附法C.催化法D.燃烧法

    某投资项目的年固定成本为 2400 万元,单个产品售价为 1000元,每单个产品的变动 成本为400 元

    施工企业的存货主要包括()。 A.各类库存材料 B.周转材料 c.机械设备 D.低值易耗品 E.委托

    项目经济评价中,存在不确定性因素,不确定性产生的原因有()舂 . A.所依据的基本数据不足或统计

    项目管理信息系统的英文缩写是()。A.MISB.PPC.PMISD.PSWS

    敏感性分析的作用不包括()。 A.在缺少资料的情况下,弥补和缩小对未来方案预测的误差 B.了解

    FIDIC代表的是最具权威的()组织。A.发包人B.承包人C.咨询工程师D.建筑师

    设备更新原则有()。 A.不考虑沉没成本 B.逐年滚动比较 c.客观正确地比较新旧设备现金流量 D.

    某工程基础施工中出现了意外情况,导致工程量增加,如果合同规定工程量增减5%为承包商应承担的

    环境管理体系中的二级要素“目标”属于环境管理体系一级要素中的()范畴。A.环境方针B.规划C.实

    项目管理信息系统的英文缩写是()。A.MISB.PPC.PMISD.PSWS

    长期负债核算的内容有()。 A.应付工资 B.长期借款 c.应付债券 D.长期应付款 E.专利应付款

    长期负债核算的内容有()。 A.应付工资 B.长期借款 c.应付债券 D.长期应付款 E.专利应付款

    下列对资产理解正确的是()。 A.资产给企业带来经济利益 B.资本是一项经济资源 c.能够以货币

    按规定应该招标的建设工程项目,一般应采用()方式。A.公开招标B.邀请招标 C.议标D.发标

    文件和资料控制是职业健康安全管理体系()一级要素所包含的二级要素。A.职业健康安全方针B.策

    在国际工程建设过程中,当发生承包合同争议时,解决的方式一般有()。 A.协商 B.调解 C.索赔 D.

    在工程项目建设项目中,()对建设的各方具有监督管理的职能。A.项目业主B.监理单位C.承建商D.政

    建设工程施工安全控制中要求对危险源进行分类,“可能发生意外释放的能量的载体或危险物质”称作

    单价合同()不存在工程量方面的风险。A.仅对业主B.仅对承包商C.对业主和承包商D.对业主或者承

    某投资硬目总投资 3600 万元,项目完成后每年净收益为 400 万元,则该项目的静态投资回收期为()。

    建设工程施工安全控制中要求对危险源进行分类,“可能发生意外释放的能量的载体或危险物质”称作

    AIA系列合同条件中A系列是关于()。A.发包人与承包人之间的合约文件B.发包人与提供专业服务的

    当一项长期投资的净现值大于零时,下列说法中不正确的是()。 A.该方案可投资 B.该方案未来报酬

    项目实施的工作项编码应覆盖项目实施工作任务目录的全部内容,包括设计准备阶段的工作项、设计

    长期负债核算的内容有()。 A.应付工资 B.长期借款 c.应付债券 D.长期应付款 E.专利应付款

    因果分析图的基本原理是对每一个质量特性或问题逐层深入排查可能出现的原因,每一张分析图都应

    对于同一投资方案,下列说法不正确的是()。 A.资本成本越高,净现值越低 B.资本成本低于内部

    评标委员会推荐的中标候选人应当限定在()人,并标明排列顺序。A.2 B.3C.⒈~3D.1~5

    下列对资产理解正确的是()。 A.资产给企业带来经济利益 B.资本是一项经济资源 c.能够以货币

    设备寿命相同,在对设备租赁和选优时,一般采用()。 A.年值法 B.净现值法 C.内部收益率法 D.投

    按规定应该招标的建设工程项目,一般应采用()方式。A.公开招标B.邀请招标 C.议标D.发标

    设备更新原则有()。 A.不考虑沉没成本 B.逐年滚动比较 c.客观正确地比较新旧设备现金流量 D.

    展开全文
  • 然后发现Bmob后端。于是就弄了个登录模块的接口。。发现也挺省事的。当然题外话(还是特么要学JAVAWEB。自己没事私底下可以搞个后台玩玩) 先看效果图 进入Bmob官网后 注册登录后 点击创建应用 这是我的...
  • 网易音乐虽是一款音乐app,但有人说它也是社交界的一股清流以及一匹黑马。音乐带给人的感染,激发着很多人在这里表达着他们的情绪和心声。网易音乐上的真实用户点评,不仅被印在地铁的广告牌上,还在朋友圈频频...
  • 前言由于最近几年移动App的兴起,手机自带表情作为用户输入的方式开始流行。但是emoji表情作为一种特殊的编码方式,之前的数据库字符编码不能正常显示。解决在mysql5.5之后的版本,utf8mb4的编码方式解决了emoji表情...
  • [数据](https://img-ask.csdn.net/upload/201903/12/1552360274_270668.png) !注册](https://img-ask.csdn.net/upload/201903/12/1552360285_748238.png) ![登录]...
  • 移动互联网改变人们的生活,看似大而空的一句话,却是前人们趋之若鹜想要达到的境地。... 如今,移动互联网的飞速发展,则开始切切实实的改变我们的生活、工作和思维方式,各种层出不穷的APP逐渐改变着我们的...
  • 应用开发 Google App Engine & Google Web Toolkit入门指南 侯炯 目录 第1章 应该了解下 1.1基本知识 1.2Google App engine 1.3Google Web Toolkit 第2章 环境搭建 2.1安装JDK 2.2安装Eclipse 2.3安装SDK和...
  • 什么是分表?...app读写的时候根据事先定义好的规则得到对应的子表名,然后去操作它。什么是分区?分区和分表相似,都是按照规则分解。不同在于分表将大分解为若干个独立的实体,而分区是将数据...
  • 如果你在电脑中建立了一个 Excel 工作,如何能藉由手机 App 在行动装置中使用? Microsoft推出的 PowerApps 可以让你即使没有写任何手机程式,也可以达到用手机查询、修改和新增资料的功能。 首先,要将该资料...
  • 虚拟和视图表ApiLog中有一个字段叫app,表示前端应用名:@ApiLog: id, tm, addr, app, userId- userId: 如果app=user,则关联到User;如果app=emp,则关联到员工Employee@Employee: id, name, phone, ... @...
  • 长期运行短期运行定期长期运行时间 应用属性 额外的初始化和清除命令一天中的可用时间范围和更丰富的时间选项环境变量运行状况检查命令以识别应用程序运行状况管道输入字符串数据以将数据传递给应用程序资源(内存...
  • mysql 2张表插入到临时表里一个项目用到多张表数据合计查询by夜色紫宸風...CREATE TEMPORARY TABLE tmp_table SELECT appid,uid FROM `sz_app_credit_log_201111`;INSERT INTO tmp_table SELECT appid,uid FROM `sz...
  • 智慧职教APP建筑工程质量管理答案大全更多相关问题[单选] 使用手钢锯割外径()的低压管子时一般不用转动。[单选] 钢丝试井车用于进行测压、()、探砂面、清蜡和小型打捞等作业。[单选] 有万用表测量电阻时,如“欧姆”...
  • MYSQL 一张的自关联查询程序员诗人2017-12-20944浏览量简介:SELECTa.id id,a.gmt_create gmtCreate,a.gmt_modified gmtModified,a.app_id appId,a.SELECTa.id id,a.gmt_create gmtCreate,a.gmt_modified ...
  • 日前,全球最大的移动游戏、应用真机和用户測试平台Testin測宣布联手索尼公司,发起Smart Watch 2首席APP开发人员全球招募活动,强强联合共同打造繁荣有序的智能手表測试平台。 据介绍。本次活动主要面向全球...
  • 日前有相关报道显示,阿里方面推出了一款名为“阿里网盘”的独立App,并且其是由阿里团队开发,定位则是为C端用户提供可靠安全的存储备份及智能相册等功能。据了解,目前这款APP尚未正式上线,暂时还在邀请制...
  • 1.1、创建永久空间In the CDB:SQL> CONNECT system@cdb1SQL> CREATE TABLESPACE cdb_users DATAFILE'/home/oracle/app/oracle/oradata/andycdb/cdb_users01.dbf'SIZE 5Mautoextend offsegment space ...
  • 1.项目背景基于双汇发展对能源管控的需求,利用平台技术以及电气自动化处理手段,对双汇发展的一级、二级、三级能源仪表进行整体改造,实现仪表组网,进一步通过边缘网关进行能源在线监测数据的采集,并上报至...
  • 天池–智能算法赛:瓷砖表面瑕疵质检数据集 百度下载 下载链接 链接:https://pan.baidu.com/s/19oomXKX_sn2rRuKDLWyiWg 提取码:3qlw 复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级...
  • 如今的信息化时代,无论企业还是事业单位,办公都离不开office,其中excel更...云表,excel办公伴侣云表是一个功能十分强大的软件,功能大到自由开发软件而不需要编程,小到办公自动化而不用VBA,都能够使用云表来解...
  • 1、检查ip/k3cloudapp是否能正常访问。如果能,直接看第2步;如果不能,一般常见的提示为500.0内部服务器错误,原因主要为.NET缓存异常,需要清理.net缓存,方法为: ① cmd.exe命令中执行iisreset -stop ② 删除...
  • 小京东完整版,因资源大于上传限制(465.4M),所以上传到百度!本机已经测试通过,这个版本是花300大洋某宝买的!不保证资源的完整性及安全性,需要的小伙伴请自行安装测试!
  • 我的环境名称为tjn-k3u19,我的名称为gold,字段情况name,address,_id,fo,tell app.js里面配置环境 //数据库 const db = wx.cloud.database({ env: "tjnk3u19" }); //数据库 wxml页面 <!-- ...
  • Best App 经常会有朋友想知道有哪些 Apps 或 服务 是值得付费来使用的,或者有哪些产品是可以提升生活品质的, 于是创建了 BestApp 项目,旨在让推荐变得有章可循 总目录 欢迎大家推荐好的 App/产品 加入,请Star、...
  • 问题描述:现在监控系统越来越普及了,很多公司和个人都会安装。在公司内部,可以通过直接到监控主机那里,或者通过...另外请注意单独的还威视摄像头或者萤石摄像头都可以通过手机上的萤石云APP来管理和查看。步...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 431
精华内容 172
关键字:

云表app