在Android中模拟广播

我需要知道如何模拟broadcastreceiver

我有以下代码,但我不知道如何真正了解它何时接收广播。

public class LocationBroadcastReceiver extends BroadcastReceiver 
{
@Override

public void onReceive(Context context, Intent intent) {


    Bundle b = intent.getExtras();
    Location loc = (Location)b.get(android.location.LocationManager.KEY_LOCATION_CHANGED);

    Toast.makeText(context, loc.toString(), Toast.LENGTH_SHORT).show(); 
    Log.d("com.dennis.test","LOCATION:  " + loc.toString());


}
}

在我的清单中,我有以下几点:

<receiver android:name="com.dennis.test.LocationBroadcastReceiver">
    <intent-filter>
        <action android:name="android.location.LocationManager.KEY_LOCATION_CHANGED" />
    </intent-filter>
</receiver>

转到安装了android-sdk的文件夹,然后转到平台工具。 将会有一些可执行文件。 其中之一是'adb'。

在文件夹中时,执行

./adb shell am broadcast -a android.intent.action.KEY_LOCATION_CHANGED -c android.intent.category.HOME -n com.dennis.test / .LocationBroadcastReceiver

或在Windows上

广播外壳广播-a android.intent.action.KEY_LOCATION_CHANGED -c android.intent.category.HOME -n com.dennis.test / .LocationBroadcastReceiver


您还应该能够使用MockLocation从您的可执行文件或JUnit中生成。 我没有使用它,但这是它的目的。

它可能在功能上类似于@ user1258903的答案,但应该能够发送到很远的位置(即北极,妈妈的房子,海底等)。这样你可以测试你的计算和地图集成等你可能拥有。

如何在Android模拟器中模拟GPS位置?

链接地址: http://www.djcxy.com/p/90653.html

上一篇: Emulate a broadcast in Android

下一篇: Android Fused Location API. Location Always null