我正在开发一个android项目,我有一个有活动的库项目。
我有一个主应用程序项目,它引用库项目并尝试在库项目中启动活动。在图书馆项目中,我有以下活动:
public class DirectoryPicker extends Activity
{
GridView gridView = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.directory_picker);
gridView = (GridView)findViewById(R.id.directory_picker_gridview);
DirectoryAdapter.directories.add("String1");
DirectoryAdapter.directories.add("String2");
DirectoryAdapter.directories.add("String3");
DirectoryAdapter.directories.add("String4");
gridView.setAdapter(new DirectoryAdapter());
}
}
我正在尝试使用我的主应用程序项目中的以下内容启动活动。
protected OnPreferenceClickListener mPrefDefaultBackupClickListener = new OnPreferenceClickListener()
{
@Override
public boolean onPreferenceClick(Preference preference)
{
Intent intent = new Intent(getActivity(), DirectoryPicker.class);
startActivity(intent);
return false;
}
};
在我的主应用程序项目AndroidManifest文件中,我添加了以下内容:
<activity android:name="com.MyCompany.Library.DirectoryPicker">
</activity>
当我尝试启动活动时,我得到以下异常:
java.lang.NoClassDefFoundError: com.MyCompany.Library.DirectoryPicker
我看不出有什么理由不起作用。
感谢您的帮助。
答案 0 :(得分:0)
我终于找到了问题。没有设法找到任何文档,只是试验和错误,发现我去了文件&gt;项目结构&gt;然后选择我的库并将范围从编译更改为提供,然后清理并重建活动然后正确启动的所有内容。