Der folgende Code funktioniert gut, ich finde oft einen Beispielcode zum Auslassen, also ändere ich meinen Code als
<service android:name=".MyInternetServer"></service>
aber ich bekomme einen Fehler "Der Dienst kann nicht gefunden werden".
Ich schätze das Paket = "com.example.enabledisablebroadcastreceiver" und
<service android:name="com.code4reference.enabledisablebroadcastreceiver.MyInternetServer"></service>,
vielleicht sollte es den vollen Namen verwenden, oder?
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.enabledisablebroadcastreceiver"
android:versionCode="1"
android:versionName="1.0" >
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.code4reference.enabledisablebroadcastreceiver.EnableDisableBroadcastReceiver"
android:label="@string/title_activity_enable_disable_boradcast_receiver" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Broadcast receiver -->
<receiver android:name="com.code4reference.enabledisablebroadcastreceiver.AlarmManagerBroadcastReceiver" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
<service android:name="com.code4reference.enabledisablebroadcastreceiver.MyInternetServer"></service>
</application>
</manifest>
Antworten:
2 für die Antwort № 1Die Kurzschrift "Punkt" in der Manifest-Datei funktioniert wie in der Dokumentation beschrieben:
Kurz gesagt, wenn das erste Zeichen der Zeichenfolge a ist Periode wird die Zeichenfolge an den Paketnamen der Anwendung angehängt (z. B. angegeben durch das Paketattribut des <manifest> -Elements.
Also in Ihrem Fall, mit:
.MyInternetServer
... ist eine Abkürzung für:
com.example.enabledisablebroadcastreceiver.MyInternetServer
wie das ist was in deinem <manifest>
"s package
Attribut.
Ich vermute, dass Sie wahrscheinlich das Paketattribut Ihres Manifests aktualisieren möchten, damit es mit dem Paket übereinstimmt, das Sie tatsächlich für Ihr Projekt verwenden.
0 für die Antwort № 2
Ja geben Sie Ihrem Dienst einen vollständigen Pfad, wo es sich tatsächlich mit vollem Paketnamen befindet und dann prüfen, ob es funktioniert.