简体   繁体   English

意向崩溃的应用程序始于Google Maps

[英]App Crashing on intent start with google maps

Java code for map activity 地图活动的Java代码

package com.schweigert.drinkingbuddy;

import android.app.Activity;
import android.os.Bundle;


public class BarMaps extends Activity {



protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.barmaps);


}
}

XML Code XML代码

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/map"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:name="com.google.android.gms.maps.MapFragment" >


</fragment>

Java code that starts intent 开始意图的Java代码

    maps.setOnClickListener(new Button.OnClickListener(){

        @Override
        public void onClick(View v) {


                Intent openMap = new Intent("com.schweigert.drinkingbuddy.BarMaps");
                startActivity(openMap);


        }

    });

When i am running this code on my emulator i have set up on my computer it brings up the "This app wont run unless you update Google Play services. But when i run it on a physical device it just times out and says that the app has stopped working.Why am i getting such a difference in errors between my emulator and physical device? 当我在模拟器上运行此代码时,我已经在计算机上进行了设置,它会显示“除非您更新Google Play服务,否则此应用程序将无法运行。但是当我在物理设备上运行该应用程序时,它将超时并说该应用程序已停止工作。为什么模拟器和物理设备之间的错误有如此大的区别?

Edit: 编辑:

package com.schweigert.drinkingbuddy;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.EditText;


public class StartingPoint extends Activity {

double numDrinks;
int counter;
EditText standardDrinks;
Button bacIntent, maps, drinks;
TextView display;
Bundle testBundle;
@Override
protected void onCreate(Bundle testBundle) {
    super.onCreate(testBundle);
    setContentView(R.layout.activity_starting_point);
    counter = 0;
    bacIntent = (Button) findViewById(R.id.bacIntent);
    maps = (Button) findViewById(R.id.Maps);
    drinks = (Button) findViewById(R.id.drinks);


    bacIntent.setOnClickListener(new Button.OnClickListener(){
        @Override
        public void onClick(View v){


            try{
                Intent openBac = new Intent("com.schweigert.drinkingbuddy.BloodAlcoholContent");
                startActivity(openBac);
            }
            catch(Exception e)
            {
                display.setText("my d" + e);
            }
            }



    });

    maps.setOnClickListener(new Button.OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            try{
                Intent openMap = new Intent("com.schweigert.drinkingbuddy.MainActivity");
                startActivity(openMap);
            }
            catch(Exception e){
                display.setText("my d"+ e);
            }
        }

    });

    drinks.setOnClickListener(new Button.OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            try{
                Intent openDrinkMenu = new Intent("com.schweigert.drinkingbuddy.DrinkType");
                startActivity(openDrinkMenu);
            }
            catch(Exception e){
                display.setText("my d:" + e);
            }
        }

    });


}
}

So i had a try catch that was interacting with a textview that didn't exist anymore and then i had my manifest set up incorrectly. 因此,我尝试将其与不再存在的textview进行交互,然后我的清单设置不正确。 Thanks for the help Shivan. 感谢Shivan的帮助。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM