0

マップビューを使用しています。RSA KEY を取得し、そのキーを使用しました。次のコード:

main.xml

<?xml version="1.0" encoding="utf-8"?>
<com.google.android.maps.MapView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="rsa key is here"
android:clickable="true" />

MainActivity.java

import java.util.List;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Point;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Toast;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;

public class MainActivity extends MapActivity {

private final int is_Enabled_GPS = 0;
private LocationManager locManager;
private LocationListener locListener;
private MapView mapView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    mapView = (MapView) findViewById(R.id.mapview);
    mapView.setBuiltInZoomControls(true);
    GeoPoint nokta = new GeoPoint((int) (38 * 1e6), (int) (36 * 1e6));
    mapView.getController().setCenter(nokta);

    locListener = new LocationListener() {

        @Override
        public void onStatusChanged(String provider, int status, Bundle extras) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onProviderEnabled(String provider) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onProviderDisabled(String provider) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onLocationChanged(Location location) {
            // TODO Auto-generated method stub
            locManager.removeUpdates(locListener);
            if(location != null){
                final GeoPoint nokta = new GeoPoint((int) (location.getLatitude() * 1e6), (int) (location.getLongitude() * 1e6));
                Overlay konumum = new Overlay() {
                    @Override
                    public boolean draw(android.graphics.Canvas canvas, MapView mapView, boolean shadow, long when){
                        super.draw(canvas, mapView, shadow);
                        Point screenPts = new Point();
                        mapView.getProjection().toPixels(nokta, screenPts);
                        Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
                        canvas.drawBitmap(bmp, screenPts.x, screenPts.y,null);
                        return true;
                    }
                };
                List<Overlay> mapOverlays = mapView.getOverlays();
                mapOverlays.clear();
                mapOverlays.add(konumum);
                mapView.getController().setCenter(nokta);
                mapView.preLoad();
            }
            else{
                Toast.makeText(getApplicationContext(), "Konum Bulunamadı", Toast.LENGTH_LONG).show();
            }
        }
    };
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
protected boolean isRouteDisplayed() {
    // TODO Auto-generated method stub
    return false;
}
}

マニフェスト

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

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />


<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.karakose.gps.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

    <uses-library android:name="com.google.android.maps" />
</application>

電話で実行しようとすると、Google ロゴの左下隅と白い領域のようです。私が間違っていることは何ですか?

4

0 に答える 0