System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于IOS系统的页面生命周期日志统计方法及系统技术方案_技高网

基于IOS系统的页面生命周期日志统计方法及系统技术方案

技术编号:42207622 阅读:20 留言:0更新日期:2024-07-30 18:51
本发明专利技术公开了基于IOS系统的页面生命周期日志统计方法及系统,属于APP开发技术领域,要解决的技术问题为如何在保证用户数据安全性和统计全面性的前提下、实现IOS系统下APP的页面生命周期日志统计。创建统计管理类:创建一个统计管理类,用于记录和处理页面生命周期统计信息;创建UIViewController的Category分类,用于扩展UIViewController类;通过Runtime机制替换UIViewController中原生的生命周期方法;在替换的生命周期方法中调用统计管理类,基于统计管理类的统计方法收集数据并将收集的数据保存至统计管理类;将收集的数据上传至服务器中。

【技术实现步骤摘要】

本专利技术涉及app开发,具体地说是基于ios系统的页面生命周期日志统计方法及系统。


技术介绍

1、在ios应用程序开发中,每个页面都有其生命周期,它涵盖了页面从创建到销毁的整个过程。统计页面生命周期是应用程序开发和优化过程中的重要工具,它能够帮助你监测应用程序的性能、解决问题、改进用户体验,并且让你更好地了解用户行为和需求。

2、对于app的页面生命周期统计现在一般使用三方sdk或重写页面的生命周期函数。

3、使用三方sdk统计用户数据存在一定的风险性,例如用户隐私、数据安全、性能影响、版本兼容性、费用问题等等。

4、重写页面生命周期函数,需要在每个页面的视图控制器中重写相关的生命周期方法。这可能会导致代码冗余,尤其是在应用程序有许多页面的情况下,需要在多个地方添加相同的统计代码,导致后期代码维护困难,且容易遗漏页面。

5、如何在保证用户数据安全性和统计全面性的前提下、实现ios系统下app的页面生命周期日志统计,是需要解决的技术问题。


技术实现思路

1、本专利技术的技术任务是针对以上不足,提供基于ios系统的页面生命周期日志统计方法及系统,来解决如何在保证用户数据安全性和统计全面性的前提下、实现ios系统下app的页面生命周期日志统计的技术问题。

2、第一方面,本专利技术一种基于ios系统的页面生命周期日志统计方法,包括如下步骤:

3、创建统计管理类:创建一个名称为pagelifecyclestatistics的统计管理类,用于记录和处理页面生命周期统计信息;

4、创建uiviewcontroller的category分类:创建名称为uiviewcontroller+pagelifecycle的category,用于扩展uiviewcontroller类;

5、通过objective-c的runtime机制替换uiviewcontroller中原生的生命周期方法;

6、在替换的生命周期方法中调用统计管理类,基于统计管理类的统计方法收集数据并将收集的数据保存至统计管理类;

7、将收集的数据上传至服务器中。

8、作为优选,统计管理类中定义有数据结构,数据结构用于存储页面生命周期信息,页面生命周期信息包括页面名称、进入时间和离开时间。

9、作为优选,通过objective-c的runtime机制替换uiviewcontroller中原生的生命周期方法,包括如下步骤:

10、对于uiviewcontroller中每个原生的生命周期方法,在uiviewcontroller pagel的实现文件中编写新的生成周期方法,在新的生成周期方法中调用对应的原生生命周期方法,确保页面生命周期的正常执行;

11、通过method-swizzling方法将新的生命周期方法与原生生命周期方法进行交换;

12、其中,页面的原生生命周期方法包括:

13、viewdidload,所述viewdidload用于在视图控制器的视图加载完成后调用;

14、viewwillappear:,所述viewwillappear:用于视图可见之前被调用,理解为在视图即将显示在屏幕上、并且可以执行一些预备操作时被调用。

15、viewwilldisappear:,所述viewwilldisappear:用于在视图即将从屏幕上消失时调用;

16、dealloc:,所述dealloc:用于在当视图控制器被销毁时调用。

17、作为优选,将收集的数据上传至服务器时,在pagelifecyclestatistics类中添加方法uploaddatatoserver,uploaddatatoserver用于将收集的页面周期数据上传至服务器中;

18、在每次app启动时、通过uploaddatatoserver将记录的数据上传至服务器中。

19、第二方面,本专利技术一种基于ios系统的页面生命周期日志统计系统,用于通过如第一方面任一项所述的基于ios系统的页面生命周期日志统计方法对app的页面生命周期日志进行统计,所述系统包括:

20、统计管理类创建模块,所述统计管理类创建模块用于创建一个名称为pagelifecyclestatistics的统计管理类,用于记录和处理页面生命周期统计信息;

