android google map key

在android使用google map api時,必須需要有一個key,才能使用google map api。

首先在linux環境底下,執行以下command line:

keytool -list -keystore ~/.android/debug.keystore

輸入密碼可以直接按enter,接著你會得到一串md5。

接著你可以經由google得到一串key,把key加入到layout裡,或者直接建立MapView object也可輸入

<com.google.android.maps.MapView
    android:id="@+id/mapview"
    android:apiKey="your key"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:enabled="true"
    android:clickable="true"
/>
配置AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.test.test"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:label="@string/app_name" android:icon="@drawable/icon">
        <uses-library android:name="com.google.android.maps" />
        <activity android:name="GMapView"
                  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>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.INTERNET" />
</manifest> 

其中uses-library是必須的,uses-permission則是根據你使用的api功能決定。

 

如果要能到android market上,你必須另外申請一組key,而不是用android debug key。

你可以使用以下command line去建立一個keystore:

keytool -genkey -v -keystore test.keystore -alias test -keyalg RSA -keysize 2048 -validity 10000

同樣使用md5去取得key,執行以下command line:

keytool -list -keystore test.keystore

接著拿去google取得key配置方法如上。

最後一個步驟,就是將你的未驗證的apk,去做驗證,command line如下:

jarsigner -verbose -keystore my-release-key.keystore my_application.apk alias_name

以及優化指令:

zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk

若是使用ant,只要在build.properties加入以下兩行:


key.store=my-release-key.keystore

key.alias=alias_name

再執行ant release,即可產生驗證後的apk

申請keystore及驗證頁面

取得map key的說明頁面

經由md5取得map key

Android Linux開發環境配置(non-ide)

在開始配置環境之前,你必須先安裝好java,接著下載android sdk和ant

接在配置.bashrc這個檔案(家目錄):
export PATH=${PATH}:<sdk>/tools:<sdk>/platform-tools

 

如果沒配置,將無法使用模擬器,ant可以直接使用或參照以上配置方法,配置好在terminal上打

source .bashrc

接著在terminal打上android將會出現以下視窗,將available packages裡面需要用到的都安裝上去,因為一開始

只提供2.3.3和3.0的模擬器。

安裝好之後接著配置專案,先查看能使用的模擬器版本及id:
android list targets

 

接著create project:
android create project \
--target <target_ID> \
--name <your_project_name> \
--path path/to/your/project \
--activity <your_activity_name> \
--package <your_package_namespace>
example:
android create project \
--target 1 \
--name MyAndroidApp \
--path ./MyAndroidAppProject \
--activity MyAndroidAppActivity \
--package com.example.myandroid

 

專案建立好後,只要在專案的根目錄下,對terminal執行以下指令,就可以產生apk:
ant debug
    or
ant release

查看目前連接的裝置:

adb devices 
 

64位元系統是無法使用adb,需要安裝:

sudo apt-get install ia32-libs
 
###### 接著最後一步就是開啟你的模擬器,在terminal下打指令:
adb -s emulator-5554 install _path/to/your/app_.apk

最後你就會在模擬器上面看到,剛剛安裝到模擬器上面的專案名稱了。