私はXamarinアプリを持っていて、アプリに入るためのパスコードが必要です。私はこのコンポーネントを使用しようとしましたが、 https://components.xamarin.com/view/lock-screenですが、なぜ動作しないのか分かりません。 (ドロイドプロジェクトで)私のMainActiviy.csファイルでパスコードの実装xamarin android
は、私はこれを追加してみました:
protected override void OnStart()
{
base.OnStart();
Locker.OnStart(this);
}
protected override void OnPause()
{
base.OnPause();
Locker.OnPause(this);
}
アプリはちょうど通常通り動作しますが、ノーロック画面。私は、同様に他の方法を試してみましたPasscodeProtectedActivityをサブクラス化することにより、パスコードで保護活動を作成することにより:(コードはMainActivityクラスにあったものと同じである)
public class MyProtectedActivity : PasscodeProtectedActivity
{
protected override void OnCreate(Bundle bundle)
{
MobileAds.Initialize(ApplicationContext, "myId");
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
}
}
これを使用して、私はエラーが「名前を言ってますTabLayoutResourceが存在しない」、 『名前ToolbarResourceは存在しません』と 『名前LoadApplicationは』
存在しないMainActivityクラスは、私はできません。この
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
を使用していますやります。だから私はそれを動作させる方法は?
EDIT:@ GraceFengの答えに続き
、私はパスコードを使用し、ハローボタンを表示するために得ることができ、(サンプルコードで行われているように)私はボタンを押すしかしとき、代わりに示すのパスコード画面には、私はこのラインでSystem.InvalidCastExceptionのを取得
((LockLogic)Application.Context).PasscodeManager.Show(this);
注:LockLogicは、試料中のApp.csという名前のファイルに相当します
これはおそらくXamarin Formsアプリケーションでは機能しません。 PasscodeProtectedActivityはネイティブアンドロイドのアクティビティであるようです。 LoadApplication()が呼び出されると、Xamarin Forms UIがユーザーに提示されます。 – Joagwa