Yeniden başlatmayı (ya da adb shell am
ile başka bir şey) 'öykünmeye' çalışıyorum ve bileşenimi nasıl referans alacağımı anlayamıyorum. Sonra tekrar, belki bir bileşen tarafından ne anlama geldiğini anlamıyorum. Aşağıda ilk önce çalışmayan birkaç örnek komut, sonra tezahürüm var. StartupReceiver'ın 'telefon' başlatıldığında başarılı bir şekilde çağrıldığını unutmayın. Tam bir yeniden başlatma olmadan yeniden tetiklemek istiyorum.Android adb kabuk yayınlandı: Hatalı bileşen adı
Başarısız ADB komutları:
$ ./adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -c android.intent.category.HOME -n net.fstab.checkit_android.StartupReceiver
<help snipped>
Error: Bad component name: net.fstab.checkit_android.StartupReceiver
$ ./adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -c android.intent.category.HOME -n .StartupReceiver
<help snipped>
Error: Bad component name: .StartupReceiver
$ ./adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -c android.intent.category.HOME -n StartupReceiver
<help snipped>
Error: Bad component name: StartupReceiver
Bildirim:
Böyle sınıf adı (o zaman paket olmadan yazmak olabilir) önce paketin adını belirtmek gerekir<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.fstab.checkit_android" android:installLocation="internalOnly"
android:versionCode="1" android:versionName="1.0">
<application android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".BaseActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="BasePreferences" />
<activity android:name="EditActivity" />
<receiver android:name="StartupReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>
<receiver android:name="NotificationReceiver">
<intent-filter>
<action android:name="net.fstab.checkit_android.NotificationReceiver" />
</intent-filter>
</receiver>
<service android:name="StartupService">
<intent-filter>
<action android:name="net.fstab.checkit_android.StartupService" />
</intent-filter>
</service>
</application>
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
</manifest>
* grrr * orada atılmış rastgele bir eğik çizgi ile bir nokta ayrılmış hiyerarşi -
Ayrıca uygulamaya özel yayın intents'i alma izni kullandığından emin olun! * Boggle * ne olursa olsun, yazdığımmı yararlı bulduğuma ve bana yardım edebileceğine sevindim. Teşekkürler. – altendky