切换风格

默认Lavender Sky Flowers Wizard Snow Beige California City Dragon Black London Sunset glow Pink Cloud
1234下一页

10

主题

1196

积分

0

精华

用户组 

易积分
5144
热心
0
好评
3
QQ

活跃会员

准备学学类库了,没有教程,只能自已摸索,开贴记录[复制链接]
发表于 2020-11-29 15:34:45 | 显示全部楼层 |阅读模式
       一直找不到类库封装的教程,也就一直没有认真看过,E4A偶尔晚上有时间学学做做自已喜欢的东西。
这两天做的一个影视接CMS的APP近完工了。也就开始看看类库的封装了,反正对类库是啥也不了解,JAVA也不会,那就边做边学吧,同时记录一样,有感兴趣的可一起学习讨论,大神飘过,停下来指点一下更好.

开工......

既然什么都不会,又没有教程,那我们也就只能迈小步,从最简单的搞起,古话说得好,步子迈大了,容易扯着蛋....
当然了,新建一个例程elp,里面有一个最简单的示例,这个我们要多看看了,了解一下类库的结构:
1.png
我是这么理解,对不对不知道,就这样吧。那我们就先来一个最简单的吧
前些天写的影视APP,有用到取播放进度,长整数型的毫秒数,这个做收藏的时候,要转成播放的时/分/秒,我不知有没有系统方法,就自已写了个简单的函数:
函数 毫秒到时分(毫秒数 为 文本型) 为 文本型
        毫秒数=到长整数(毫秒数)
        变量 时数 为 整数型
        变量 分数 为 整数型
        变量 秒数 为 整数型
        时数=取整(毫秒数/3600000)
        分数=取整((毫秒数-(时数*3600000))/60000)
        秒数=取整((毫秒数-时数*3600000-分数*60000)/1000)
        毫秒到时分=时数 & ":" & 分数 & ":" & 秒数
结束 函数

这么一转,我们的播放记录中就可以显示如下了:
2.jpg
我们现在就将这个函数封装成类库好了。
只是一个函数,那我们只要一个方法接口就好了,删除命今示例方法和事件,新建一个方法:转换(毫秒数据 为 长整数型,转化格式 为 整数型)为 文本型,这里我们要注意了,
E4A中对数据类型是没那么严格的,看上面的函数,毫秒数为文本型,其实他是长整型的,所以在类库的写法上不同,同时,我们为了回调结果的时候,可以多种格式,这里可以让用户选择输出格式,就结一个格式的参数。
对应的,我们在父类中也要建一个函数:
@SimpleFunction
    String 转换(long 毫秒数据, int 转化格式);
再在子类中把上面的函数写进去,就下面这个样子了,我是不懂JAVA,对着上面函数查对应JAVA命令和用法就可以,我想着做着做着,JAVA也就会一点吧?

3.png
FK,搞到这里就会发现,JAVA对数据类型要求的严格了,搞几多遍编译通不过,到上面这样终于可以了
试试,效果还可以了。到些,第一个相当实用的类库就诞生了
下面是源码,其实上面都有,可以自已敲有好处的。实在不想敲,下面有:

毫秒转时间.rar (3.21 KB, 下载次数: 10, 售价: 2 易积分)
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

10

主题

1196

积分

0

精华

用户组 

易积分
5144
热心
0
好评
3
QQ

活跃会员

发表于 2020-11-29 15:35:09 | 显示全部楼层
本帖最后由 toorup 于 2020-11-30 12:42 编辑

开始更新类库了....更新,大体的方法就是,取网络更新信息和下载地址,取本地版本和网络信息版本对比,有新版本就反馈有更新,给出下载地址供下载。
在这之前,我们还得准备好下载后保存用的目录,这就是初始化了:
初始化我们不需要反回参数,这里就用void,如下:

        @Override
        public void 初始化(){                       //创建更新用的目录,以软件包名命名
                String 包名;
                包名=系统相关类.取自身包名();
                String 路径=存储卡类.取存储卡路径() + "/" + 包名 + "_tmp";
                if(文件操作.文件是否存在(路径)==false){
               
                        if(文件操作.创建目录(路径)==true){
                                应用操作.弹出提示("初始化成功!");
                        }else{
                                应用操作.弹出提示("初始化失败,请检查是否已开启存储权限!");
                        }
                }
        }

