问题描述
我正在创建一个简单的应用程序,用户可以在其中输入任何地址并获取建议,点击任何建议后,它将显示在文本视图中。
自动完成初始化:
try {
val fields = listof(
Place.Field.ID,Place.Field.NAME,Place.Field.LAT_LNG,Place.Field.ADDRESS)
val intent=Autocomplete.IntentBuilder(AutocompleteActivityMode.FULLSCREEN,fields).build(this)
startActivityForResult(intent,PLACE_AUTOCOMPLETE_REQUEST_CODE)
}catch (e: Exception){
e.printstacktrace()
}
onActivityResult()
代码:
if (requestCode == PLACE_AUTOCOMPLETE_REQUEST_CODE){
val place = Autocomplete.getPlaceFromIntent(data!!)
et_location.setText(place.address)
mLatitude=place.latLng!!.latitude
mLongitude=place.latLng!!.longitude
}
问题是,每当我在自动完成功能中输入一个字母时,应用程序就会崩溃并显示 Intent expected to contain a Place,but doesn't
。
我的代码有什么问题?
这个 question 没有帮助我,因为我希望 place.address
返回一个字符串地址。
日志猫:
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null,request=3,result=2,data=Intent { (has extras) }} to activity {com.example.happyplaces/com.example.happyplaces.activities.AddHappyPlaceActivity}: java.lang.IllegalArgumentException: Intent expected to contain a Place,but doesn't.
at android.app.ActivityThread.deliverResults(ActivityThread.java:4268)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:4312)
at android.app.ActivityThread.-wrap19(UnkNown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1644)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Caused by: java.lang.IllegalArgumentException: Intent expected to contain a Place,but doesn't.
at com.google.android.libraries.places.internal.zzft.zza(com.google.android.libraries.places:places@@2.4.0:5)
at com.google.android.libraries.places.internal.zzeg.zza(com.google.android.libraries.places:places@@2.4.0:3)
at com.google.android.libraries.places.widget.Autocomplete.getPlaceFromIntent(com.google.android.libraries.places:places@@2.4.0:2)
at com.example.happyplaces.activities.AddHappyPlaceActivity.onActivityResult(AddHappyPlaceActivity.kt:253)
at android.app.Activity.dispatchActivityResult(Activity.java:7276)
at android.app.ActivityThread.deliverResults(ActivityThread.java:4264)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:4312)
at android.app.ActivityThread.-wrap19(UnkNown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1644)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)