
我正在尝试使用Robotium截取我的Android应用程序的屏幕截图,我正在使用下面找到的函数here.
public static String SCREEN_SHOTS_LOCATION="/sdcard/"; public static voID takeScreenShot(VIEw vIEw, String name) throws Exception { vIEw.setDrawingCacheEnabled(true); vIEw.buildDrawingCache(); Bitmap b = vIEw.getDrawingCache(); fileOutputStream fos = null; try { file sddir = new file(SCREEN_SHOTS_LOCATION); if (!sddir.exists()) { sddir.mkdirs(); } fos = new fileOutputStream(SCREEN_SHOTS_LOCATION + name + "_" + System.currentTimeMillis() + ".jpg"); if (fos != null) { b.compress(Bitmap.CompressFormat.JPEG, 90, fos); fos.close(); } } catch (Exception e) { } } 我从我的测试中这样称呼它:
takeScreenShot(solo.getVIEw(0), "Test");当我调用该函数时,我在该行上得到一个NullPointerException,它看起来好像VIEw是null.
我也试过用
solo.getVIEws();
并循环浏览每个视图并截取屏幕截图,但我也得到了每个视图的NullPointerException.
ArrayList vIEws = solo.getVIEws();for(int i=0; i < vIEws.size(); i++){ takeScreenShot(solo.getVIEw(i), "Test");}我对AndroID&使用Robotium的AndroID测试自动化,任何人都可以给我一些关于调试这个的建议,或者为什么VIEws似乎是null并且我的屏幕捕获不起作用的原因?
TIA.
更新
Error in testUI:java.lang.NullPointerException at com.myapp.test.UITests.testUI(UITests.java:117) at java.lang.reflect.Method.invokeNative(Native Method) at androID.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:204) at androID.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:194) at androID.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:186) at androID.test.AndroIDTestRunner.runTest(AndroIDTestRunner.java:169) at androID.test.AndroIDTestRunner.runTest(AndroIDTestRunner.java:154) at androID.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529) at androID.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1448)解决方法:
您获得NullPointerException的原因是因为您错误地使用了getVIEw(int ID).当你给它一个索引而不是ID时,它将找不到你正在寻找的视图,因此返回null.您想要使用的是:
takeScreenShot(solo.getVIEws().get(0),“Test”)
这意味着在给定时间内Robotium可用的所有视图的第一个视图.
总结以上是内存溢出为你收集整理的Android,Robotium – 发布截图全部内容,希望文章能够帮你解决Android,Robotium – 发布截图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)