diff options
Diffstat (limited to 'startop/scripts/app_startup/launch_application')
-rwxr-xr-x | startop/scripts/app_startup/launch_application | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/startop/scripts/app_startup/launch_application b/startop/scripts/app_startup/launch_application new file mode 100755 index 000000000000..bc4ec51d6d08 --- /dev/null +++ b/startop/scripts/app_startup/launch_application @@ -0,0 +1,41 @@ +#!/bin/bash +# +# Copyright 2018, The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +source "$DIR/lib/common" + +launch_application() { + local package="$1" + local activity="$2" + local am_output="$(adb shell am start -S -W "$package"/"$activity")" + verbose_print adb shell am start -S -W "$package"/"$activity" + if [[ $? -ne 0 ]]; then + echo "am start failed" >&2 + + return 1 + fi + + # for everything else use the am start "TotalTime" output. + verbose_print "$am_output" + local total_time="$(echo "$am_output" | grep 'TotalTime:' | sed 's/TotalTime: //g')" + verbose_print "total time: $total_time" + + # TODO: Extract alternative metrics such as the #reportFullyDrawn. + + echo "$total_time" +} + +launch_application "$@" |