Tag: android

com.android.tools.build:gradle版本高于2.0.0时,无法在物理设备上运行/部署应用程序

当我更新com.android.tools.build:gradle到高于2.0.0的版本时,我遇到了部署应用程序的问题。 当我将其更改为2.1.2时,项目编译并由gradle构建,但没有发生任何事情,就像忽略它。 我试图在Android 4.0.3上运行LG Swift L5 Optimus上的应用程序 这里是项目的build.gradle: buildscript { repositories { jcenter() } dependencies { classpath ‘com.android.tools.build:gradle:2.0.0’ } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 在这里build.gradle的应用程序: apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ android { compileSdkVersion 23 buildToolsVersion “23.0.3” defaultConfig { applicationId “keddit.com.keddit” minSdkVersion […]

Kotlin将对象转换为另一个对象

http://cm08323.tmweb.ru/android/determinace/json/images.json我有一些JSON到服务器。 我的数据库类: @Entity data class Image(val url: String = “”, val urlAnswer: String = “”, val race: String = “”) : DisplayableItem, Persistable api接口: interface ImagesAdi { @GET(“android/determinace/json/images.json”) fun getImages(): Single<List> } … class ImagesResponse( val images: List) class ImageSingle(val url: String, val url_answer: String, val race: String) 我的映射器用于转换ImagesResponse到Image : @Singleton class ChooseRaceMapper @Inject constructor() […]

Android:如何处理从左到右的滑动手势

我希望我的应用能够识别用户在电话屏幕上从右向左滑动的情况。 这个怎么做?

为什么在Android中加载jpg资源时图像的大小会发生变化?

我创建了一个新的Android项目,并在res/drawable文件夹中放置了一个map.jpg文件。 它的统计是这样的,由file命令报告: map.jpg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 200×200, segment length 16, baseline, precision 8, 1000×846, frames 3 (尺寸1000×846。) 该项目使用min SDK版本21和目标SDK版本24。 我在我的类(这是一个View子类)像这样(Kotlin)打开文件: mBitmap = BitmapFactory.decodeResource(resources, R.drawable.map) Log.i(TAG, “Our map’s size is ” + mBitmap.width + “x” + mBitmap.height) 在仿真器(480×800 hdpi,API级别25)中运行时,会将位图大小报告为1500×1269,或者从文件大小中缩放1.5x。 在设备上运行(三星Galaxy A3,API级别24)报告的大小为2000×1692,或缩放2倍。 为什么会发生? 什么是加载的位图的大小取决于? (顺便说一句,通过resources.getDrawable()和Drawable.getIntrinsicWidth()读取资源的另一种方式报告相同的大小。)

计算会话长度android

如何计算Android中用户的会话长度,以便我可以在合适的时间推送广告? 有没有可以帮助我的图书馆。 我正在使用谷歌分析来获得平均会话长度,但我如何获得个人用户?

格式化当前语言环境的日期,添加周日

我可以使用以下格式为给定的日期和时间格式化当前语言环境: DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM).format(date) 这里我不指定格式字符串是很重要的。 这是系统决定如何格式化日期和时间,例如字段的顺序。 但是,“中等”日期格式不包括星期几。 我想包括通过传递DateFormat.MEDIUM or DateFormat.DAY_OF_WEEK_FIELD (它是Kotlin),但是引发一个exception说格式是无效的。 所以显然将这两个值结合起来是无效的。 我以某种方式理解( MEDIUM定义了特定的格式,系统不知道星期几在哪里)。 但是我希望能够说“使用特定于语言的(中等)格式,并在有意义的地方添加星期几”。 有没有办法做到这一点? (我正在写代码片段而不能访问真实的代码,所以请原谅任何错误。)

Kotlingenerics方法和inheritance

在我的代码中,我想在抽象类中创建一个方法,该方法返回一些Observable。 然后这个抽象类的实现将返回某些(指定)types的Observable。 不幸的是,Android Studio会在实现方法()中返回一个错误“types不匹配”: 预计:可观察 find:Observable 我的MockDrawerList.getList()返回Observable 请关注execute()和buildUseCaseObservable 抽象类 public abstract class UseCase(threadExecutor: ThreadExecutor, postExecutionThread: PostExecutionThread) { private val threadExecutor: ThreadExecutor private val postExecutionThread: PostExecutionThread private var subscription: Subscription = Subscriptions.empty() init { this.postExecutionThread = postExecutionThread this.threadExecutor = threadExecutor } protected abstract fun buildUseCaseObservable(): Observable public fun execute(useCaseSubsriber: Subscriber) { subscription = buildUseCaseObservable() .subscribeOn(Schedulers.from(threadExecutor)) .observeOn(postExecutionThread.getScheduler()) […]

做一个简短的if语句

在我的代码中,我有这个if语句: if (categoryName == “SomeName1” || categoryName == “SomeName2” || categoryName == “SomeName3” || categoryName == “SomeName4” || categoryName == “SomeName5” || categoryName == “SomeName6”) { // Do something } 我想知道如果我能缩短这个。 就像是: if (categoryName == “SomeName1” and “SomeName2” and “SomeName3” …) { // Do something } 在Kotlin有没有做这样的事情?

构建不能识别产品风格的types特定的文件夹

我已经配置我的项目有多个产品口味。 我在我的模块build.gradle有以下代码: android { // Rest of the configuration omitted for clarity buildTypes { debug { // … } release { // … } } productFlavors { paid free } } 如果我在paid , free , debug或release创建了一个文件(任何文件:Java,资源……),它就被Android Studio认可了,我可以在我的项目中使用它。 但是,如果在paidDebug (或类似的文件夹)中创建了相同的文件,则在Android Studio中无法识别该文件。 我需要任何额外的配置来运作吗? 这是不支持(还)?

实例化新的Android Fragment的最佳做法

我已经看到了两个通用实践来在应用程序中实例化一个新的片段: Fragment newFragment = new MyFragment(); 和 Fragment newFragment = MyFragment.newInstance(); 第二个选项使用静态方法newInstance() , 通常包含以下方法。 public static Fragment newInstance() { MyFragment myFragment = new MyFragment(); return myFragment; } 起初,我认为主要的好处是,我可以重载newInstance()方法来创建一个Fragment的新实例时的灵活性 – 但是我也可以通过为Fragment创建一个重载的构造函数来实现。 我错过了什么? 一种方法比另一种方法有什么好处? 或者这只是一个好习惯?