我尝试在设备7.0上运行,并且orid收到错误消息应用已停止
这是Logcat:
09-08 16:20:39.510 24313-24313/? E/Zygote: v2
09-08 16:20:39.511 24313-24313/? E/Zygote: accessInfo : 0
09-08 16:20:39.819 24313-24313/com.test.myacc.test E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.test.myacc.test, PID: 24313
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.myacc.test/com.test.myacc.test.MainActivity}: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2984)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)
Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState
at com.test.myacc.test.MainActivity.onCreate(MainActivity.kt)
at android.app.Activity.performCreate(Activity.java:6955)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)
在调试中没有错误,所有文件都是干净的
AndroidManifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.myacc.test">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:theme="@android:style/Theme.Black.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MenuActivity"
android:theme="@android:style/Theme.Black.NoTitleBar"/>
<activity
android:name=".GameActivity"
android:theme="@android:style/Theme.Black.NoTitleBar"/>
<activity
android:name=".HelpActivity"
android:theme="@android:style/Theme.Black.NoTitleBar"/>
</application>
MainActivity
package com.test.myacc.test
import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.os.CountDownTimer
import android.view.Menu
import android.view.MenuItem
import android.view.animation.AnimationUtils
import android.widget.TextView
class MainActivity : Activity() {
private var timer: CountDownTimer? = null
lateinit var tvCompany: TextView
override fun onCreate(savedInstanceState: Bundle) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
menuActivity()
tvCompany = findViewById(R.id.tvCompany) as TextView
val anim = AnimationUtils.loadAnimation(this, R.anim.screensaver_company)
tvCompany.startAnimation(anim)
timer = object : CountDownTimer(3000, 1000) {
override fun onTick(millisUntilFinished: Long) {}
override fun onFinish() {
tvCompany.text = "PRESENTS"
}
}.start()
timer = object : CountDownTimer(4000, 1000) {
override fun onTick(millisUntilFinished: Long) {}
override fun onFinish() {
tvCompany.text = "GAME"
}
}.start()
timer = object : CountDownTimer(5000, 1000) {
override fun onTick(millisUntilFinished: Long) {}
override fun onFinish() {
menuActivity()
}
}.start()
}
private fun menuActivity() {
val intent = Intent(this, MenuActivity::class.java)
startActivity(intent)
}
override fun onCreateOptionsMenu(menu: Menu): Boolean {
// Inflate the menu; this adds items to the action bar if it is present.
menuInflater.inflate(R.menu.menu_main, menu)
return true
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
val id = item.itemId
return if (id == R.id.action_settings) {
true
} else super.onOptionsItemSelected(item)
}
}
我在S.O上读取了所有线程,但没有人帮助解决我的问题。
顺便说一句,代码已从Java文件转换为kotlin文件,并且所有错误都已修复...当我尝试运行测试时,应用程序崩溃了。