首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Android中测试GPS

在Android中测试GPS
EN

Stack Overflow用户
提问于 2009-12-29 12:22:46
回答 6查看 25.6K关注 0票数 17

如何在安卓系统中测试全球定位系统应用程序(http://en.wikipedia.org/wiki/Android_(operating_system%29)?我们可以使用安卓仿真器(http://en.wikipedia.org/wiki/Android_(operating_system%29#Software_development_kit)?)进行测试吗

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-12-29 20:48:52

是。

如果您使用Eclipse ADT插件进行开发,那么在启动仿真器之后打开DDMS透视图并查找emulator Control视图。有一个位置控制部分,允许您发送固定的纬度和经度坐标,或者GPX (GPS交换格式)或KML (Keyhole Markup Language)文件,如果您想要以固定的间隔发送多个坐标(以模拟特定路线的行进)。

或者,您可以简单地telnet到模拟器并从命令行使用geo命令,该命令支持固定的纬度和经度坐标以及NMEA数据语句:

代码语言:javascript
复制
telnet localhost 5554
geo fix -82.411629 28.054553
geo nmea $GPGGA,001431.092,0118.2653,N,10351.1359,E,0,00,,-19.6,M,4.1,M,,0000*5B
票数 27
EN

Stack Overflow用户

发布于 2010-10-15 17:10:50

也许你想使用一个单元测试,所以你可以试试:

代码语言:javascript
复制
public class GPSPollingServiceTest extends AndroidTestCase {
    private LocationManager locationManager;

    public void testGPS() {
        LocationManager locationManager = (LocationManager) this.getContext().getSystemService(Context.LOCATION_SERVICE);
        locationManager.addTestProvider("Test", false, false, false, false, false, false, false, Criteria.POWER_LOW, Criteria.ACCURACY_FINE);
        locationManager.setTestProviderEnabled("Test", true);

        // Set up your test

        Location location = new Location("Test");
        location.setLatitude(10.0);
        location.setLongitude(20.0);
        locationManager.setTestProviderLocation("Test", location);

        // Check if your listener reacted the right way

        locationManager.removeTestProvider("Test");
    }
}

要执行此操作,您还需要对AndroidManifest.xml具有所需的权限:

代码语言:javascript
复制
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
票数 15
EN

Stack Overflow用户

发布于 2009-12-29 12:26:14

也许this测试应用程序或this可以帮助您。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1972895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档