0

Apache Cordova 2.1 を使用して iOS アプリをビルドします。ビルドとスタイリングは順調に進んでいますが、マップはそうではありません。

マップ用のプラグインを見つけましたが、動作させることができません: https://github.com/phonegap/phonegap-plugins/tree/master/iOS/MapKit

サンプルのhtmlファイルも見つけましたが、できました: https://github.com/phonegap/phonegap-plugins/tree/master/iPhone/MapKitPlug/example

1/ だから私はかなり簡単だったxcodeに MapKit フレームワークを追加しました。

2/ .m および .h ファイルを追加

3/ .js ファイルを追加して index.html にリンクしました

4/ 上記の例の html をコピーしました。

5/ 指示に従って Mapkit を .plist ファイルに追加しました

マップを実行しようとすると、次のエラーが発生します。

2012-11-05 14:21:29.505 sawdaysApp[25398:c07] Multi-tasking -> Device: YES, App: YES
2012-11-05 14:21:30.895 sawdaysApp[25398:c07] CDVPlugin class MapKitView (pluginName: MapKitView) does not exist.
2012-11-05 14:21:30.895 sawdaysApp[25398:c07] ERROR: Plugin 'MapKitView' not found, or is not a CDVPlugin. Check your plugin mapping in Cordova.plist.
2012-11-05 14:21:30.896 sawdaysApp[25398:c07] FAILED pluginJSON = [null,"MapKitView","showMap",[]]
2012-11-05 14:21:30.896 sawdaysApp[25398:c07] CDVPlugin class MapKitView (pluginName: MapKitView) does not exist.
2012-11-05 14:21:30.896 sawdaysApp[25398:c07] ERROR: Plugin 'MapKitView' not found, or is not a CDVPlugin. Check your plugin mapping in Cordova.plist.
2012-11-05 14:21:30.897 sawdaysApp[25398:c07] FAILED pluginJSON = [null,"MapKitView","setMapData",[{"diameter":1000,"offsetTop":25,"lon":-123.104446,"buttonCallback":"cbMapCallback","lat":49.281467999999997,"height":360,"atBottom":true}]]

エラーは CDVPluggin の MapKitView にあると思いますが、よくわかりません。

誰もこれを経験して成功しましたか?

4

2 に答える 2

1

これは機能します。やっと :)

1 - このガイドに従ってアプリを起動します http://docs.phonegap.com/en/2.1.0/guide_getting-started_ios_index.md.html

2 - mapkit プラグイン ネイティブ ファイル (すべて) を plugins フォルダーにダウンロードして追加し、.js ファイルを www フォルダーに追加します。https://github.com/phonegap/phonegap-plugins/tree/master/iOS/MapKit . プラグイン フォルダーを xcode のプラグイン フォルダーにドラッグしてください。そうしないと、アプリはファイルを適切にリンクしません。

3 - ホワイトリスト * すべてのドメインをホワイトリストに登録し、プラグイン参照を Cordova.plist MapKitView に値とキーとして追加します

4 - ダウンロードされ、sawdaysTestApp/pluggins フォルダー JSONKit.h および JSONKit.m に含まれていますhttps://github.com/johnezang/JSONKit

5 - mapkit.h と .m を変更する

#ifdef CORDOVA_FRAMEWORK
#import <Cordova/CDVPlugin.h>
#else
#import "CDVPlugin.h"
#endif

to

#import <Cordova/CDVPlugin.h>

mapkit.m を変更する

from

#ifdef CORDOVA_FRAMEWORK
// PhoneGap >= 1.2.0
#import <Cordova/JSONKit.h>
#else
// https://github.com/johnezang/JSONKit
#import "JSONKit.h"
#endif


to

    #import "JSONKit.h"
  1. https://github.com/phonegap/phonegap-plugins/blob/master/iPhone/MapKitPlug/example/index.htmlから例を取得します。例全体をコピーして index.html に貼り付けます。

7 - index.html を変更する

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8" src="MapKitPlug.js"></script>

に//

<script type="text/javascript" src="cordova-2.1.0.js"></script>
<script type="text/javascript" charset="utf-8" src="MapKit.js"></script>

8 - シミュレーターを実行します。地図表示ボタンをクリックします。

于 2012-11-09T15:24:54.943 に答える
0

2つのことを追加したいだけです:

1、Cordova 2.3.0 以降のファイル名

Cordova.plist

今でしょ

yourProject-Info.plist

yourProjectは、プロジェクト名が何であれです。

2、次のようにして、「バイナリをライブラリにリンクする」必要があることがわかりました。

  • プロジェクトをクリックします
  • ビルド フェーズの選択
  • Link Binary With Libraries の矢印をクリックします
  • [追加] をクリックします
  • MapKit.framework を検索し、[追加] をクリックします。
于 2013-01-16T00:23:16.557 に答える