在主应用程序项目中使用库中的活动
问题描述:
我正在开发一个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
我可以没有看到它没有任何理由。
感谢您的帮助。
答
我终于找到了问题。没有设法找到任何文档,只是试验和错误,发现如果我去文件>项目结构>依赖,然后选择我的库,并将范围从编译到提供和清理和重建所有活动然后正确启动。
你是如何添加图书馆的? – zgc7009 2014-09-29 21:06:23
它是构建gradle文件的参考。图书馆本身正在正常工作,只是没有的活动 – Boardy 2014-09-29 21:08:08