1 /* 2 * Copyright (C) 2016 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package android.location; 18 19 import java.util.concurrent.Executor; 20 21 /** 22 * Used for receiving NMEA sentences from the GNSS. 23 * NMEA 0183 is a standard for communicating with marine electronic devices 24 * and is a common method for receiving data from a GNSS, typically over a serial port. 25 * See <a href="http://en.wikipedia.org/wiki/NMEA_0183">NMEA 0183</a> for more details. 26 * You can implement this interface and call 27 * {@link LocationManager#addNmeaListener(Executor, OnNmeaMessageListener)} to receive NMEA data 28 * from the GNSS engine. 29 */ 30 public interface OnNmeaMessageListener { 31 /** 32 * Called when an NMEA message is received. 33 * @param message NMEA message 34 * @param timestamp Timestamp of the location fix, as reported by the GNSS chipset. The value 35 * is specified in Unix time milliseconds since 1st January 1970, 00:00:00 UTC 36 */ onNmeaMessage(String message, long timestamp)37 void onNmeaMessage(String message, long timestamp); 38 } 39