teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

コード、エラーメッセージの詳細を追加

2020/04/09 09:35

投稿

hatahata-tt
hatahata-tt

スコア5

title CHANGED
File without changes
body CHANGED
@@ -4,23 +4,80 @@
4
4
 
5
5
  ### 発生している問題・エラーメッセージ
6
6
 
7
- エミュレータを立ち上げて確認しようとしていますが、起動せずに困っています。。
7
+ 開発中のアプリをエミュレータを立ち上げて確認しようとしていますが、以下のエラーよりアプリが落ちてしまい困っています。。
8
8
 
9
+ ```
10
+ 2020-04-09 18:32:37.189 23279-23279/com.example.abb E/AndroidRuntime: FATAL EXCEPTION: main
11
+ Process: com.example.abb, PID: 23279
12
+ java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.abb/com.example.abb.MainActivity}: java.lang.IllegalStateException: Method call should not happen from the main thread.
13
+ at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3333)
14
+ at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3477)
15
+ at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
16
+ at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
17
+ at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
18
+ at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2043)
19
+ at android.os.Handler.dispatchMessage(Handler.java:106)
20
+ at android.os.Looper.loop(Looper.java:216)
21
+ at android.app.ActivityThread.main(ActivityThread.java:7464)
22
+ at java.lang.reflect.Method.invoke(Native Method)
23
+ at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
24
+ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:955)
25
+ Caused by: java.lang.IllegalStateException: Method call should not happen from the main thread.
26
+ at com.squareup.picasso.Utils.checkNotMain(Utils.java:121)
27
+ at com.squareup.picasso.RequestCreator.get(RequestCreator.java:416)
28
+ at com.example.abb.MainActivity.onCreate(MainActivity.kt:28)
29
+ at android.app.Activity.performCreate(Activity.java:7990)
30
+ at android.app.Activity.performCreate(Activity.java:7979)
31
+ at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
32
+ at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3308)
33
+ at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3477) 
34
+ at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 
35
+ at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
36
+ at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
37
+ at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2043) 
38
+ at android.os.Handler.dispatchMessage(Handler.java:106) 
39
+ at android.os.Looper.loop(Looper.java:216) 
40
+ at android.app.ActivityThread.main(ActivityThread.java:7464) 
41
+ at java.lang.reflect.Method.invoke(Native Method) 
42
+ at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549) 
43
+ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:955) 
44
+ ```
45
+
9
46
  ### 該当のソースコード
10
47
 
11
48
  ```kotlin
12
- var bitmap: Bitmap = Picasso.get().load(url).get()
49
+ class MainActivity : AppCompatActivity() {
13
- var drawable = BitmapDrawable(resources, bitmap)
14
50
 
51
+ override fun onCreate(savedInstanceState: Bundle?) {
52
+ super.onCreate(savedInstanceState)
53
+ setContentView(R.layout.activity_main)
54
+
55
+ var url = "http://i.imgur.com/DvpvklR.png"
56
+
57
+ var bitmap: Bitmap = Picasso.get().load(url).get()
58
+ var drawable = BitmapDrawable(resources, bitmap)
59
+
15
- val navView: BottomNavigationView = findViewById(R.id.nav_view)
60
+ val navView: BottomNavigationView = findViewById(R.id.nav_view)
16
- var menu: Menu = navView.menu
61
+ var a: Menu = navView.menu
17
- val item: MenuItem = menu.findItem(R.id.navigation_home)
62
+ val b: MenuItem = a.findItem(R.id.navigation_home)
63
+
18
- item.setIcon(drawable)
64
+ b.setIcon(drawable)
65
+
66
+ val navController = findNavController(R.id.nav_host_fragment)
67
+ // Passing each menu ID as a set of Ids because each
68
+ // menu should be considered as top level destinations.
69
+ val appBarConfiguration = AppBarConfiguration(setOf(
70
+ R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications))
71
+ setupActionBarWithNavController(navController, appBarConfiguration)
72
+ navView.setupWithNavController(navController)
73
+ }
74
+
75
+ }
19
76
  ```
20
77
 
21
78
  ### 試したこと
22
79
 
23
- 非同期制御が必要なのかと思い、runBlockingを使って試してみてましたがエミュレタは起動せずでした
80
+ 非同期制御が必要なのかと思い、runBlockingを使って試してみてましたが非同期処理の基礎を理解できていなくが解消できずで
24
81
 
25
82
  ### 補足情報(FW/ツールのバージョンなど)
26
83
 

1

ソースコードを修正しました

2020/04/09 09:35

投稿

hatahata-tt
hatahata-tt

スコア5

title CHANGED
File without changes
body CHANGED
@@ -10,6 +10,8 @@
10
10
 
11
11
  ```kotlin
12
12
  var bitmap: Bitmap = Picasso.get().load(url).get()
13
+ var drawable = BitmapDrawable(resources, bitmap)
14
+
13
15
  val navView: BottomNavigationView = findViewById(R.id.nav_view)
14
16
  var menu: Menu = navView.menu
15
17
  val item: MenuItem = menu.findItem(R.id.navigation_home)