0
有樣建立自己的錯誤如下:的Android API 23 startActivity錯誤
public class BootReceiver extends BroadcastReceiver {
public BootReceiver() {
}
@Override
public void onReceive(final Context mContext, Intent intent) {
if(intent.getAction().equalsIgnoreCase(Intent.ACTION_BOOT_COMPLETED)){
final Intent l = new Intent();
l.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
l.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
l.setComponent(new ComponentName(this.getClass().getName(), MainActivity.class.getName()));
mContext.getApplicationContext().startActivity(l);
}
}
}
廣播接收裝置,宣佈在AndroidManifest.xml內標籤是這樣的:
<receiver
android:name=".BootReceiver"
android:enabled="true"
android:exported="true">
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
的build.gradle是看起來像:
apply plugin:'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '25.0.2'
defaultConfig {
minSdkVersion 23
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
}
}
productFlavors {
}
}
dependencies {
compile 'com.android.support:leanback-v17:23.2.1'
compile 'com.android.support:preference-leanback-v17:23.2.1'
}
但任何化妝嘗試之後清潔工程後:使用Android Studio的最新的穩定版本
Error:(38, 37) error: cannot find symbol method startActivity(Intent)
。 曾嘗試重新啓動工作站和Studio(包括緩存失效),重新安裝平臺,切換到beta Studio版本,但具有相同的結果。
將不勝感激對這個問題的任何建議。以前從未見過這樣的事情。
爲什麼使用'mContext.getApplicationContext()。startActivity(l);'?你的'mContext.startActivity(l);' –
insted,因爲我曾嘗試過'mContext.startActivity(l);'第一個結果是相同的錯誤。所以我開始相信魔法並嘗試使用一些「魔法灰塵」來解決我的問題。可悲的是沒有運氣。 – bershadskiy