Androidプログラミングは初めてで、サンプルのhello worldプログラムを開始しましたが、次のエラーが発生しました。
07-05 13:52:20.830: W/dalvikvm(898): threadid=1: thread exiting with uncaught exception (group=0xb2ac4d70)
07-05 13:52:20.850: E/AndroidRuntime(898): FATAL EXCEPTION: main
07-05 13:52:20.850: E/AndroidRuntime(898): Process: com.example.helloandroid, PID: 898
07-05 13:52:20.850: E/AndroidRuntime(898): Java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.helloandroid/com.example.helloandroid.MainActivity}: Android.util.AndroidRuntimeException: You cannot combine swipe dismissal and the action bar.
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2197)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2258)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread.access$800(ActivityThread.Java:138)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1209)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.os.Handler.dispatchMessage(Handler.Java:102)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.os.Looper.loop(Looper.Java:136)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread.main(ActivityThread.Java:5026)
07-05 13:52:20.850: E/AndroidRuntime(898): at Java.lang.reflect.Method.invokeNative(Native Method)
07-05 13:52:20.850: E/AndroidRuntime(898): at Java.lang.reflect.Method.invoke(Method.Java:515)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:777)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:602)
07-05 13:52:20.850: E/AndroidRuntime(898): at dalvik.system.NativeStart.main(Native Method)
07-05 13:52:20.850: E/AndroidRuntime(898): Caused by: Android.util.AndroidRuntimeException: You cannot combine swipe dismissal and the action bar.
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.Java:275)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.Java:2872)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.Java:3129)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.Android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.Java:303)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.Activity.setContentView(Activity.Java:1930)
07-05 13:52:20.850: E/AndroidRuntime(898): at com.example.helloandroid.MainActivity.onCreate(MainActivity.Java:13)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.Activity.performCreate(Activity.Java:5242)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1087)
07-05 13:52:20.850: E/AndroidRuntime(898): at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2161)
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="com.example.helloandroid"
Android:versionCode="1"
Android:versionName="1.0" >
<uses-sdk
Android:minSdkVersion="8"
Android:targetSdkVersion="18" />
<application
Android:allowBackup="true"
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
<activity
Android:name="com.example.helloandroid.MainActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
package com.example.helloandroid;
import Android.app.Activity;
import Android.os.Bundle;
import Android.widget.TextView;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
>
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="@string/hello" />
</RelativeLayout>
私が間違っている場所を見つけるのを助けてください、私は現在Android 4.3、API 18、
Android 4.0.3 API 15、Android 4.4W API 20;以下のようにSDKを編集しようとしましたが、運はありません。
<uses-sdk
Android:minSdkVersion="15"
Android:targetSdkVersion="19" />
4.4WはAndroid Wear SDKです。 (Androidウェアデバイスをターゲットにしないでください)
ターゲットSDKバージョンを19に変更してみてください
ここを確認してください targetSdkVersion設定
APIレベル20およびPlatform 4.4W(Android Wear SDK)をAndroid仮想デバイスとして使用しないでください。
APIレベル19とプラットフォーム4.4.2を使用して、すべて正常に動作します。
同じ問題がありました。しかし、sdkバージョンはこの例外の原因ではありませんでした。
AndroidManifest.xmlファイルには、テーマにActionBarが含まれています。
Android:theme="@style/AppTheme" >
上記の行を
Android:theme="@Android:style/Theme.DeviceDefault" >
これで例外が修正されます。
4.4WはAndroid Wear SDK。
このエラーは、ターゲットとするデバイスがAndroid異なるデザインパターンのウェアであるためです。
モバイルアプリケーションを開発している場合は、AVDを変更して20未満のAPIをターゲットにするか、API 20(Lプレビュー)を選択します。
または、Android Wearをターゲットにしている場合は、アプリのデザインを変更してください。
Android Studio beta 0.8.6 with Java 7.を使用しています。同じ問題がありました。この方法で修正しました。
AndroidManifest.xmlファイルには、テーマにActionBarが含まれています。
Android:theme="@style/AppTheme" >
上記の行を
Android:theme="@Android:style/Theme.DeviceDefault" >
これで例外が修正されます。 Gangadharが前の回答で述べたように、SDKバージョンはこの例外の原因ではありませんでした。
そして、helloWorldアプリでテストしました。
Samsung Gearデバイスでウェアプロジェクトのモバイル部分を実行しようとしたため、このエラーが発生しました。実行構成で「モバイル」から「ウェア」に切り替えた後、すべてが機能しました(この場合、APIレベル20およびプラットフォーム4.4Wは確かに正しい選択です)。
Eclipseでプロジェクトを作成しようとすると、この問題が発生しました。
マニフェストファイルに以下を追加する必要がありました。
<uses-feature Android:name="Android.hardware.type.watch" />
values/styles.xmlに移動して、スタイルを次のように設定します。
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="Android:Theme.DeviceDefault">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
</resources>
また、フォルダーres/values-v11およびres/values-v14、およびvalues-vxxのすべてのフォルダーでは、styles.xmlファイルを次のように変更します。
<resources>
<!--
Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.
-->
<style name="AppBaseTheme" parent="Android:Theme.DeviceDefault">
<!-- API 14 theme customizations can go here. -->
</style>
</resources>
アクションバーのテーマはウェアデバイスと互換性がないため、追加する必要はありません。
ターゲットSDKバージョンを19に変更します
APIレベル19およびプラットフォーム4.4.2をインストールします
AVDでアプリケーションを実行しながら、APIレベル19およびプラットフォーム4.4.2を使用します。
私は問題を解決するために多くの努力をしています。 AndroidManifest.xmlで行った変更を除いて、何も機能しません。
<uses-sdk
Android:minSdkVersion="7"
Android:targetSdkVersion="21" />
Android:targetSdkVersion
を削除してください。うまくいきました。試してみることもできます。