使用提升创建Android 5.0 App的屏幕截图

时间:2014-12-10 14:22:00

标签: android adb android-5.0-lollipop robotium

当我拍摄我的应用程序(Material Design with Elevations)的屏幕截图时,阴影(高程)不在保存的屏幕截图文件中。 我尝试使用真实设备(Nexus 5)和谷歌模拟器。屏幕截图看起来不错,但不包括阴影。

我使用solo AND screencap(adb shell)捕获了屏幕截图。

有人有想法吗?谢谢

编辑:清单(部分):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="my.package.name"
    android:installLocation="auto"
    android:versionCode="123"
    android:versionName="1.23" >

    <supports-screens android:anyDensity="true"
                      android:largeScreens="true"
                      android:normalScreens="true"
                      android:resizeable="true"
                      android:smallScreens="true"
                      android:xlargeScreens="true"/>

    <uses-feature
    android:glEsVersion="0x00020000"
    android:required="true" />

    <uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="21" />

    <uses-permission android:name="android.permission.INTERNET" />
    <!-- ... -->

    <application
    android:name="MyApplication"
    android:allowBackup="true"
    android:hardwareAccelerated="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:largeHeap="true"
    android:vmSafeMode="true"
    android:theme="@style/AppTheme">
    <!-- definition of receivers -->
    <!-- definition of activities -->
    </application>

</manifest>

2 个答案:

答案 0 :(得分:1)

清单文件中的更改:

<uses-sdk
    android:minSdkVersion="21"
    android:targetSdkVersion="21" />

现在检查你的代码plz。

答案 1 :(得分:0)

Robotium可以截取仅包含部分已测试应用程序的屏幕截图。这意味着例如状态栏被排除在外。据我所知screencap可以处理,但我不确定。您还可以尝试其他方式截取屏幕截图:

  1. using DDMS
  2. using UIAutomator
  3. using Android Screenshot Library