次のコードを使用してデバイスをGCMに登録しようとしています。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GCMRegistrar.checkDevice(this);
// the following function can be removed when deploying the app
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
GCMRegistrar.register(this, SENDER_ID);
} else {
Log.v(TAG, "Already registered");
}
Importcom.google.Android.gcm.GCMRegistrarをインポートしました。
また、SDKのダウンロードで取得したEclipseのビルドパスにGCM.jarを追加しました
助けてください !
更新されたADT(ADT 17より上)では、jarファイルをlibs
ではなくlib
フォルダー内に配置する必要があります。したがって、libs
フォルダではなくlib
内にgcm.jar
ファイルを配置するようにしてください。
プロジェクトのプロパティに移動するだけです-> Javaビルドパス->「注文してエクスポート」ここで追加したjarファイル「GCM.jar」にチェックマークを付けます
私のgcm.jar
はすでにライブラリに含まれていたので、フォルダ名の問題ではありませんでした。
問題のプロジェクトのためにRight Click
> Build Path
> Configure Build path...
に移動する必要があり、以下を削除しました。
Android Private Libraries
プロジェクトで多くの「エラー」が発生する可能性があるため、Eclipseを再起動してクリーンにします。一度クリーンアップすると、エラーは発生しません。プロジェクトとビオラを実行します。
この答えをくれたDLewに感謝します。
プロジェクトフォルダにフォルダlibsを作成し、その中にgcm.jarを配置します。次に、ビルドパスの構成オプションで外部jarを追加を使用してクラスパスに追加します。
Gcm.jarファイルをlibs内に配置してから、プロジェクトプロパティ> Javaビルドパス>ライブラリに移動して、に追加する必要があります。 外部JARの追加...を使用したパス注文とエクスポートの後にgcm.jarを確認し、[〜#〜] ok [〜#〜]。それはうまくいくはずです
Gcm jarファイルが正しいlibsフォルダーにあり、プロジェクトプロパティのJavaビルドパスに追加されていることを確認してください。
プロジェクトでSDKを更新した後、同じ問題が発生しました。それは私にとって助けになりました:私は「Androidツール」に「サポートライブラリを追加する」だけです。これが他の誰かに役立つことを願っています。
Android-support-v4.jar
とgcm.jar
をlibsフォルダーに追加した後も、同じ問題が発生しました。問題はありません。
ありがとう
SENDER_IDフィールドは、GoogleAPIプロジェクトを作成したときのプロジェクトIDである必要があります。これの冒頭を読んでください: http://developer.Android.com/guide/google/gcm/gs.html#libs
TAGも文字列である必要があります-> ""タグ名 "
こんにちはあなたは古いGCM実装を使用しています https://developers.google.com/cloud-messaging/Android/start で利用可能な新しい実装を使用します