0

あなたがここにいるなら、私と同じように、Swarm SDK の最新バージョンが原因で、エクスポートしてインストールした APK がクラッシュする原因を探して、インターネット全体を探し回ったことでしょう。

Google クラッシュ / ANR レポートからのエラー メッセージ:

android.content.ActivityNotFoundException: Unable to find explicit activity class
{com.robertmackness.jumprx.android/com.swarmconnect.de}; 
have you declared this activity in your AndroidManifest.xml?

グーグルと公式文書を読むのに時間がかかりすぎた後、次の修正を試みました。

  1. Android マニフェストでアクティビティを明示的に定義します。

  2. 上記と同様ですが、manifestmerger.enabled=false であることを確認してください。

  3. Android マニフェストのアクティビティの定義を削除し、manifestmerger.enabled=true を設定して、この行が 2 番目であることを確認します (pro-guard を有効にした後)。

  4. プロジェクトがライブラリを適切にインポートしたことを確認し、「プロパティ -> Java ビルド パス -> 注文とエクスポート -> SwarmConnect.jar」がチェックされていることを確認しました。

繰り返しますが、上記の解決策はすべてデバッグ アプリの動作を維持しましたが、エクスポートされた apk はさまざまな方法で壊れていました。

以下に解決策を提出します。

4

1 に答える 1

0

そのため、proguard を構成し、proguard-project.txt に保持するクラス名を指定していませんでした。私もずっと前に設定したので、すべてを忘れていました..

Admob との統合が最初にうまくいかなかったのとまったく同じ理由なので、少しばかげていると感じました。

これを proguard-project.txt に入れて実行します。

-keep class com.swarmconnect.**{*;}

-keepattributes Signature

-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
于 2015-01-14T00:32:53.127 に答える