質問編集履歴

1

ソースコードを変更した。

2018/09/03 16:03

投稿

hama1185
hama1185

スコア18

test CHANGED
File without changes
test CHANGED
@@ -8,111 +8,11 @@
8
8
 
9
9
  ### 発生している問題・エラーメッセージ
10
10
 
11
- run上
12
-
13
- ```
14
-
15
- E/AndroidRuntime: FATAL EXCEPTION: main
16
-
17
- Process: com.example.hamataku.twitterpractice, PID: 7841
18
-
19
- java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.hamataku.twitterpractice/com.example.hamataku.twitterpractice.MainActivity}: android.os.NetworkOnMainThreadException
20
-
21
- at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2613)
22
-
23
- at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2772)
24
-
25
- at android.app.ActivityThread.-wrap12(ActivityThread.java)
26
-
27
- at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1515)
28
-
29
- at android.os.Handler.dispatchMessage(Handler.java:102)
30
-
31
- at android.os.Looper.loop(Looper.java:241)
32
-
33
- at android.app.ActivityThread.main(ActivityThread.java:6223)
34
-
35
- at java.lang.reflect.Method.invoke(Native Method)
36
-
37
- at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
38
-
39
- at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
40
-
41
- Caused by: android.os.NetworkOnMainThreadException
42
-
43
- at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1303)
44
-
45
- at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:86)
46
-
47
- at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:74)
48
-
49
- at java.net.InetAddress.getAllByName(InetAddress.java:752)
50
-
51
- at com.android.okhttp.internal.Network$1.resolveInetAddresses(Network.java:29)
52
-
53
- at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:187)
54
-
55
- at com.android.okhttp.internal.http.RouteSelector.nextProxy(RouteSelector.java:156)
56
-
57
- at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:98)
58
-
59
- at com.android.okhttp.internal.http.HttpEngine.createNextConnection(HttpEngine.java:346)
60
-
61
- at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:329)
62
-
63
- at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:247)
64
-
65
- at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:457)
66
-
67
- at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:405)
68
-
69
- at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:521)
70
-
71
- at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)
72
-
73
- at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java)
74
-
75
- at twitter4j.HttpResponseImpl.<init>(HttpResponseImpl.java:35)
76
-
77
- at twitter4j.HttpClientImpl.handleRequest(HttpClientImpl.java:149)
78
-
79
- at twitter4j.HttpClientBase.request(HttpClientBase.java:57)
80
-
81
- at twitter4j.HttpClientBase.get(HttpClientBase.java:75)
82
-
83
- at twitter4j.TwitterBaseImpl.fillInIDAndScreenName(TwitterBaseImpl.java:133)
84
-
85
- at twitter4j.TwitterImpl.verifyCredentials(TwitterImpl.java:884)
86
-
87
- at com.example.hamataku.twitterpractice.MainActivity.<init>(MainActivity.kt:15)
88
-
89
- at java.lang.Class.newInstance(Native Method)
90
-
91
- at android.app.Instrumentation.newActivity(Instrumentation.java:1079)
92
-
93
- at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2603)
94
-
95
- at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2772) 
96
-
97
- at android.app.ActivityThread.-wrap12(ActivityThread.java) 
98
-
99
- at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1515) 
100
-
101
- at android.os.Handler.dispatchMessage(Handler.java:102) 
102
-
103
- at android.os.Looper.loop(Looper.java:241) 
104
-
105
- at android.app.ActivityThread.main(ActivityThread.java:6223) 
106
-
107
- at java.lang.reflect.Method.invoke(Native Method) 
108
-
109
- at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 
110
-
111
- at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) 
112
-
113
- Application terminated.
114
11
 
115
12
 
13
+ ```
14
+
15
+ at com.example.hamataku.twitterpractice.MainActivity$task$1.doResume(MainActivity.kt:37)
116
16
 
117
17
  ```
118
18
 
@@ -130,7 +30,7 @@
130
30
 
131
31
  val twitter : Twitter = TwitterFactory.getSingleton()
132
32
 
133
- val user : User = twitter.verifyCredentials()
33
+
134
34
 
135
35
 
136
36
 
@@ -142,11 +42,29 @@
142
42
 
143
43
 
144
44
 
145
-
146
-
147
45
  val button : Button = findViewById(R.id.button1)
148
46
 
149
47
 
48
+
49
+ val listner = View.OnClickListener {
50
+
51
+ v: View? ->
52
+
53
+ launch(UI) {
54
+
55
+ task(twitter).await()
56
+
57
+ }
58
+
59
+ }
60
+
61
+ button.setOnClickListener(listner)
62
+
63
+ }
64
+
65
+ fun task(twitter : Twitter): Deferred<Status> = async(CommonPool) {
66
+
67
+ val user : User = twitter.verifyCredentials()
150
68
 
151
69
  val name : String = user.name
152
70
 
@@ -154,21 +72,11 @@
154
72
 
155
73
  val follow : Int = user.friendsCount
156
74
 
157
- val listner = View.OnClickListener {
158
-
159
- v: View? ->
160
-
161
- var status : Status = twitter.updateStatus("Twitter4Jから初めてのツイート!" + "友達" + follow +"フォロワー" + follower + "name" + name + "#twitter4j")
75
+ twitter.updateStatus("Twitter4Jから初めてのツイート!" + "友達" + follow +"フォロワー" + follower + "name" + name + "#twitter4j")
162
-
163
- }
164
-
165
- button.setOnClickListener(listner)
166
76
 
167
77
  }
168
78
 
169
79
  }
170
-
171
-
172
80
 
173
81
  ```
174
82