BluetoothTestRunner.java revision 7e4d0c0982cb28a86bf3d45c3b316ec7eab1e017
1e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe/* 2e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * Copyright (C) 2010 The Android Open Source Project 3e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * 4e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * Licensed under the Apache License, Version 2.0 (the "License"); 5e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * you may not use this file except in compliance with the License. 6e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * You may obtain a copy of the License at 7e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * 8e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * http://www.apache.org/licenses/LICENSE-2.0 9e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * 10e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * Unless required by applicable law or agreed to in writing, software 11e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * distributed under the License is distributed on an "AS IS" BASIS, 12e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * See the License for the specific language governing permissions and 14e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe * limitations under the License. 15e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe */ 16e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 17e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowepackage android.bluetooth; 18e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 19e1d666b632608a2f708cb3df06c796e16d5d1717Eric Roweimport junit.framework.TestSuite; 20e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 21e1d666b632608a2f708cb3df06c796e16d5d1717Eric Roweimport android.os.Bundle; 22e1d666b632608a2f708cb3df06c796e16d5d1717Eric Roweimport android.test.InstrumentationTestRunner; 23e1d666b632608a2f708cb3df06c796e16d5d1717Eric Roweimport android.test.InstrumentationTestSuite; 24826af6266c79d76b81fe850b9cd3d351597e4adbEric Roweimport android.util.Log; 25e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 267e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe/** 277e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * Instrumentation test runner for Bluetooth tests. 287e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * <p> 297e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * To run: 307e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * <pre> 317e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * {@code 327e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * adb shell am instrument \ 337e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e enable_iterations <iterations>] \ 347e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e discoverable_iterations <iterations>] \ 357e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e scan_iterations <iterations>] \ 367e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e enable_pan_iterations <iterations>] \ 377e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e pair_iterations <iterations>] \ 387e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e connect_a2dp_iterations <iterations>] \ 397e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e connect_headset_iterations <iterations>] \ 407e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e connect_input_iterations <iterations>] \ 417e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e connect_pan_iterations <iterations>] \ 427e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e pair_address <address>] \ 437e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e headset_address <address>] \ 447e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e a2dp_address <address>] \ 457e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e input_address <address>] \ 467e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e pan_address <address>] \ 477e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e pair_pin <pin>] \ 487e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * [-e pair_passkey <passkey>] \ 497e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * -w com.android.frameworks.coretests/android.bluetooth.BluetoothTestRunner 507e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * } 517e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe * </pre> 527e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe */ 53e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowepublic class BluetoothTestRunner extends InstrumentationTestRunner { 54826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe private static final String TAG = "BluetoothTestRunner"; 55826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 56e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public static int sEnableIterations = 100; 57e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public static int sDiscoverableIterations = 1000; 58e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public static int sScanIterations = 1000; 597e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe public static int sEnablePanIterations = 1000; 60826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static int sPairIterations = 100; 61826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static int sConnectHeadsetIterations = 100; 62826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static int sConnectA2dpIterations = 100; 637e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe public static int sConnectInputIterations = 100; 647e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe public static int sConnectPanIterations = 100; 65826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 66826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static String sPairAddress = ""; 67826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static String sHeadsetAddress = ""; 68826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static String sA2dpAddress = ""; 697e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe public static String sInputAddress = ""; 707e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe public static String sPanAddress = ""; 71826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 72826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static byte[] sPairPin = {'1', '2', '3', '4'}; 73826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe public static int sPairPasskey = 123456; 74e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 75e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe @Override 76e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public TestSuite getAllTests() { 77e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe TestSuite suite = new InstrumentationTestSuite(this); 78e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe suite.addTestSuite(BluetoothStressTest.class); 79e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe return suite; 80e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 81e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 82e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe @Override 83e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public ClassLoader getLoader() { 84e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe return BluetoothTestRunner.class.getClassLoader(); 85e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 86e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 87e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe @Override 88e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe public void onCreate(Bundle arguments) { 89e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe String val = arguments.getString("enable_iterations"); 90e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe if (val != null) { 91e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe try { 92e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe sEnableIterations = Integer.parseInt(val); 93e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } catch (NumberFormatException e) { 94e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe // Invalid argument, fall back to default value 95e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 96e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 97e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 98e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe val = arguments.getString("discoverable_iterations"); 99e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe if (val != null) { 100e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe try { 101e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe sDiscoverableIterations = Integer.parseInt(val); 102e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } catch (NumberFormatException e) { 103e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe // Invalid argument, fall back to default value 104e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 105e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 106e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe 107e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe val = arguments.getString("scan_iterations"); 108e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe if (val != null) { 109e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe try { 110e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe sScanIterations = Integer.parseInt(val); 111e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } catch (NumberFormatException e) { 112e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe // Invalid argument, fall back to default value 113e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 114e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 115826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 1167e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe val = arguments.getString("enable_pan_iterations"); 1177e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe if (val != null) { 1187e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe try { 1197e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe sEnablePanIterations = Integer.parseInt(val); 1207e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } catch (NumberFormatException e) { 1217e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe // Invalid argument, fall back to default value 1227e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1237e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1247e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe 125826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("pair_iterations"); 126826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 127826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe try { 128826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sPairIterations = Integer.parseInt(val); 129826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } catch (NumberFormatException e) { 130826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe // Invalid argument, fall back to default value 131826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 132826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 133826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 134826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("connect_a2dp_iterations"); 135826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 136826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe try { 137826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sConnectA2dpIterations = Integer.parseInt(val); 138826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } catch (NumberFormatException e) { 139826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe // Invalid argument, fall back to default value 140826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 141826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 142826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 143826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("connect_headset_iterations"); 144826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 145826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe try { 146826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sConnectHeadsetIterations = Integer.parseInt(val); 147826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } catch (NumberFormatException e) { 148826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe // Invalid argument, fall back to default value 149826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 150826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 151826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 1527e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe val = arguments.getString("connect_input_iterations"); 1537e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe if (val != null) { 1547e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe try { 1557e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe sConnectInputIterations = Integer.parseInt(val); 1567e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } catch (NumberFormatException e) { 1577e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe // Invalid argument, fall back to default value 1587e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1597e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1607e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe 1617e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe val = arguments.getString("connect_pan_iterations"); 1627e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe if (val != null) { 1637e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe try { 1647e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe sConnectPanIterations = Integer.parseInt(val); 1657e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } catch (NumberFormatException e) { 1667e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe // Invalid argument, fall back to default value 1677e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1687e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1697e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe 170826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("pair_address"); 171826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 172826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sPairAddress = val; 173826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 174826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 175826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("headset_address"); 176826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 177826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sHeadsetAddress = val; 178826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 179826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 180826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("a2dp_address"); 181826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 182826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sA2dpAddress = val; 183826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 184826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 1857e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe val = arguments.getString("input_address"); 1867e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe if (val != null) { 1877e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe sInputAddress = val; 1887e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1897e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe 1907e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe val = arguments.getString("pan_address"); 1917e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe if (val != null) { 1927e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe sPanAddress = val; 1937e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe } 1947e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe 195826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("pair_pin"); 196826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 197826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sPairPin = BluetoothDevice.convertPinToBytes(val); 198826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 199826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 200826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe val = arguments.getString("pair_passkey"); 201826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe if (val != null) { 202826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe try { 203826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe sPairPasskey = Integer.parseInt(val); 204826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } catch (NumberFormatException e) { 205826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe // Invalid argument, fall back to default value 206826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 207826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe } 208826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 209826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("enable_iterations=%d", sEnableIterations)); 210826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("discoverable_iterations=%d", sDiscoverableIterations)); 211826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("scan_iterations=%d", sScanIterations)); 212826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("pair_iterations=%d", sPairIterations)); 213826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("connect_a2dp_iterations=%d", sConnectA2dpIterations)); 214826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("connect_headset_iterations=%d", sConnectHeadsetIterations)); 2157e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe Log.i(TAG, String.format("connect_input_iterations=%d", sConnectInputIterations)); 2167e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe Log.i(TAG, String.format("connect_pan_iterations=%d", sConnectPanIterations)); 217826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("pair_address=%s", sPairAddress)); 218826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("a2dp_address=%s", sA2dpAddress)); 219826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("headset_address=%s", sHeadsetAddress)); 2207e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe Log.i(TAG, String.format("input_address=%s", sInputAddress)); 2217e4d0c0982cb28a86bf3d45c3b316ec7eab1e017Eric Rowe Log.i(TAG, String.format("pan_address=%s", sPanAddress)); 222826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("pair_pin=%s", new String(sPairPin))); 223826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe Log.i(TAG, String.format("pair_passkey=%d", sPairPasskey)); 224826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe 225826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe // Call onCreate last since we want to set the static variables first. 226826af6266c79d76b81fe850b9cd3d351597e4adbEric Rowe super.onCreate(arguments); 227e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe } 228e1d666b632608a2f708cb3df06c796e16d5d1717Eric Rowe} 229