V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
morning
V2EX  ›  Android

明明都失业了,还蛋疼把 GR Remote 网页做成了 APP(理光 GRII 机友看过来

  •  1
     
  •   morning · 2016-07-19 20:22:53 +08:00 · 11961 次点击
    这是一个创建于 2842 天前的主题,其中的信息可能已经有所发展或是发生改变。
    展示:

    Imgur

    youtube

    简介:

    简单说就是把这个 GR Remote 网页做了缓存,然后提供 wifi 绑定、重连功能。 以节省流量和时间,方便使用。

    使用方法:
    • 初次使用要联网下载页面,请耐心等待。
    • 自动连接相机网络这里,需要把页面滑动到底部,弹出设置页面,进入绑定列表,选择相机 wifi 进行绑定。

    注:

    1. 要求系统版本 6.0 及以上;
    2. 这里的绑定,只能绑定连接成功过的 wifi 网络,因为考虑到人与人之间的信任,就不提供输入密码这种方式啦;
    起因:

    把 K5-IIs 卖了,上个月买的 GRII ,拿出去真的太方便了。

    装了一个 Image Syn ,可以同步照片,可是里边的远程控制功能无效,上周一的时候突然想起来在哪里看到说可以远程控制的,然后去官网找到了网页版的,号称可以实现除了开机和弹起闪光之外的全部功能。(其实还实现了触摸对焦、左右反转、按键锁定和关闭镜头)。

    官方提供了两个版本,一个是普通网页版本,一个是 DOM 离线缓存, 但实际使用其实只能先联网打开网页,然后切换到相机的 wifi 热点,加载太慢了。

    于是想把这个网页用 WebView 缓存,然后提供 wifi 绑定、重连功能。 这样就节省了流量和时间,不用手动连相机 wifi 啦。

    主要流程:
    1. 启动时判断当前 wifi 状态,已打开则连接之前存储的 wifi 热点(如果有),关闭则打开;
    2. 广播接收网络关闭和连接改变:网络关闭,尝试打开,打开则尝试连接绑定的热点;已连接到热点,判断是否是绑定的网络,如果不是则去连接绑定的网络;
    3. 网页:载入网页,监听加载进度,加载完成时关闭启动动画并显示网页;
    4. 监听滚动事件,判断是否到底部,是的话则弹出设置菜单;
    遇到的坑:

    功能其实很简单,但是坑很多

    1. 页面加载不完全,没有启用:settings.setDomStorageEnabled(true)
    2. 本来为了展示 想删除几个已配置的网络,结果搞了半天 removeNetwork()方法都无效,查了一下发现在 6.0 里不给用了。 http://stackoverflow.com/questions/32756690/android-m-unable-to-remove-wi-fi-ap-programmatically
    3. 好奇像 wifiManager.isWifiEnabled()这种方法是不是才加上的,网上的例子都是自己判断;
    4. 系统 4.2 以后获取的 SSID 是双引号;
    现存问题:
    1. 网页版把 顶部、左、右 都占用了,所以只好放在底部滑出。 只是使用了 webView.setOnScrollChangeListener()判断网页是否到达底部,问题就是 只能网页不在底部的时候才能划出,然后左右滑动的页面或者 about 页面 拖动也会弹出菜单;(解决方法是 判断到达底部后 等待 2 秒然后滚动回顶部,但觉得这样不太好);
    2. bottom sheet 有时会弹出多个;
    3. 我的连接 wifi 策略是只要应用运行就会强制连接 绑定的 wifi ,这样万一没有退出而是切换到其他 app 了, wifi 是没法改变的;

    希望可以提供一下思路,不过找到工作前大概不会修复了。

    下载地址

    https://github.com/BorntoGO/GR-Remote-Package/blob/master/app/GR_Remote_0.1.apk

    项目地址

    https://github.com/BorntoGO/GR-Remote-Package

    感想:
    1. 有段事件没搞 Android ,深切体会到了前同事的那句“面向 Google 编程”;
    2. 命名和结构都不太规范的问题,应该从一开始就规范好,后面项目越庞大越难以规范;
    3. 看了下 Image Syn 这个 APP ,是用 Cordova 搞的,然后又有个网页版,既然都是网页为什么不整合在一起;

    说一下标题,公司解散了,已经玩了两个星期,结果发现实在无法安心踏实的玩啊, 虽然工资没有准时发,但信用卡账单还是准时躺在邮箱了呢 (手动 doge )。

    第 1 条附言  ·  2016-07-20 12:11:45 +08:00

    额,为了节省时间 说明一下,我在杭州,找 后端 node.js 方面的工作,Android方面暂不考虑,谢谢。

    8 条回复    2016-07-26 23:39:43 +08:00
    SoloCompany
        1
    SoloCompany  
       2016-07-19 22:37:47 +08:00
    理光开发的这两个软件( Image Sync 和 GR Remote )真是渣透顶了
    真不如买个带 wifi 的储存卡省心,别人软件写的至少比它好一千倍
    morning
        2
    morning  
    OP
       2016-07-19 23:14:57 +08:00
    @SoloCompany 是的,感觉太不走心了, js 文件不压缩就算了,尤其是 Image Sync 这个,每次我看到有一半功能不能用就很蛋疼,不能用就别让我看见啊。
    windfarer
        3
    windfarer  
       2016-07-19 23:16:50 +08:00
    grd iii 用户前来支持,送上一枚 star
    morning
        4
    morning  
    OP
       2016-07-19 23:25:59 +08:00
    @windfarer 难得遇见机友,感谢支持,我差不多也该踏上收集星星的征途啦~
    mutalisker
        5
    mutalisker  
       2016-07-20 00:24:43 +08:00 via iPhone
    最近用 sony 的 app 也一个的德行的难用,传统厂商就做不好这些
    bbwk
        6
    bbwk  
       2016-07-20 10:21:21 +08:00
    hello~ 有联系方式嘛 想和您聊聊~
    morning
        7
    morning  
    OP
       2016-07-20 12:07:03 +08:00
    @bbwk justregisterid#gmail.com/61367831
    mutalisker
        8
    mutalisker  
       2016-07-26 23:39:43 +08:00 via iPhone
    最近用 sony 的 app 也一个的德行的难用,传统厂商就做不好这些
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2514 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:40 · PVG 20:40 · LAX 05:40 · JFK 08:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.