21、category分类创建模块,所述category创建模块用于创建uiviewcontroller的category分类,名称为uiviewcontroller+pagelifecycle,

22、用于扩展uiviewcontroller类;

23、方法替换模块,所述方法替换模块用于通过objective-c的runtime机制替换uiviewcontroller中原生的生命周期方法;

24、数据采集模块,所述数据采集模块用于在替换的生命周期方法中调用统计管理类,基于统计管理类的统计方法收集数据并将收集的数据保存至统计管理类;

25、数据上传模块,所述数据上传模块用于将收集的数据上传至服务器中。

26、作为优选,统计管理类中定义有数据结构,数据结构用于存储页面生命周期信息,页面生命周期信息包括页面名称、进入时间和离开时间。

27、作为优选,所述方法替换模块用于执行如下操作:

28、对于uiviewcontroller中每个原生的生命周期方法,在uiviewcontroller+pagel的实现文件中编写新的生成周期方法,在新的生成周期方法中调用对应的原生生命周期方法,确保页面生命周期的正常执行;

29、通过method-swizzling方法将新的生命周期方法与原生生命周期方法进行交换;

30、其中,页面的原生生命周期方法包括:

31、viewdidload,所述viewdidload用于在视图控制器的视图加载完成后调用;

32、viewwillappear:,所述viewwillappear:用于视图可见之前被调用,理解为在视图即将显示在屏幕上、并且可以执行一些预备操作时被调用。

33、viewwilldisappear:,所述viewwilldisappear:用于在视图即将从屏幕上消失时调用;

34、dealloc:,所述dealloc:用于在当视图控制器被销毁时调用。

35、作为优选,所述数据上传模块用于在pagelifecyclestatistics类中添加方法uploaddatatoserver,uploaddatatoserver用于将收集的页面周期数据上传至服务器中;

36、在每次app启动时、所述数据上传模块用于通过uploaddatatoserver将记录的数据上传至服务器中。

37、本专利技术的基于ios系本文档来自技高网...

【技术保护点】

1.一种基于IOS系统的页面生命周期日志统计方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的基于IOS系统的页面生命周期日志统计方法,其特征在于,统计管理类中定义有数据结构,数据结构用于存储页面生命周期信息,页面生命周期信息包括页面名称、进入时间和离开时间。

3.根据权利要求1所述的基于IOS系统的页面生命周期日志统计方法,其特征在于,通过Objective-C的Runtime机制替换UIViewController中原生的生命周期方法,包括如下步骤:

4.根据权利要求3所述的基于IOS系统的页面生命周期日志统计方法,其特征在于,将收集的数据上传至服务器时,在PageLifecycleStatistics类中添加方法uploadDataToServer,uploadDataToServer用于将收集的页面周期数据上传至服务器中;

5.一种基于IOS系统的页面生命周期日志统计系统,其特征在于,用于通过如权利要求1-4任一项所述的基于IOS系统的页面生命周期日志统计方法对APP的页面生命周期日志进行统计,所述系统包括:

6.根据权利要求5所述的基于IOS系统的页面生命周期日志统计系统,其特征在于,统计管理类中定义有数据结构,数据结构用于存储页面生命周期信息,页面生命周期信息包括页面名称、进入时间和离开时间。

7.根据权利要求5所述的基于IOS系统的页面生命周期日志统计系统,其特征在于,所述方法替换模块用于执行如下操作:

8.根据权利要求5所述的基于IOS系统的页面生命周期日志统计系统,其特征在于,所述数据上传模块用于在PageLifecycleStatistics类中添加方法uploadDataToServer,uploadDataToServer用于将收集的页面周期数据上传至服务器中;

...

【技术特征摘要】

1.一种基于ios系统的页面生命周期日志统计方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的基于ios系统的页面生命周期日志统计方法,其特征在于,统计管理类中定义有数据结构,数据结构用于存储页面生命周期信息,页面生命周期信息包括页面名称、进入时间和离开时间。

3.根据权利要求1所述的基于ios系统的页面生命周期日志统计方法,其特征在于,通过objective-c的runtime机制替换uiviewcontroller中原生的生命周期方法,包括如下步骤:

4.根据权利要求3所述的基于ios系统的页面生命周期日志统计方法,其特征在于,将收集的数据上传至服务器时,在pagelifecyclestatistics类中添加方法uploaddatatoserver,uploaddatatoserver用于将收集的页面周期数据上传至服务器中;

5....

【专利技术属性】
技术研发人员:孙彪马仕信张运江张波
申请(专利权)人:浪潮软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1