我正在构建我的第一个Android应用程序,它已经变得有点混乱了。我正在使用List / detail模式,因为它们适合环境,但因为我正在开发移动设备和平板电脑,所以它有点失控。对于每个屏幕(列表/细节是一个屏幕),创建四个文件。 ListActivity,ListFragment,DetailActivity,DetailFragment。到目前为止有四个屏幕,从字面上开始项目,我有12个文件,还有一个数据库表的三个帮助文件。
我问的是,组织这个的最佳方法是什么?我正在使用Android Studio,似乎我无法将文件排序到文件夹中而不将它们放在单独的包中。所以我会做一些像com.domain.app.screen1。(片段|活动),com.domain.app.screen2。(片段|活动)等等?或者我忍受了吗?或者有更好的方法吗?
如果我不清楚,请告诉我,我会尝试清除它
答案 0 :(得分:30)
@Eric Oestrich的好解释
编写中型到大型Android应用程序需要具有代码结构。在创建我们最新的Android开发项目时,我遇到了一个帮助我的结构。
Java代码:
com.example
<强>活动强>
包含所有活动。类最后都以Activity命名。这样,您可以在阅读Java代码时立即知道它是什么 没有完整的包裹名称。
<强>适配器强>
包含所有适配器。
包含与签署用户相关的任何类。我创建一个本地帐户并将所有相关的类放在一起非常方便。
包含与数据管理相关的所有类,如ContentProvider和SQLiteHelper。
包含我的所有SQLite迁移。
包含所有碎片。
包含帮助程序类。帮助程序类是放置在多个位置使用的代码的地方。我有一个DateHelper。大多数方法都是静态的。
包含所有接口。
包含所有本地模型。从HTTP API同步时,我使用Jackson将JSON解析为这些Java对象。我也将Cursor行拉入这些模型中。
包含自定义首选项的所有类。创建首选项时,我需要自定义PreferenceDialog以及自定义PreferenceCategory。他们住在这里。
包含与同步相关的所有类。我使用SyncAdapter从HTTP API中提取数据。除了SyncAdapter之外,还需要SyncService,因此我创建了一个包。
布局:
答案 1 :(得分:11)
据我所知,没有惯例,但这里有一个如何将文件放入包中的例子:
还有很多其他人。您可以在GitHub上搜索android
项目并查看。