当我尝试通过以下方式添加 kotlin-android-extensions 时:
apply plugin: 'kotlin-android-extensions'
到我的项目 Android Studio 告诉我插件没有找到'kotlin-android-extensions ??
出了什么问题?我正在运行 Android Studio 3.0 Canary 8
我在我的项目中使用Room作为本地数据库解决方案.对于某个对象类型的每个列表,我都为项目添加了类型转换器,因此类型转换器看起来像这样:
@TypeConverter
fun convertListToString(video: List<VideoType>): String {
val videoArray = arrayOfNulls<VideoType>(video.size)
for (i in 0..video.size - 1) {
videoArray[i] = video[i]
}
var str = ""
val gson = Gson()
for (i in videoArray.indices) {
val jsonString = gson.toJson(videoArray[i])
str = str + jsonString
if (i < videoArray.size - 1) {
str = str + strSeparator
}
}
return str
}
@TypeConverter
fun convertStringToList(videoString: String): List<VideoType> {
val videoArray = videoString.split(strSeparator.toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray()
val videos = ArrayList<VideoType>()
val gson …Run Code Online (Sandbox Code Playgroud) 在Kotlin类中实现接口时:
当我在ClassName上按Alt + Enter时,我可以让IDE通过"实施成员"添加界面的功能.
令人讨厌的是,在Kotlin中,这些函数被添加到类的顶部.我希望它们在类的末尾添加(就像在Java中一样).
我怎样才能做到这一点?
使用 Fabric,过去可以将多个具有相同代码库和“基本”包名称的应用程序合并到一个崩溃概述中。我似乎无法弄清楚 Firebase Crashlytics 是否也可以这样做。
所以我的意思是:我有一个应用程序的多种变体。用包名说:
com.norakomi.appname.app1
com.norakomi.appname.app2
com.norakomi.appname.app3
Run Code Online (Sandbox Code Playgroud)
等等。
我希望将所有崩溃报告合并在一个概览中,因为它们使用相同的代码库,而且我不想每次都浏览应用程序的所有(比如)30 个版本。
有谁知道如何做到这一点?
我的应用使用了一些权限:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
and:
android:permission="com.google.android.c2dm.permission.SEND">
Run Code Online (Sandbox Code Playgroud)
昨天我上传了一个新版本到谷歌播放,不知何故
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
Run Code Online (Sandbox Code Playgroud)
已添加,因此用户不会获得我的应用程序的自动更新,但必须先授予权限.我不希望将此权限添加到我的项目中,但我不知道如何删除它,因为预构建它在我的代码中没有被请求.
有没有人有一些建议?
我试图弄清楚如何使用扩展函数来延迟运行任何方法,但似乎无法搞清楚.
我尝试下面的东西,我有一个函数,我想要一个处理程序延迟执行一定的timeInterval:
functionX().withDelay(500)
functionY().withDelay(500)
private fun Unit.withDelay(delay: Int) {
Handler().postDelayed( {this} , delay)}
private fun Handler.postDelayed(function: () -> Any, delay: Int) {
this.postDelayed(function, delay)}
Run Code Online (Sandbox Code Playgroud)
任何人?
android ×5
kotlin ×4
android-room ×1
android-wifi ×1
class ×1
crashlytics ×1
database ×1
firebase ×1
generics ×1
implements ×1
interface ×1
postdelayed ×1