![](/img/trans.png)
[英]Error startActivity in a Service etends with API 23 or lower
[英]android api 23 startActivity error
以下示例有構建錯誤:
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看起來像:
應用插件:“ 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'
}
但是在清理項目之后,將進行以下嘗試:
Error:(38, 37) error: cannot find symbol method startActivity(Intent)
使用Android Studio最新的穩定版本。 試圖重新啟動工作站和Studio(包括緩存無效),重新安裝平台,切換到beta Studio版本,但結果相同。
對於這個問題的任何建議將不勝感激。 以前從未見過這樣的事情。
保持冷靜,並查看所有項目代碼。 我在本地項目的文件樹中找到了android.content.Context
類的副本。 而且沒有startActivity
方法。
添加重復項以訪問隱藏/僅系統類字段/方法,而無需Java反射。 我非常非常抱歉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.