1

SKMaps (Skobbler) を使用して、Eclipse で Android アプリを開発しています。

地図を表示し、2 つのボタンがあり、タップした画面上のポイントへのルートを検索し、SDK が提供するナビゲーションを開始するアプリケーションがあります。

私の問題は、アプリが閉じたばかりのデバイスの向きを変更したときです。エラーメッセージが表示されないため、問題の原因を特定できません。

提供されているデモ アプリケーションは、デバイスの向きを簡単に処理します。LogCat で向きを変えると、次のようなメッセージが表示されることに気付きました。

05-09 12:22:37.560: D/SKMaps(7866): MapRenderer----onSurfaceChanged width = 720 height= 1134

私のアプリケーションは、次の最後のメッセージで単純に終了します。

05-09 12:22:37.745: D/SKMaps(7866): SKCurrentPositionProvider----stopped receiving position updates

向きを処理するコードがデモ アプリケーションのどこにあるのかわかりません。私がどこで間違っているのか、誰にも分かりますか?

ps。私はマニフェストで私の活動を次のように宣言しました。

<activity
    android:name="com.aatana.mymapproject.MyActivity"
    android:configChanges="orientation">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
4

2 に答える 2

1

デモ プロジェクトでは、MapActivity がその onDestroy をオーバーライドしています。

@Override
    protected void onDestroy() {
        super.onDestroy();
        currentPositionProvider.stopLocationUpdates();
        SKMaps.getInstance().destroySKMaps();
        android.os.Process.killProcess(android.os.Process.myPid());
    }

プロセスを強制終了する行を削除する必要があります。

        android.os.Process.killProcess(android.os.Process.myPid());
于 2014-09-30T07:47:52.597 に答える
0

どのバージョンの Android をターゲットにしていますか? Android 3.2 (API レベル 13) から、デバイスが縦向きと横向きに切り替わると、「画面サイズ」も変わります。

<activity 
       android:name=".activity.MapActivity" 
       android:configChanges="orientation|screenSize"> 
</activity>
于 2015-04-09T11:42:25.220 に答える