google android 源码代码规范
来源:互联网 发布:苏州淘宝店铺装修 编辑:程序博客网 时间:2024/06/07 03:17
以Activity源码总结android的命名规范,只能总结大概的规律,无法做到绝对的符合。
放置常量与变量的排位顺序
- 第一层放置顺序的规则:
常量->变量->接口->内部类. - 第二层,各个类型内部又区分为:
静态static->非静态 - 第三层,最后的一个排位规则:访问权限
private私有->包访问(前无修饰符)->protected->public
所以最后总结如下:
- private static final int->String 私有常量String型
- static final int->String 包与protected常访问权限常量
- public static final int->String公共常量
- private static int->String 私有静态变量
- static int->String 包与protected常访问权限静态变量
- public static int->String公共静态变量
- private int->Stirng;普通私有变量
- protect子类访问权限->public int&String 普通公共变量
- 接口:private static ->普通接口
- 内部类:private static ->普通内部类
常量&变量命令规则
- 以**static fina**l修饰的常量字母全都为大写,单词之间用_下划线隔开,如RESULT_CANCELED。
- 静态变量前用小写字母”s”表示,后接单词的首字母大写,如sActivity
- 除静态变量的其它所有变量前都用小写字母”m”表示,后接单词的首字母大写,如 private Window mWindow;
- 一般都是用类名前加”s”或者”m”来命名一个类对象变量
方法命名规则
- 采用小驼峰命名法,首单词小写,第二个单词首字母大写,如getActivityToken()
- 方法名的第一个字母一般都为动词
- 常用的get,set来表示取得与设置;save保存
- on用以当什么发生的时候,生命周期都是以on开头;
- requse**t请求,如请求权限;**add添加;enter进入
- open开启对话框之类;close关闭;cancle取消;show显示,dismiss隐藏
- start启动如activity;stop停止如stop service;init初始化
- 如果方法的返回值为boolean,一般命令为isMn()或者hasMn()
- 其它boolean值的返回动词有should,can
private static final String TAG = "Activity"; private static final boolean DEBUG_LIFECYCLE = false; /** Standard activity result: operation canceled. */ public static final int RESULT_CANCELED = 0; /** Standard activity result: operation succeeded. */ public static final int RESULT_OK = -1; /** Start of user-defined activity results. */ public static final int RESULT_FIRST_USER = 1; /** @hide Task isn't finished when activity is finished */ public static final int DONT_FINISH_TASK_WITH_ACTIVITY = 0; /** * @hide Task is finished if the finishing activity is the root of the task. To preserve the * past behavior the task is also removed from recents. */ public static final int FINISH_TASK_WITH_ROOT_ACTIVITY = 1; /** * @hide Task is finished along with the finishing activity, but it is not removed from * recents. */ public static final int FINISH_TASK_WITH_ACTIVITY = 2; static final String FRAGMENTS_TAG = "android:fragments"; private static final String WINDOW_HIERARCHY_TAG = "android:viewHierarchyState"; private static final String SAVED_DIALOG_IDS_KEY = "android:savedDialogIds"; private static final String SAVED_DIALOGS_TAG = "android:savedDialogs"; private static final String SAVED_DIALOG_KEY_PREFIX = "android:dialog_"; private static final String SAVED_DIALOG_ARGS_KEY_PREFIX = "android:dialog_args_"; private static final String HAS_CURENT_PERMISSIONS_REQUEST_KEY = "android:hasCurrentPermissionsRequest"; private static final String REQUEST_PERMISSIONS_WHO_PREFIX = "@android:requestPermissions:"; private static final String KEYBOARD_SHORTCUTS_RECEIVER_PKG_NAME = "com.android.systemui"; private static final String KEYBOARD_SHORTCUTS_RECEIVER_CLASS_NAME = "com.android.systemui.statusbar.KeyboardShortcutsReceiver"; private static class ManagedDialog { Dialog mDialog; Bundle mArgs; } private SparseArray<ManagedDialog> mManagedDialogs; // set by the thread after the constructor and before onCreate(Bundle savedInstanceState) is called. private Instrumentation mInstrumentation; private IBinder mToken; private int mIdent; /*package*/ String mEmbeddedID; private Application mApplication; /*package*/ Intent mIntent; /*package*/ String mReferrer; private ComponentName mComponent; /*package*/ ActivityInfo mActivityInfo; /*package*/ ActivityThread mMainThread; Activity mParent; boolean mCalled; /*package*/ boolean mResumed; /*package*/ boolean mStopped; boolean mFinished; boolean mStartedActivity; private boolean mDestroyed; private boolean mDoReportFullyDrawn = true; /** true if the activity is going through a transient pause */ /*package*/ boolean mTemporaryPause = false; /** true if the activity is being destroyed in order to recreate it with a new configuration */ /*package*/ boolean mChangingConfigurations = false; /*package*/ int mConfigChangeFlags; /*package*/ Configuration mCurrentConfig; private SearchManager mSearchManager; private MenuInflater mMenuInflater; static final class NonConfigurationInstances { Object activity; HashMap<String, Object> children; FragmentManagerNonConfig fragments; ArrayMap<String, LoaderManager> loaders; VoiceInteractor voiceInteractor; } /* package */ NonConfigurationInstances mLastNonConfigurationInstances; private Window mWindow; private WindowManager mWindowManager; /*package*/ View mDecor = null; /*package*/ boolean mWindowAdded = false; /*package*/ boolean mVisibleFromServer = false; /*package*/ boolean mVisibleFromClient = true; /*package*/ ActionBar mActionBar = null; private boolean mEnableDefaultActionBarUp; private VoiceInteractor mVoiceInteractor; private CharSequence mTitle; private int mTitleColor = 0; // we must have a handler before the FragmentController is constructed final Handler mHandler = new Handler(); final FragmentController mFragments = FragmentController.createController(new HostCallbacks()); // Most recent call to requestVisibleBehind(). boolean mVisibleBehind; private static final class ManagedCursor { ManagedCursor(Cursor cursor) { mCursor = cursor; mReleased = false; mUpdated = false; } private final Cursor mCursor; private boolean mReleased; private boolean mUpdated; } private final ArrayList<ManagedCursor> mManagedCursors = new ArrayList<ManagedCursor>(); // protected by synchronized (this) int mResultCode = RESULT_CANCELED; Intent mResultData = null; private TranslucentConversionListener mTranslucentCallback; private boolean mChangeCanvasToTranslucent; private SearchEvent mSearchEvent; private boolean mTitleReady = false; private int mActionModeTypeStarting = ActionMode.TYPE_PRIMARY; private int mDefaultKeyMode = DEFAULT_KEYS_DISABLE; private SpannableStringBuilder mDefaultKeySsb = null; private ActivityManager.TaskDescription mTaskDescription = new ActivityManager.TaskDescription(); protected static final int[] FOCUSED_STATE_SET = {com.android.internal.R.attr.state_focused}; @SuppressWarnings("unused") private final Object mInstanceTracker = StrictMode.trackActivity(this); private Thread mUiThread; ActivityTransitionState mActivityTransitionState = new ActivityTransitionState(); SharedElementCallback mEnterTransitionListener = SharedElementCallback.NULL_CALLBACK; SharedElementCallback mExitTransitionListener = SharedElementCallback.NULL_CALLBACK; private boolean mHasCurrentPermissionsRequest; private boolean mEatKeyUpEvent; private static native String getDlWarning();
0 0
- google android 源码代码规范
- google C++代码规范
- google python 代码规范
- Google 代码规范
- google的c++ 代码规范
- 【转】Google HTML5代码规范
- google c++代码规范-中文翻译
- Google代码规范之C++
- Google的c++代码规范
- 代码注释规范-google版本
- google java代码规范说明
- C++代码风格--看google代码规范
- android 编程代码规范
- Android开发代码规范
- android代码规范整理
- Android开发代码规范
- android 代码编写规范
- Android代码规范
- Android自定义View获取自定义属性
- 基础知识—循环语句-循环控制
- ubuntu17.04 安装网易云音乐解决依赖问题
- 1001. A+B Format (20)
- 二阶齐次线性递推通项公式的寻找
- google android 源码代码规范
- Android 第一天
- MATLAB现熵值法不确定性分析
- 十九、Spring Boot整合MyBatis(上)
- 会场安排问题(算法实现题4-1)
- opencv(4)---Mat数据类型与颜色空间
- 152. Maximum Product Subarray
- 实战 Groovy: 构建和解析 XML
- drools 电子书规则引擎