質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

0回答

1663閲覧

AIDEを使ってAppCompatActivityが使えない

tseki_is

総合スコア9

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2020/04/17 12:06

編集2022/01/12 10:55

AIDEを使ってandroidアプリ開発をしています。
そこでAppCompatActivityをextendsするとビルドエラーは出ないですが、実行時エラーで落ちてしまいます。
落ちずにするにはどのようにすればいいでしょうか?

以下にソースコードを示します。

MainActivity.java

package com.mycompany.myapp2; import android.app.*; import android.os.*; import android.support.v7.app.*; import android.support.v7.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

**buile.gradle **

apply

1 2android { 3 compileSdkVersion 27 4 buildToolsVersion "27.+" 5 6 defaultConfig { 7 applicationId "com.mycompany.myapp2" 8 minSdkVersion 14 9 targetSdkVersion 28 10 versionCode 1 11 versionName "1.0" 12 } 13 buildTypes { 14 release { 15 minifyEnabled false 16 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 } 18 } 19} 20 21dependencies { 22 compile('android.arch.core:runtime:+') {force = true} 23 api 'com.android.support:appcompat-v7:27.+' 24 compile fileTree(dir: 'libs', include: ['*.jar']) 25}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp2" > <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" android:resizeableActivity = "true"> <activity android:name=".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>

layout/main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center"> <TextView android:text="@string/hello_world" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>

values/styles.xml

<?xml version="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> </style> </resources>

values-v21/styles.xml

<?xml version="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> </style> </resources>

MainActivity.javaのsuper.onCreate(savedInstanceState);にブレークポイントを設定しstepinするとそこで落ちる為、この部分に問題がありそうです。

その時のエラーメッセージを掲載します。

04-17 20:01:10.902 8162 8162 E AndroidRuntime FATAL EXCEPTION: main 04-17 20:01:10.902 8162 8162 E AndroidRuntime Process: com.mycompany.myapp2, PID: 8162 04-17 20:01:10.902 8162 8162 E AndroidRuntime java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/appcompat/R$drawable; 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.widget.AppCompatDrawableManager.<clinit>(AppCompatDrawableManager.java:107) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.widget.AppCompatDrawableManager.get(AppCompatDrawableManager.java:84) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:85) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:128) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:149) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:56) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegateImplV23.<init>(AppCompatDelegateImplV23.java:31) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegateImplN.<init>(AppCompatDelegateImplN.java:31) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:198) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:183) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:519) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:70) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at com.mycompany.myapp2.MainActivity.access$Sandroid$support$v7$app$AppCompatActivity$1(Unknown Source:4) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at com.mycompany.myapp2.MainActivity$0$debug.onCreate(MainActivity.java:12) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at com.mycompany.myapp2.MainActivity.onCreate(Unknown Source:14) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.Activity.performCreate(Activity.java:7196) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.Activity.performCreate(Activity.java:7187) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3027) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3182) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1907) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.os.Handler.dispatchMessage(Handler.java:106) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.os.Looper.loop(Looper.java:193) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at android.app.ActivityThread.main(ActivityThread.java:6894) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at java.lang.reflect.Method.invoke(Native Method) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:883) 04-17 20:01:10.902 8162 8162 E AndroidRuntime Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v7.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/com.mycompany.myapp2--zrFePYGFB313jKKEgtHqw==/base.apk"],nativeLibraryDirectories=[/data/app/com.mycompany.myapp2--zrFePYGFB313jKKEgtHqw==/lib/arm64, /system/lib64, /product/lib64]] 04-17 20:01:10.902 8162 8162 E AndroidRuntime at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:379) 04-17 20:01:10.902 8162 8162 E AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:312) 04-17 20:01:10.902 8162 8162 E AndroidRuntime ... 30 more

またbuild.gradleの
compileSdkVersionや
buildToolsVersion、
targetSdkVersionや
compile('android.arch.core:runtime:+') {force = true}の部分の削除、追加

values/styles.xmlやvalues-v21/styles.xmlのstyle属性のparent要素を元々あったものに戻したり、

AIDEのMarven librariesを再読み込みしたりするとうまく行く場合があります。

上記ファイルを全く同じ状況で再現して出来る場合、出来ない場合があり、問題点がどこにあるかわからない状況です。

また下記のサイトを参考にし、今回設定してみました。(英語Q&Aサイト)
https://discourse.android-ide.com/t/solved-error-with-appcompat-27/22/4
https://stackoverflow.com/questions/47087362/how-to-import-android-support-v7-appcompat-to-aide

他の人もうまく行っていないように見えます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問