当Android应用程序在Android Studio中使用Kotlin运行时,如果遇到“无法启动activity ComponentInfo”的错误,通常意味着应用程序在尝试启动某个Activity时遇到了问题。以下是一些可能的原因和解决方法: 基础概念 Activity: Android中的一个组件,代表一个单一的屏幕,具有用户界面。 ComponentInfo:是...
其中有一些Library使用了Java编写,实际上,这款App是Kotlin和Java的结合体。 2 添加依赖 在App中使用了大量的第三方Library,如gson、okhttp3、glide等,这些Library需要在app/build.gradle文件中的dependencies部分指定,如下所示: dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') androidTestCompil...
buildscript { ext { compose_version = '1.0.0-beta08' } repositories { google() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:7.1.0-alpha02' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10" // NOTE: Do not place your application dependencies here; ...
下面是一个简单的示例代码,用于演示如何打开摄像头并预览摄像头内容。 classMainActivity:AppCompatActivity(){privatelateinitvarcameraManager:CameraManagerprivatelateinitvarcameraId:StringprivatelateinitvarcameraDevice:CameraDeviceprivatelateinitvarcaptureSession:CameraCaptureSessionoverridefunonCreate(savedInstanceState:Bundle?
这里的click函数,在使用Kotlin高效地开发Android App(二)中已经讲述过,就不在重复讲述。 Demo4ExtrasDelegateActivity接受从MainActivity中传递过来的参数。 import android.os.Bundleimport android.support.v7.app.AppCompatActivityimport com.safframework.delegate.domain.Userimport com.safframework.delegate.extras.extr...
在Android的App中,可以毫不夸张地说,我们95%以上的代码使用了Kotlin开发的。由此,很有必要对这一阶段使用Kotlin做一个简单的小结。 使用的Kotlin特性: 一.扩展函数 Kotlin允许开发者在不改变已有类的情况下,为某个类添加新的函数。这个特性叫做扩展函数。
在Android的App中,可以毫不夸张地说,我们95%以上的代码使用了Kotlin开发的。由此,很有必要对这一阶段使用Kotlin做一个简单的小结。 使用的Kotlin特性: 一.扩展函数 Kotlin允许开发者在不改变已有类的情况下,为某个类添加新的函数。这个特性叫做扩展函数。 举一个简单的例子。如果要关闭一个I/O流,使用Java可能...
但是DangerousPermissions(危险权限)不仅要声明还要动态申请。有些时候造成app崩溃就是由于权限的原因,强调一下:声明和动态申请缺一不可。 例如申请存储权限的动态申请的代码如下(kotlin): 声明 <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permissionandroid:name="android.permission...
在使用Kotlin高效地开发Android App(一)中,曾经介绍过尾随闭包,它可以算是一种简化的lambda表达式。 对于UI控件的点击事件,可以查看我同事的文章View.OnClickListener在Kotlin中的进化 由最初的Java版本 view.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){v.setVisibility(View.VISIB...
Exception in thread "main" kotlin.KotlinNullPointerException 在App快要发布时,我们会进行检查尽量避免使用“!!”,转而考虑使用lateinit或者let函数来代替它。 1.3 lateinit 在某个类中,如果某些成员变量没办法在一开始就初始化,并且又不想使用可空类型(也就是带?的类型)。那么,可以使用lateinit来修饰它。