私はXamarinプラットフォームの初心者です。私は最近、プラットフォームを学ぶ唯一の目的でいくつかの簡単なアプリケーションの開発に着手しました。私は "問題"に遭遇しました。 Androidプラットフォーム上の私のクロスプラットフォームアプリケーション(他のプラットフォームではテストしていません)は、珍しい量のバッテリを消費します。たとえば、約2分の使用で、アプリはバッテリーの5%を消費します。これと比較すると、ディスプレイは6%を消費します。私は、バッテリー消費量ページ(Androidの設定)に入ることでそれを見つけました。これは、イベントハンドラをnullに設定していないためです(つまり、これらのイベントハンドラを破棄する(下記のコードを参照)。Xamarin Androidアプリは、異常な量のバッテリーを消費します。どうして?
これは私のXAMLコードです:
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:XamarinSample"
x:Class="XamarinSample.MainPage">
<StackLayout>
<Slider VerticalOptions="CenterAndExpand"
ValueChanged="OnSliderValueChanged"/>
<Label x:Name="valueLabel"
HorizontalOptions="Center"
VerticalOptions="CenterAndExpand"
Text="A Simple Label"
Font="Large"/>
<Button HorizontalOptions="Center"
VerticalOptions="CenterAndExpand"
Text="Click me!"
Clicked="OnButtonClick"/>
</StackLayout>
</ContentPage>
そして、これはコードビハインドである:
namespace XamarinSample
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
protected override void OnDisappearing()
{
base.OnDisappearing();
}
void OnSliderValueChanged(object sender, ValueChangedEventArgs args)
{
valueLabel.Text = args.NewValue.ToString("F3");
}
async void OnButtonClick(object sender, EventArgs args)
{
Button button = (Button)sender;
await DisplayAlert("Clicked!",
"The button labeled '" + button.Text + "' has been clicked","OK");
}
}
}
誰かが私に理由何ができるかの方向を隠してもらえこの行動のために?前もって感謝します!
ご提案いただきありがとうございます!私はそのツールについて聞いていない。私はそれを試してみる:) –