Android-以编程方式截取屏幕快照,而无需引用视图活动

Android-以编程方式截取屏幕快照,而无需引用视图活动,第1张

概述有许多使用对当前活动的引用来截取屏幕截图的示例.但是,就我而言,我需要对来自外部SDK(但仍在我的应用程序中)的活动进行截屏.由于明显的原因,我的代码中没有对该活动对象的引用.我看到了使用Instrumentation和UiDevice的解决方案,但是它们似乎仅在使用TestCase框架实现测试应用程

有许多使用对当前活动的引用来截取屏幕截图的示例.但是,就我而言,我需要对来自外部SDK(但仍在我的应用程序中)的活动进行截屏.由于明显的原因,我的代码中没有对该活动对象的引用.我看到了使用Instrumentation和UiDevice的解决方案,但是它们似乎仅在使用TestCase框架实现测试应用程序时才有效,而我需要在正常应用程序中才能使用.

还有另一种方法吗?

解决方法:

好吧,如果有人发现这个问题有用,这就是我找到的答案:
在您的活动或服务中,调用getApplication().registeractivitylifecycleCallbacks(),并向其传递一个实现Application.ActivityLifecycleCallbacks接口的对象.该对象将获得对每个活动的onCreate / onStart等的回调,并带有对Activity对象的引用,您可以从中获取视图并进行屏幕截图.您可以通过外部SDK的程序包名称来识别它是活动.

注意:Application.ActivityLifecycleCallbacks仅从API级别14(又称为ICS)开始可用.

总结

以上是内存溢出为你收集整理的Android-以编程方式截取屏幕快照,而无需引用视图/活动全部内容,希望文章能够帮你解决Android-以编程方式截取屏幕快照,而无需引用视图/活动所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076578.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存