我已经将项目导入到eclipse中,当我尝试运行它时,会引发此异常:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.polygraf/com.polygraf.activity.Dashboard}: java.lang.ClassNotFoundException: Didn't find class "com.polygraf.activity.Dashboard" on path: /data/app/com.polygraf-1.apk
我试过清理项目,然后检查所有类名和清单是否都正确,但仍然找不到发生这种情况的原因。你能帮我一下吗?
Dashbard类:
public class Dashboard extends FragmentActivity {
private static final String WELCOME_TYPE = "WELCOME_TYPE";
private static final String HELP_TYPE = "HELP_TYPE";
public static final String ADRESS_CONTENT = "ADRESS_CONTENT";
public static final String DOC_NAME = "DOC_NAME";
private Transcript mContent;
private ISettableContent mListOfDocument;
private String mAddress;
private String mDocName;
public Dashboard() {
}
/** Called with the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dashboard);
boolean content = false;
// View gc = (NoSaveStateFrameLayout)
// findViewById(R.id.content_fragment);
//
Fragment frContent = getSupportFragmentManager().findFragmentById(R.id.content_fragment);
mContent = ((IGetContent) frContent).getContent();
TranscriptSetting cc = Polygraf.getInstance().getContentSetting();
Fragment frDocumentsList = getSupportFragmentManager().findFragmentById(R.id.documents);
mListOfDocument = (ISettableContent) frDocumentsList;
cc.registerContent(mListOfDocument);
if (getIntent().hasExtra(ADRESS_CONTENT)) {
mAddress = getIntent().getStringExtra(ADRESS_CONTENT);
mDocName = getIntent().getStringExtra(DOC_NAME);
mContent.setAddress(mAddress, mDocName);
content = true;
} else if (getIntent().hasExtra(WELCOME_TYPE)) {
content = true;
prepareVisibilityBtnTranscript();
} else if (getIntent().hasExtra(HELP_TYPE)) {
content = true;
mContent.showHelp();
}
if (content) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.hide(frDocumentsList);
ft.commit();
// because on diferent layouts for small and large device
// some views missing, so the test is inportant
View contentLayout = findViewById(R.id.contentLayout);
if (contentLayout != null) {
contentLayout.setVisibility(View.VISIBLE);
}
prepareVisibilityBtnWelcome();
// cp.setContent(mContent);
}
cc.registerContent(mContent);
// cp.setListener(cc);
}
.
.
.
}
和清单文件:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="17" />
<application
android:name=".Polygraf"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@drawable/icon"
android:label="@string/skeleton_app"
android:theme="@android:style/Theme.Black.NoTitleBar" >
<activity
android:name="com.polygraf.activity.Dashboard"
android:configChanges="orientation|keyboard" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<!-- This places this activity into the main app list. -->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.polygraf.activity.SettingActivity"
android:label="@string/skeleton_app" />
<activity
android:name="com.polygraf.activity.ContentActivity"
android:label="@string/skeleton_app" >
</activity>
<activity
android:name="com.polygraf.activity.PlayVideo"
android:configChanges="orientation|keyboard"
android:label="@string/skeleton_app" />
</application>
我想您正在使用Eclipse。一切正常,但是Eclipse在APK中没有包含支持包…如果您在stacktrace中查看错误,就会注意到问题的根源:“
Unable to find FragmentActivity
”。或者,您可以解压缩apk并解包,您将看到不包括兼容性包类。
要解决此问题,请右键单击您的项目,属性,构建路径,然后转到“导出”选项卡。确保Android private libraries
已检查“
”。清洁和重建应使您步入正轨…
问题内容: 我不太确定是什么原因导致的,因为清单中正确列出了它: 我还添加了来构建路径,并将其移至的顶部,但是它仍然给我同样的错误。 编辑:我完全重建了该项目,并且无法重现该错误。不知道是什么原因造成的。 问题答案: 我的项目有同样的问题。这是由于我的项目与我在项目中添加的库项目之间的android支持库版本冲突而发生的。将相同版本的android支持库放入您的项目和包含的库项目中,并清理构建 …
我已经安装了java11使用 然后,我尝试了下面的方法来将JAVA\u带回家 它返回为空。因此,按照echo$JAVA\u HOME中的说明操作不会返回任何结果 当我运行ls-l/usr/bin/java时,我看不到上面链接中显示的任何jvm路径。下面是我得到的 如何设置JAVA\u主页
问题内容: 我目前正在一个项目中,我必须使用纯本地ndk。当我尝试从Irrlicht引擎源运行helloworld示例时,它起作用了。然后,按照该示例的相同格式尝试在我的项目中使用它。但是我得到了: 在运行我的项目时。 这是我的main.cpp文件: n Android.mk: 我在AndroidManifest.xml中给了Activity名称: 我在这里做什么错?如有必要,我将发布完整代码。
我目前正在做一个项目,在这个项目中我必须使用纯原生的NDK。当我尝试从Irrlicht引擎源代码运行helloworld示例时,它起到了作用。然后我尝试在我的项目中使用它,遵循该示例的相同格式。但我得到: 在运行我的项目时。 并且我在AndroidManifest.xml中给出了活动名称: 我在这里犯了什么错误?如果需要,我会发布完整的代码。
我从GitHub下载了这段代码,看看是否可以对其进行定制,使其适用于我正在进行的项目。我希望这是我的最后一期,但我完全被这个错误所困住了。我可以构建和运行应用程序,但它在启动时崩溃。 我在这里经历了许多类似的问题,我根据解决方案做出了修改,但它们似乎对我不起作用。我是这方面的新手,如果有任何帮助,我将不胜感激。拜托...任何人。:) 这是我的错误输出-