posts - 11,  comments - 21,  trackbacks - 0

          V2 版本有幾個(gè)注意事項(xiàng):

          • 只能運(yùn)行在Android2.2以及以上版本的設(shè)備上
          • 不能運(yùn)行在模擬器中

           

          • 在開(kāi)發(fā)環(huán)境中安裝Goole Play service SDK.

          (參考: http://developer.android.com/google/play-services/setup.html)

          1. 在Eclipse中打開(kāi) Windows>Android SDK Manager
            0T((W]AF]A)59ATEL6]B{DE
             
          2. 滾動(dòng)條滾動(dòng)到最下面,選擇 Extra>Google Play services, 然后安裝.
            未命名 
            下載后的Google Play services SDK 保存在<android-sdk-folder>/extras/google/google_play_services/.
          3. 復(fù)制<android-sdk-folder>/extras/google/google_play_services/libproject/google-play-services_lib到任何地方.我這里是復(fù)制到D:\code. 然后再eclipse中選擇 File > Import, Android > Existing Android Code into Workspace. (注意: 這里是 Android > Existing Android Code into Workspace, 而不是General > Existing Projects into Workspace, 否則是無(wú)法導(dǎo)入的.)
            未命名
          4. 導(dǎo)入示例程序.
            為了不破壞SDK中的程序的原樣,我們先把示例程序復(fù)制一份出來(lái).
            復(fù)制
            <android-sdk-folder>/extras/google/google_play_services/samples/mapsD:\code 下.
            然后選擇File > Import, Android > Existing Android Code into Workspace,把此程序?qū)氲紼clipse中.(注意: 這里是 Android > Existing Android Code into Workspace, 而不是General > Existing Projects into Workspace, 否則會(huì)出現(xiàn)大量錯(cuò)誤.)
            未命名
             
            這個(gè)工程導(dǎo)入后可能會(huì)出現(xiàn)很多問(wèn)題,請(qǐng)嘗試使用以下方法解決:
                1. 在此工程上點(diǎn)擊右鍵,選擇Properties>Android, 在右下方的Library選項(xiàng)中如果出現(xiàn)紅叉,先把它刪除,然后點(diǎn)擊添加按鈕,把前面導(dǎo)入的google-play-services_lib工程加進(jìn)來(lái)
                2. 另一個(gè)問(wèn)題就是android.support找不到,這個(gè)是缺少android-support-v4.jar,可以通過(guò)在工程上點(diǎn)擊右鍵,選擇Android Tools > Add Support Library, 會(huì)從網(wǎng)絡(luò)上下載.如果網(wǎng)絡(luò)下載有問(wèn)題,也可以在工程中新建目錄libs,然后把此文件從<android-sdk-folder>\extras\android\compatibility\v4\android-support-v4.jar復(fù)制到新建目錄一個(gè)就可以了.

          獲得Google Maps API Key 在V2版本中需要如下幾個(gè)步驟:

          1. 查看程序簽名的SHA1認(rèn)證指紋.
            在開(kāi)發(fā)模式下,默認(rèn)會(huì)使用C:\Users\<你的用戶名稱>\.android\debug.keystore這個(gè)自動(dòng)生成的debug狀態(tài)的簽名文件,可以通過(guò)Windows>Preferences>Android中的Default debug keystore進(jìn)行查看.
            接下來(lái)進(jìn)入你的系統(tǒng)的命令行控制臺(tái)中,切換到你安裝的JDK的bin目錄中輸入keytool -v -list -keystore C:\Users\<你的用戶名稱>\.android\debug.keystore,密碼是android,查看"證書(shū)指紋"中的SHA1中的內(nèi)容,這個(gè)內(nèi)容記下來(lái),接下來(lái)會(huì)使用到.
            未命名

          2. 創(chuàng)建Google Maps API Key.
            訪問(wèn)Google APIs Console(https://code.google.com/apis/console).如果沒(méi)有登錄,就先登錄.登錄后,如果是首次使用,會(huì)出現(xiàn)讓你創(chuàng)建API工程的頁(yè)面.
            未命名
            點(diǎn)擊Create project后會(huì)跳轉(zhuǎn)到services頁(yè)面,需要在這個(gè)頁(yè)面選擇你要使用的API.這里我們選擇Google Maps Android API v2.
            未命名
            之后會(huì)跳轉(zhuǎn)到服務(wù)條款確認(rèn)的頁(yè)面,接受后,在顯示的頁(yè)面中左邊列表選擇”API Access”,然后點(diǎn)擊Create new Android key... 按鈕.
            TM截圖未命名
            在彈出的對(duì)話框中填寫(xiě)SHA1認(rèn)證指紋和程序的包命,中間用分號(hào)分隔(google自帶的google map v2示例程序的包命是com.example.mapdemo):
            0E:10:94:C7:B9:FD:15:62:27:FC:E7:FC:0C:05:59:A7:18:41:F5:B2;com.example.mapdemo
            點(diǎn)擊create按鈕后,就創(chuàng)建了一個(gè)新的API key:
            TM截圖未命名

          • 配置運(yùn)行示例程序

          1. 打開(kāi)示例程序的AndroidManifest.xml, 把上面生成的API key復(fù)制到以下位置:
            TM截圖未命名

          2. 現(xiàn)在,這個(gè)程序可以在手機(jī)中運(yùn)行了(不能運(yùn)行在模擬器中).如果手機(jī)中沒(méi)有安裝Goole Play Services和Google Map,程序會(huì)崩潰,在Android Logcat視圖中可以看到提示相關(guān)東西沒(méi)有安裝.這種方式非常不友好,我們應(yīng)該添加一些代碼,提示用戶安裝安裝缺少的東西.
            在MainActivity.java中的最下面添加如下代碼:
            //======= For Google Maps Check============ public boolean isGoogleMapsInstalled() { try { ApplicationInfo info = getPackageManager().getApplicationInfo("com.google.android.apps.maps", 0); return true; } catch (PackageManager.NameNotFoundException e) { return false; } } public OnClickListener getGoogleMapsListener() { return new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.google.android.apps.maps")); startActivity(intent); //Finish the activity so they can't circumvent the check finish(); } }; }


            然后在onCreate方法中添加一些代碼,如下:
            @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ListAdapter adapter = new CustomArrayAdapter(this, demos); setListAdapter(adapter); //======= For Google Maps Check============ if (!this.isGoogleMapsInstalled()) { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("Install Google Map ?"); builder.setCancelable(false); builder.setPositiveButton("Install", getGoogleMapsListener()); AlertDialog dialog = builder.create(); dialog.show(); } }


            現(xiàn)在再運(yùn)行,就會(huì)提示用戶安裝缺少的內(nèi)容.

          posted on 2013-01-03 23:16 xmlspy 閱讀(9502) 評(píng)論(1)  編輯  收藏

          FeedBack:
          # re: Google Map Android v2開(kāi)發(fā): 安裝運(yùn)行Google Map Android v2 示例程序
          2013-09-05 00:17 | androiod 開(kāi)發(fā)人員
          你這個(gè)判斷不了GOOGLE MAP 是否能運(yùn)行的
          用這個(gè)判斷
          GooglePlayServicesUtil.isGooglePlayServicesAvailable(this)  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 介休市| 江川县| 安福县| 丰原市| 凤山县| 晋中市| 神农架林区| 武隆县| 淳化县| 邯郸市| 海淀区| 收藏| 伊金霍洛旗| 景德镇市| 合江县| 秭归县| 西丰县| 武乡县| 尚志市| 洛扎县| 惠东县| 大安市| 富平县| 克山县| 潼关县| 苍梧县| 黑河市| 基隆市| 永泰县| 盐池县| 云安县| 澎湖县| 兴宁市| 喀喇沁旗| 惠东县| 沙雅县| 涿鹿县| 晋中市| 高邑县| 吴桥县| 冀州市|