0
私のプログラムはうまくいっていますが、突然NETWORK_PROVIDER
が場所の更新を停止しました。 WIFIが有効になっていると、これも機能しません。 なぜ誰かが知っていますか?NETWORK_PROVIDERが場所の更新を提供していません
ありがとうございました!ここで
は、いくつかの(crypled)は、Javaです:
package com.tripr;
public class MyWallpaperService extends WallpaperService{
<snip>
@Override
public Engine onCreateEngine() {
return new CubeEngine(this);
}
class CubeEngine extends Engine implements LocationListener{
private MyWallpaperService mws;
private LocationManager lm;
<snip>
CubeEngine(MyWallpaperService mymws) {
mws = mymws;
lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
requestLocationUpdates();
MyThread myThread = new MyThread(lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER));
myThread.start();
}
void requestLocationUpdates(){
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000*30, 10, this);
}
void removeUpdates(){
lm.removeUpdates(this);
}
@Override
public void onLocationChanged(Location location) {
MyThread myThread = new MyThread(location);
myThread.start();
}
<snip>
}
とマニフェスト:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.tripr"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:name="android.software.live_wallpaper" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<service android:name=".MyWallpaperService"
android:label="@string/app_name"
android:icon="@drawable/icon"
android:permission="android.permission.BIND_WALLPAPER">
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
</intent-filter>
<meta-data android:name="android.service.wallpaper"
android:resource="@xml/livewallpaper" />
</service>
</application>
</manifest>
あなたがしようとしましたそれは実際のデバイスでですか?私はあなたがエミュレータでNETWORK_PROVIDERサービスを実現できるかどうか分かりません... –
はい、私は2つの異なるデバイスで試して、両方で作業しませんでした – nomoral
isLocationProviderEnabled(LocationManager.NETWORK_PROVIDER)を確認しますか? –