Problem bei der Programmierung von GCM

  • 2 Antworten
  • Letztes Antwortdatum
R

RDunst

Neues Mitglied
0
Hallo Leute,

ich habe leider ein Problem.

Ich hab mir ein Sample runtergeladen vom Netz, das funktioniert einwandfrei. Jetzt wollte ich das Sample umprogrammieren, damit es für meine Anforderungen passt. Leider stimmt irgendetwas mit der Auflösung der import's anscheinend nicht.

Vergleich:

1.png


2.png



hier die Imports zum Vergleich:

diese hier funktioniert:

package com.androidbegin.gcmtutorial;

import java.util.Timer;
import java.util.TimerTask;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.PowerManager;
import android.util.Log;

import com.google.android.gcm.GCMBaseIntentService;

So sieht der Import aus, bei der Version die nicht funkioniert:

package at.discop2.discop2;

import java.util.Timer;
import java.util.TimerTask;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.PowerManager;
import android.util.Log;

import com.google.android.gcm.GCMBaseIntentService;


und noch die AndroidManifest Dateien zum Vergleich,

diese funktioniert wieder:

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

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="15" />

    <permission android:name="com.androidbegin.gcmtutorial.permission.C2D_MESSAGE" android:protectionLevel="signature" />
    <uses-permission android:name="com.androidbegin.gcmtutorial.permission.C2D_MESSAGE" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:allowBackup="false"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".GCMMainActivity"
            android:launchMode="singleTask" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <service android:name=".GCMIntentService" />

        <receiver
            android:name="com.google.android.gcm.GCMBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND" >
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                <action android:name="com.google.android.c2dm.intent.REGISTRATION" />

                <category android:name="com.androidbegin.gcmtutorial" />
            </intent-filter>
        </receiver>
    </application>

</manifest>

So sieht der Code aus, bei der Version die nicht funkioniert:

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

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="18" />

    <permission android:name="at.discop2.discop2.permission.C2D_MESSAGE" android:protectionLevel="signature" />
    <uses-permission android:name="at.discop2.discop2.permission.C2D_MESSAGE" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:allowBackup="false"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".MainActivity"
            android:launchMode="singleTask" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <service android:name=".IntentService" />

        <receiver
            android:name="com.google.android.gcm.GCMBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND" >
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                <action android:name="com.google.android.c2dm.intent.REGISTRATION" />

                <category android:name="at.discop2.discop2" />
            </intent-filter>
        </receiver>
    </application>

</manifest>

Vielen Dank Leute.

Liebe Grüße,
Roland
 
Deine Klasse "Intentservice" ist nicht von "GCMBaseIntentservice" abgeleitet, das hast Du wohl rausgelöscht. Vergleich mal die jeweils 3. Codezeile in Deinen beiden Screenshots.
 
  • Danke
Reaktionen: RDunst
Man, wie konnte ich das übersehen?! Ich hab sicher eine Stunde nach dem Fehler gesucht, echt peinlich :(

Aber vielen Dank.

LG

Der ursprüngliche Beitrag von 15:06 Uhr wurde um 15:16 Uhr ergänzt:

noch eine kurze Frage:

ist das schon Vollbild, der WebView?

1.png


Dankeschön.

Liebe Grüße,
Roland
 
Zurück
Oben Unten