初始化完成后,就是取网络更新信息了,我们准备一个网页或是TXT文档,写上如下信息 123.txt:
<banbeng>1.0</banbeng>
<gxlr>
本期更新内容:
1.更新显示列数.
2.加入收藏模块.
</gxlr>
<gxaddress>https://uploader.shimo.im/f/z7J8jEpeqxml9IYF00.apk</gxaddress>


取更新信息这个就很简单了,E4A自带的核心命令就可以用完成:

@Override
        public void 检查更新(String URL,String 编码,int 超时时间){
                String 源码="";
                String 本地版本="" + 应用相关类.取应用版本(系统相关类.取自身包名());
                String 网络版本="";
                String 下载地址="";
                String 更新信息="";
                源码=网络操作.取网页源码(URL,编码,超时时间);
                网络版本=文本操作.取指定文本2(源码,"<banbeng>","</banbeng>");
                下载地址=文本操作.取指定文本2(源码,"<gxaddress>","</gxaddress>");
                更新信息=文本操作.取指定文本2(源码,"<gxlr>","</gxlr>");

}

搞到这主要的就完成了,现就是判断是否有新的版本了,有更新和没有更新给出对应接口事件。
大概就这个样子就可以初步编译使用了:

微信图片_20201130123327.png
软件更新类库.elb (6.04 KB, 下载次数: 4, 售价: 5 易积分)
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

5

主题

123

积分

0

精华

用户组 

易积分
736
热心
0
好评
0
发表于 2020-11-29 15:37:43 | 显示全部楼层

大佬带带我
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

1

主题

547

积分

0

精华

用户组 

易积分
1906
热心
0
好评
0
发表于 2020-11-29 15:52:23 | 显示全部楼层
不错看看
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

1

主题

117

积分

0

精华

用户组 

易积分
84
热心
0
好评
0
发表于 2020-11-29 16:28:43 | 显示全部楼层
感谢分享
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

6

主题

1470

积分

0

精华

用户组 

易积分
1038
热心
0
好评
0

活跃会员

发表于 2020-11-29 16:33:21 来自手机 | 显示全部楼层
把你的影视源码发出来看看

点评

自动下一集还没加,播放记录点击可以自动接上一次播放点了,有点容错判断还没做 没对接验证,CMS是网上找的开放着API的,我自已的CMS挂了 搜索写好了没放上去, 链接:https://pan.baidu.com/s/111jVBo-pqyxj7vjEmB  详情 回复 发表于 2020-11-29 16:42
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

0

主题

260

积分

0

精华

用户组 

易积分
149
热心
0
好评
0
发表于 2020-11-29 16:38:48 | 显示全部楼层
学习了,支持下
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

10

主题

1196

积分

0

精华

用户组 

易积分
5144
热心
0
好评
3
QQ

活跃会员

发表于 2020-11-29 16:42:22 | 显示全部楼层
skeok888888 发表于 2020-11-29 16:33
把你的影视源码发出来看看

自动下一集还没加,播放记录点击可以自动接上一次播放点了,有点容错判断还没做
没对接验证,CMS是网上找的开放着API的,我自已的CMS挂了
搜索写好了没放上去,

链接:https://pan.baidu.com/s/111jVBo-pqyxj7vjEmBKIhg
提取码:mytv

点评

大哥 是源码 不是要成品看   详情 回复 发表于 2020-11-30 12:11
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

12

主题

876

积分

0

精华

用户组 

易积分
3198
热心
6
好评
1

热心会员活跃会员

发表于 2020-11-29 16:59:13 | 显示全部楼层
不错不错  加油
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

11

主题

1063

积分

0

精华

用户组 

易积分
209
热心
0
好评
0
发表于 2020-11-29 17:32:11 | 显示全部楼层
易如意中文编程学习交流论坛有你更精彩~
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

QQ|sitemap|免责声明|RGB颜色对照表|手机版|小黑屋| 易如意 - E4A中文编程学习交流论坛

GMT+8, 2024-5-21 19:51 , Processed in 0.060681 second(s), 48 queries .

Powered by Discuz! X3.4

© 2001-2018 eruyi.cn

返回顶部