舍得英语魔法学苑

 找回密码
 注册
查看: 1503|回复: 9

[UX] 【原创】在未越狱的苹果手机里导入smpak自定义课程文件

  [复制链接]
  • TA的每日心情
    无聊
    10 小时前
  • 签到天数: 561 天

    [LV.9]以坛为家II

    feng850113 发表于 2018-4-28 15:07:25 | 显示全部楼层 |阅读模式
    本帖最后由 feng850113 于 2018-4-28 15:07 编辑

    长久以来,不能在未越狱的苹果手机上使用Supermemo,一直是大家的一个遗憾。
    最近接触了Fiddler软件(一个代理软件,可定制程度很高),突发灵感,是否可以在下载官网的课程时,拦截Supermemo的请求,然后用自定义课程替代?
    有了这个想法之后,经过多次测试,终于在我的Iphone上,成功使用定制课程。

    以下为测试记录。

    注意:如果导入的课程无法使用,需要重试,请重新安装Supermemo之后,再尝试导入课程。删除课程再导新课程会不起作用,这是我多次掉坑得出来的经验。猜测可能是supermemo会缓存smpak文件的原因。

    【原理】
    当用户点击下载Demo课程时,通过代理,拦截Http的下载请求,将自定义的课程文件(smpak格式)作为Http响应,达到导入自定义课程的目的。

    【结果】
    目前我已在IOS 11.3 版验证通过。
    Supermemo Clasic 版本:2.8.3.2(最新版)
    声音、视频都可以播放。

    【IOS版,smpak文件要求】
    1. mp3 后缀要改成 media 后缀(参考官网课程),不确定保留mp3后缀是否可以播放音频文件
    2. course.xml 文件里,Guid要与http请求的Guid一致。
    3. smpak 文件名没有限制。


    【举一反三】
    1. Android端,应该也可以使用这个方法导入课程,就不需要灌入sqlite数据库了。
    2. 新出的supermemo.com app,是否也可以使用这个方法破解?大家可以研究一下。





    【前提】
    1. 电脑和手机要在同一网络。


    【步骤】
    电脑端
    1. 电脑安装Fiddler 4 。

    2. 设置Fiddler。
    2.1) Tools –> Options….




    2.2) 记录本机IP地址。


    本机IP地址为:192.168.124.2,后面要用到。
    保持 Fiddler 运行状态,不要关闭。

    OK,电脑端设置完毕。

    手机端(以苹果手机为例)
    1. 手机wifi连接到同一网络下。
    2. 打开浏览器,输入192.168.124.2:8888;

    安装证书

    设置代理

    OK,回到Supermemo程序里,进到官方课程下载页面,随便找一个Demo课程,可以免费下载的。
    如果进不去,请先关闭手机wifi,用4G进到如下界面,然后再连上wifi。之后,再点击下载课程。



    好了,回到电脑端。查看Fiddler,应该就有记录了。


    可以看到,此课程的Guid为:1da64532-38ae-463c-b392-fd3a8328d339,根据此信息,修改自己的课程文件,将course.xml文件,Guid改成这个字符串。然后,将mp3后缀名,改成 media。再用工具打包成smpak文件。

    接下来,用打包的smpak文件回应http请求。


    OK,手机上,重新点击下载。





    完毕!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?注册

    x

    评分

    2

    查看全部评分

  • TA的每日心情

    2018-7-24 12:48
  • 签到天数: 93 天

    [LV.6]常住居民II

    Tomsons 发表于 2018-4-28 17:37:05 | 显示全部楼层
    给大佬顶一下,
  • TA的每日心情
    开心
    5 天前
  • 签到天数: 40 天

    [LV.5]常住居民I

    ooxxo 发表于 2018-4-30 07:35:35 | 显示全部楼层
    真的可行,已经导入成功, 谢谢大佬
  • TA的每日心情
    慵懒
    5 小时前
  • 签到天数: 286 天

    [LV.8]以坛为家I

    qiziyh 发表于 2018-4-30 21:07:06 | 显示全部楼层
    本帖最后由 qiziyh 于 2018-4-30 21:10 编辑

    感谢提供的这些原创性方法,谢谢了。

    supermemo.com似乎还没有人弄懂存贮的数据格式结构,期待中
  • TA的每日心情
    慵懒
    5 小时前
  • 签到天数: 286 天

    [LV.8]以坛为家I

    qiziyh 发表于 2018-5-4 02:40:40 | 显示全部楼层
    楼主的思路好像蛮好,我来试试干点其它的
    [发帖际遇]: qiziyh 发帖时在路边捡到 2 颗 魔晶石,偷偷放进了口袋. 幸运榜 / 衰神榜
  • TA的每日心情
    郁闷
    2018-7-16 21:35
  • 签到天数: 49 天

    [LV.5]常住居民I

    ngqianrui 发表于 2018-5-26 18:59:51 | 显示全部楼层
    为什么我的IPHONE 打不开8888端口  在fiddler设置上我好像安装了什么证书
    [发帖际遇]: ngqianrui 捡了钱没交公 声望 降了 1 点 . 幸运榜 / 衰神榜
  • TA的每日心情
    郁闷
    2018-7-16 21:35
  • 签到天数: 49 天

    [LV.5]常住居民I

    ngqianrui 发表于 2018-5-26 19:00:22 | 显示全部楼层
    为什么我的IPHONE 打不开8888端口  在fiddler设置上我好像安装了什么证书
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    小黑屋|手机版|Archiver|官方微博|官方QQ群|舍得英语魔法学苑 ( 冀ICP备11024081号-1 )

    GMT+8, 2018-9-20 19:18 , Processed in 0.145337 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表