Эмулировать трансляцию в Android - PullRequest
4 голосов
/ 27 марта 2012

Мне нужно знать, как эмулировать 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>

Ответы [ 2 ]

7 голосов
/ 27 марта 2012

Перейдите в папку, в которой установлен ваш android-sdk, а затем в platform-tools.Там будет несколько исполняемых файлов.Одним из них является 'adb'.

Когда в папке, выполните

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

или в windows

Оболочка adb в широковещательной рассылке -a android.intent.action.KEY_LOCATION_CHANGED -c android.intent.category.HOME -n com.dennis.test / .LocationBroadcastReceiver

0 голосов
/ 14 июня 2012

Вы также должны иметь возможность использовать MockLocation для генерации из вашего исполняемого файла или JUnit. Я не использовал его, но это его цель.

Это, вероятно, функционально аналогично ответу @ user1258903, но должно быть в состоянии отправлять удаленные места (например, Северный полюс, дом мамы, дно океана и т. Д.). Таким образом, вы можете проверить свои вычисления и карты. интеграция и т. д., которые у вас могут быть.

Как эмулировать местоположение GPS в эмуляторе Android?

...