Tag: 安卓

信息没有正确上传到firebase-firestore

所以,我有一个微调列表。 我希望每个列表都是我的一个集合中的一个文档。 编辑:当前版本部分工作 所以我试了一下 createListBtn.setOnClickListener { val list = HashMap<String, String>() list.put("item1", newKitList.toString()) db.collection("KitList").document(listNameTxt.text.toString()) .set(list as Map<String, Any>) .addOnSuccessListener { Log.d("TAG", "DocumentSnapshot successfully written!") } .addOnFailureListener { e -> Log.w("TAG1", "Error writing document") } 我想要做的是选择我的列表中的所有项目,并添加它们。 该集合已经存在,这是“KitList”,然后我尝试将文档名称传递给我放在我的文本字段的名称。 我错过了什么/错在哪里?

与RxKotlin获取NetworkOnMainThreadException

我试图使用RxKotlin做网络请求,但不断得到一个NetworkOnMainThreadException我在主线程订阅,所以我不知道为什么它没有把它从UI线程。 这里是我订阅Observable的地方 weatherInteractor.getWeather(lat, lng) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe( {response -> try { val jsonData = response.body().string() val currentWeather = getCurrentWeatherData(jsonData) view!!.displayCurrentWeather(currentWeather) } catch (e: JSONException) { Log.d("Present JSON Exception", e.message) } catch (e: IOException) { Log.d("Present IO Exception", e.message) } }, { error -> error.printStackTrace() } ) } 这里是我创建我的Observable的地方 fun getWeather(lat: Double, lng: Double): Observable<Response> { […]

CountdownTimer完成时如何通知Observable

我有一个自定义的Android TextView,通过CountDownTimer显示游戏中剩余的时间 class CountdownTextView(context: Context, attrs: AttributeSet) : TextView(context, attrs) { private lateinit var countDownTimer: CountDownTimer private lateinit var onFinishObservable: Observable<Unit> fun setTime(initTime: Int) { this.text = "$initTime:00" countDownTimer = object : CountDownTimer((initTime *1000).toLong(), 1000) { override fun onTick(millisUntilFinished: Long) { val minutes = millisUntilFinished / 60000 val seconds = (millisUntilFinished % 60000) / 1000 […]

Android工作室错误R.java

当我打开android studio 3.0时,在R.java文件中有一个错误。 这是错误: public static final int Both are incorrect=0x7f080002; 当我尝试编辑它或删除这一行时,它一直说: “不应编辑生成的源文件,重新生成源文件时更改将会丢失”

Firebase数据库查询设计

我基本上有许多用户可以读取(但不能写)的条目列表。 这些项目显示在应用程序基于每个条目具有唯一的整数排序。 我想添加一种方法来允许每个用户喜欢一些x这些项目,使这些x项目首先出现在列表中。 有没有一种方法,我可以实现这一点使用firebase的查询,而不必为每个用户复制列表?

Android分开/多个电话簿

有没有可能在Android中创建单独的电话簿? 例: 我的应用程序里面有联系人,这是一个在应用程序调用中的联系人,他的姓名将显示在应用程序中,而不会将其保存到本机电话簿中。 注意: 这个应用程序不应该改变键盘保护或本地电话。 我已经实现了这个解决方案,即从广播接收器中触发一个活动,检查数字是否存在于我的应用程序中,然后放在键盘上,但是这有点过度设计一个简单的问题。

MediaPlayer为getDuration()返回-1

我试图在我的应用程序中使用音频流功能来实现MediaPlayer (即,音频文件在服务器中)。 player = MediaPlayer(); player.setDataSource("http://wedevotional.com/a.mp3"); player.setOnBufferingUpdateListener(object : MediaPlayer.OnBufferingUpdateListener{ override fun onBufferingUpdate(p0: MediaPlayer?, p1: Int) { Log.d("Bufferring = ",p1.toString()) } }) player.setOnPreparedListener(object:MediaPlayer.OnPreparedListener{ override fun onPrepared(p0: MediaPlayer?) { Log.d("Duration = ",p0!!.duration.toString()) Log.d("Current Position = ",p0!!.currentPosition .toString()) } }) player.setOnErrorListener(object :MediaPlayer.OnErrorListener{ override fun onError(p0: MediaPlayer?, p1: Int, p2: Int): Boolean { Log.d("Error = ","Error") return true } […]

Osmdroid&Osmdroid bonuspack如何使用CacheManager

val cm= CacheManager(map) val mt=MapTile(map.getZoomLevel(),map.scrollX,map.scrollY); //(cm.loadTile(TileSourceFactory.MAPNIK,mt)) cm.downloadAreaAsync(this,bb,map.minZoomLevel,map.maxZoomLevel); 所以这就是我下载OSM加载的地图! 现在我希望下一次打开应用程序时,它将直接从本地已经缓存的源代码载入地图,而不是转到在线/网络请求。

RxJava2发布

有什么区别 ObservableTransformer { Observable.merge( it.ofType(x).compose(transformerherex), it.ofType(y).compose(transformerherey) ) } 和 ObservableTransformer { it.publish{ shared -> Observable.merge( shared.ofType(x).compose(transformerherex), shared.ofType(y).compose(transformerherey) ) } } 当我使用这两个运行我的代码时,我得到了相同的结果。 这里发布什么?

使用Anko获取类型不匹配错误需要AnkoContext <ViewGroup>找到AnkoContext <Context>

我在一个基本的Android应用程序中使用Anko,在那里我正在实施recyclerView。 在onCreateViewHolder()方法中,我得到一个编译时错误,说类型不匹配。 下面的代码中的其他一切都很好。 class ListAdapter(val arrayList: ArrayList<String> = ArrayList<String>()) : RecyclerView.Adapter<Holder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Holder? { //type Mismatch error required AnkoContext<ViewGroup> Found AnkoContext<Context> return Holder(ItemUI().createView(AnkoContext.create(parent!!.context))) } override fun onBindViewHolder(holder: Holder, position: Int) { val item = arrayList.get(position) holder.bind(item) } override fun getItemCount(): Int { return arrayList.size } } class ItemUI : […]