2017-10-05 145 views
-1

我正在開發一個應用程序,每10-20秒跟蹤用戶的位置。爲了使其在後臺和移動鎖定階段的工作,我不得不做出下面的代碼編輯:如何減少應用程序的電池使用情況?

在Android中:

我補充說:「WAKE_LOCK」的許可,在MainActivity中添加一行代碼。 CS像

this.Window.SetFlags(WindowManagerFlags.KeepScreenOn, WindowManagerFlags.KeepScreenOn); 

在iOS系統(AppDelegate.cs):

UIApplication.SharedApplication.IdleTimerDisabled = true; 

這使得功能良好,並正在跟蹤的位置,即使在背景和基礎,每10秒d和手機被鎖定,這是很好的。但通過添加此代碼,應用程序的電池使用量急劇增加。

任何人都可以請幫助我,如果我做任何錯誤,並建議我任何想法,以解決電池使用問題。

+0

嗨stedy.Can你請爲我的問題建議一個解決方案 –

+0

你需要防止屏幕鎖定或讓屏幕鎖定時運行的應用程序? – Jason

+0

是的Janson我也是這樣做了後臺運行代碼,但是這個程序耗盡了電量。所以請提出一些建議,以減少電池使用量,同時運行我的功能。 –

回答

0

而不是使用「UIApplication.SharedApplication.IdleTimerDisabled = true;」爲了防止手機進入睡眠模式,您可以嘗試使用「背景位置」嗎?

你可以看看this演示程序。

+0

謝謝Janson.It適用於iOS,但我能爲Android做什麼? –

+0

請注意,這是一個「Xamarin」解決方案,而不是「Xamarin.Forms」。它包含iOS和Android平臺的演示代碼。 – Jason

+0

感謝您的回覆Janson我正在做一個跨平臺的xamarin.forms應用程序 –

相關問題