作成したタスク管理アプリがAndroid Studioのエミュレータ上では動くのですが、実機テストだと動きませんでした。
実機の詳細
- モデル番号: FTJ152A
- Androidバージョン: 5.1
エラーの内容
- タスク追加画面でOKボタンを押すと「問題が発生したため、<アプリ名>を終了します」と出る
- 2回目にアプリを起動しようとすると、起動段階で同様に終了
- エミュレーターではこのエラーは出ない
試したこと
Android.Manifest.xmlに以下を追記
xml
1<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
コード
※文字数制限のため、一部リンクになってます
MainActivity.java
https://ideone.com/12zHaP
AddActivity.java
https://ideone.com/DwkhjX
UpdateActivity.java
https://ideone.com/3AQO1s
AndroidManifest.xml
xml
1<?xml version="1.0" encoding="utf-8"?> 2<manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.example.orisa.mytask3"> 4 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 5 <application 6 android:allowBackup="true" 7 android:icon="@mipmap/ic_launcher" 8 android:label="today's task" 9 android:roundIcon="@mipmap/ic_launcher_round" 10 android:supportsRtl="true" 11 android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar"> 12 <activity android:name=".MainActivity"> 13 <intent-filter> 14 <action android:name="android.intent.action.MAIN" /> 15 16 <category android:name="android.intent.category.LAUNCHER" /> 17 </intent-filter> 18 </activity> 19 <activity android:name=".AddActivity" 20 android:label="add task"> 21 </activity> 22 <activity android:name=".UpdateActivity" 23 android:label="update task"> 24 </activity> 25 26 </application> 27 28</manifest>
build.gradle(Module:app)
java
1apply plugin: 'com.android.application' 2 3android { 4 compileSdkVersion 25 5 buildToolsVersion "25.0.2" 6 defaultConfig { 7 applicationId "com.example.orisa.mytask3" 8 minSdkVersion 15 9 targetSdkVersion 25 10 versionCode 1 11 versionName "1.0" 12 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 13 } 14 buildTypes { 15 release { 16 minifyEnabled false 17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 18 } 19 } 20} 21 22dependencies { 23 compile fileTree(dir: 'libs', include: ['*.jar']) 24 androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 25 exclude group: 'com.android.support', module: 'support-annotations' 26 }) 27 compile 'com.android.support:appcompat-v7:25.3.1' 28 compile 'com.android.support.constraint:constraint-layout:1.0.2' 29 testCompile 'junit:junit:4.12' 30 compile 'com.android.support:design:25.3.1' 31}
logcat出力
※長いのでリンクです
全体
https://writening.net/page?ZyYvvk
Errorのみ
https://writening.net/page?CKyxvX
6/19追記
OKボタンを押したときにエラーが出て、細かくデバッグしてみました。
AddActivity.java内の、okBtn.setOnClickListener内の最後の行のfinish()までは正常に動きますが、その次の行に行くと画面が真っ暗になります。
また、その前の行でToastを表示していますが、Toastが表示されません。
画面が真っ暗になるのはView.javaに移った時で、
java
1try { 2 drawable.draw(canvas); 3 } finally { 4 renderNode.end(canvas); 5 }
の終わりでエラーが起きているようです。
これ以外にも、View.javaにたくさんエラーが出ています。
エラー文
06-19 04:07:09.595 2424-2931/com.google.android.gms E/SystemUpdateService: Failed to call RecoverySystem.cancelScheduledUpdate
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at xae.c(:com.google.android.gms:134)
at afuw.d(:com.google.android.gms:195)
at afuw.p(:com.google.android.gms:2178)
at afuw.a(:com.google.android.gms:448)
at afuw.doInBackground(:com.google.android.gms:50475)
at android.os.AsyncTask$2.call(AsyncTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.io.IOException: cancel scheduled update failed
at android.os.RecoverySystem.cancelScheduledUpdate(RecoverySystem.java:563)
at java.lang.reflect.Method.invoke(Native Method)
at xae.c(:com.google.android.gms:134)
at afuw.d(:com.google.android.gms:195)
at afuw.p(:com.google.android.gms:2178)
at afuw.a(:com.google.android.gms:448)
at afuw.doInBackground(:com.google.android.gms:50475)
at android.os.AsyncTask$2.call(AsyncTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.lang.Thread.run(Thread.java:761)
06-19 04:07:09.595 2424-2931/com.google.android.gms E/SystemUpdateTask: exception trying to cancel scheduled update
java.io.IOException: Failed to invoke RecoverySystem.cancelScheduledUpdate
at xae.c(:com.google.android.gms:140)
at afuw.d(:com.google.android.gms:195)
at afuw.p(:com.google.android.gms:2178)
at afuw.a(:com.google.android.gms:448)
at afuw.doInBackground(:com.google.android.gms:50475)
at android.os.AsyncTask$2.call(AsyncTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.lang.Thread.run(Thread.java:761)
回答1件
あなたの回答
tips
プレビュー