2017-07-07 3 views
0

誰かがこのエラーに遭遇した可能性があります。それは意識です。ホーム画面のアイコンがフォルダから開いた後にクリックされた場合や、逆の場合でもAndroidマーケットのアプリケーションが再起動されますが、Playマーケットからダウンロードされた場合のみ

私はアプリを開発しました。私はそれを私のアンドロイドデバイスサムスンJ1にsideload場合、それは正常に動作します。私はブラウザ経由で私のウェブサイトからデバッグまたはロードを意味します。アプリケーションフォルダにインストールされます。アプリケーションフォルダ内のアイコンを単に押したままにして、ホーム画面のショートカットを通常の方法で作成し、デバッグ中に予想される動作を取得します。 (また、サイドロードデバイスにブラウザを介してウェブサイトからdowloaded場合の動作です)

期待される動作は正常に動作します!

1)アプリケーションフォルダから開くアプリは、アプリでanyhtingを行います。ホーム画面に行き、何でもやって、ホームスクリーンのショートカットから、またはアプリケーションを開く。それは全く問題ありません。私たちはどこから終わりましたか?

のGoogle Playストア

1からダウンロードした場合は予期しない動作)が、ホームスクリーンからアプリを起動します。アプリケーションフォルダに移動し、アプリアイコンを押すと、アプリが再び起動し、アプリ内のビジネスロジックのために悪いことが起こります。逆も同じです。アプリのフォルダからアプリを起動し、ホーム画面に移動し、アプリのアイコンをクリックして再起動します。

Playストアでアプリが変更され、これが発生します。また、店舗からダウンロードする際にパッケージのサイズが大幅に小さくなっているので、ファイルに対して何かを確実に行っていることに気付きました。

はとにかく、この問題に対処するかなりの数の記事があるようですが、私は、コミュニティへの貢献valubleを提供することができ、この場合にはそううまくいけば、溶媒和説明とまったく同じような状況を見つけることができませんでした。ありがとう!

+0

アプリからクラッシュを取得するためにHockeyAppをインストールしようとする

<activity android:launchMode="singleInstanc>e"を追加する追加LaunchMode = LaunchMode.SingleInstanceタグに注目してください。 Playストアからは、「リリース」バージョン(ビジュアルスタジオから)と「デバッグ」バージョンを使用していないことを確認してください。 – hugoterelle

+0

リリースバージョンは常に100%です。アプリケーションがクラッシュすることはありません...私はXamarin Visual Studio 17を使ってすべてを構築していることを忘れてしまいました。提案のおかげで、ホッケーはおそらく他の問題で助けてくれるはずです。 –

+0

与えられたレベルで例外がスローされ、アプリケーションの別のレベルでキャッチされた例外はありませんか? – hugoterelle

答えて

2

少しの研究の後、私は私のために働いた答えを理解しました。 MainActivity.csのXamarin Anroidプロジェクトで、LaunchMode = LaunchMode.SingleInstanceをアクティビティラベルに追加します。

マニフェストではなく、あなただけのクラスファイルで作業、あなたはXMLを直接変更することはできませんのでautomaticalyコンパイルされます。最終的には、このようなものに見えます。

主なアクティビティクラスコードの上に次のコードを貼り付けます。実際Manifesto.xml

[Activity(Label = "LavkaLavka", 
    Icon = "@drawable/icon", 
    Theme = "@style/MainTheme", 
    MainLauncher = true, 
    LaunchMode = LaunchMode.SingleInstance, 
    ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 



public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 
{ 

    protected override void OnCreate(Bundle bundle) 
    { 
     TabLayoutResource = Resource.Layout.Tabbar; 
     ToolbarResource = Resource.Layout.Toolbar; 



     base.OnCreate(bundle); 

     global::Xamarin.Forms.Forms.Init(this, bundle); 
     LoadApplication(new App()); 
    } 
} 
関連する問題