마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 GPS값 화면이 안나오는데 어떻게 해야 하나요?(2/2)

0 추천

LocationTest 코드

package kr.ac.gwnu.soundmanager.views;

import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface.OnCancelListener;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.os.SystemClock;
import android.support.v4.app.FragmentActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import kr.ac.gwnu.soundmanager.locate.R;


public class LocationTest extends Activity{

	TextView status;

	public void onCreate(Bundle savedInstanceState) {
		
		super.onCreate(savedInstanceState);
	/*	
		
		TextView tv = new TextView(this);
		tv.setText("hosajdlkfjaslkfd");
		setContentView(tv);
	*/
		setContentView(R.layout.main);

		status = (TextView) findViewById(R.id.status);

		// 위치 관리자에 대한 참조값을 구한다.
		LocationManager locationManager = (LocationManager) this
				.getSystemService(Context.LOCATION_SERVICE);

		// 위치가 업데이트되면 호출되는 리스너를 정의한다.
		LocationListener locationListener = new LocationListener() {
			public void onLocationChanged(Location location) {
				// 새로운 위치가 발견되면 위치 제공자에 의하여 호출된다.
				status.setText("위도; " + location.getLatitude() + "\n경도:"
						+ location.getLongitude() + "\n고도:"
						+ location.getAltitude());
				
						
			}

			public void onStatusChanged(String provider, int status,
					Bundle extras) {
			}

			public void onProviderEnabled(String provider) {
			}

			public void onProviderDisabled(String provider) {
			}
		};

		// 위치를 업데이트 받기 위하여 리스너를 위치 관리자에 등록한다.
		locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0,	0, locationListener);
		//GPS로 위치 정보를 얻는다.
		locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
		//실내에 있을 경우 GPS로 위치 정보를 못받을 수 있기에 네트워크로 위치 정보를 받는다.
	}
}

 

LocationTest 매니패스트

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="kr.co.company.locationtest"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="kr.co.company.locationtest.LocationTestActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
현재 상황은 메인코드 72행에 있는 것이 실행 되면 LocationTest가 실행이 되야 하는데 계속 중지가 됩니다..ㅜㅠ
 
메인과 LocationTest코드 프로잭트를 따로 만들어서 하면 실행이 잘 되는데 이 두개를 합쳐서 실행 하면 실행이 안됩니다...
 
아마 제생각에는 LocationTest매니패스트를 메인코드매니패스트에 추가를 해야 되는거 같은데 어떻게 해야 하며
 
이방법이 틀린거라면 어떻게 해결을 해야 하나요?
익명사용자 님이 2015년 5월 18일 질문

1개의 답변

0 추천
중지가 된다고 하시니 그때의 로그를 첨부해 주셔야죠

어디가 72라인인지 답변자는 알 수 없습니다.(소스 앞에 라인이 출력되게 해주시던가요)

그냥 앱만 실행해도 중지가 뜨는 것인지, 해당 위치가 실행될 때 중지가 뜨는지도 궁금하네요(실행만 해도 중지팝업이 뜰 것 같습니다)

매니페스트 파일에 두 개의 액티비티가 모두 메인과 런처 속성을 갖고 있는 것부터 이상하게 보입니다. LocationTestActivity에 대해서는 intent-filter를 아예 제거하세요.

이렇게 해도 안되면 중지팝업 발생시의 로그 첨부 바랍니다.
cc1232 (35,280 포인트) 님이 2015년 5월 18일 답변
...