记录安卓开发中的问题
2017-07-12 16:51
225 查看
-1、INSTALL_FAILED_INVALID_APK: /data/app/vmdl654475879.tmp/8_slice__ signatures are inconsistent 解决:
点击build下的clean project。重新run。
1
今天在Android项目中按电源键锁屏,然后解锁,发现子Activity关闭了,回到了主页,这个问题困扰了我很久,最后打log发现,在按电源键的时候,调用了子Activity的onDestroy()方法,这个问题现在终于解决了在androidmanifest.xml中的各个activity的属性中加上android:configChanges="orientation|keyboardHidden"就可以解决这个问题。
另外防止屏幕锁屏可以在onCreate方法中调用
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
2
在做VLC播放器时surface 用 frameLayout布局包裹,不然播放界面一直黑
3
在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了。
因为自己也没有做很深的研究,这里就先分享一下通过studio将自己的项目上传到github上的步骤。
两个相关概念:git和github
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
github作为开源代码库以及版本控制系统,它是一个网站,给用户提供git服务.这样你就不用自己部署git系统直接注册个账号,就可以用他们提供的git服务。GitHub可以托管各种git库,并提供一个web界面,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。
安装git版本控制系统.如Git GUI;
在github网站上注册一个账号.
安装好git后启动Androidstudio,打开如下路径File->Settings->Version Control(展开)->git
在Path to Git executable后面的输入框输入你安装的git路径,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/ca71267f969462487c0334b4a5b1fad8.png)
点击test按钮如果出现 Git executed successfully 对话框说明配置成功,同时对话框会显示你安装的git版本号;如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/e2680b93566e73bcbca943deea73ded1.png)
2 配置github登录信息;
打开如下路径File->Settings->Version Control(展开)->GitHub,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/9e80ecd3b013741fd9a2fb6f5d51d613.png)
填入如下信息:
Host:github.com
Login:你的github账户名
Password:你的github账户密码
填完之后点击test按钮,如果出现如下对话框说明配置成功
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/c1544cc2013267d2d8799ceae355cb78.png)
3上传工程到github
打开你要上传的工程,顶部菜单选择VCS->Import into Version Control->Share Project on GitHub,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/f9370bcb736c69337ac4ee802af3d81e.png)
如果你是第一次提交该项目会出现如下对话框,提示你这是一个新的存储库(repo),可以自定义repo的名字,和添加描述。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/149a495d0705968d6b16e7fb33a5eb7a.png)
填写完毕点击share按钮如果你的工程没有问题会出现如下界面
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/dfba48c9941eace84fde4922394d9eb6.png)
这里列出了将要提交的类,以及各种资源配置文件等等,点击ok按钮
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/331a812ac2d97e3a5553f0d6da1bed2d.png)
输入你的Master password点击ok,如果提交成功studio右上角会提示相关信息
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/3e3445cd538abaddb98a7365b33116fe.png)
此时打开你的github网站地址在你的repositories中会看到刚刚提交过的工程名称,点击进去会看到完整的提交工程,到此提交结束
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/1e5ac1ba27db78da7ea0ff8b53bea92b.png)
项目更新
当项目新增了模块或者模块修改了如何更新github上的项目,其实也很简单。
1 如果你的项目新增了一个类,当你创建该类的时候会提示你是否需要加入git,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/a48707e47d62e0f69970f0c42ef37f00.png)
选择yes该类就会加入git,同时该类本身的颜色会有改变(Darcula主题下由正常的白色变为绿色)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/6e5ccddae5c68acc04ea86c380237792.png)
此时该类右击->Git->COmmit File... 出现如下对话框
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/8b2c2fbe8c4feccefd969195ed539b39.png)
填写 commit message 后点击Commit按钮,有可能会出现如下警告,忽略它点击Commit
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/34f0e2158bca13bdcc8928075597ccff.png)
再次右击->Git->Repository->Push,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/fe2d0656d82c2d4178e3e1574d077165.png)
点击Push出现如下对话框,点击Pust按钮
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/df7cb0b778ef82bd9a954160e2aa3da7.png)
此时打开你的github上的该项目源码,你会发现新增的类已经出现了
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/a35841699acbdc72a4fdc769330fcaef.png)
2 如果你的项目中某个类进行了修改需要重新提交;
右击该类->Git-Add
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/af1721f69fbc5026cd72d45761b692b6.png)
感觉这步没什么变化?其实不是,这步其实是吧该类加入到git中;
以后的步骤和新增类的操作一样,这里不再赘述。
4
android studio打开项目后一直Gradle:Resolve dependecies 'app_XXAPk'很长时间
注意:
1. 添加到Project级别的build.gradle中
2. 在buildscript与allprojects里都要添加
点击build下的clean project。重新run。
1
今天在Android项目中按电源键锁屏,然后解锁,发现子Activity关闭了,回到了主页,这个问题困扰了我很久,最后打log发现,在按电源键的时候,调用了子Activity的onDestroy()方法,这个问题现在终于解决了在androidmanifest.xml中的各个activity的属性中加上android:configChanges="orientation|keyboardHidden"就可以解决这个问题。
另外防止屏幕锁屏可以在onCreate方法中调用
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
2
在做VLC播放器时surface 用 frameLayout布局包裹,不然播放界面一直黑
3
在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了。
因为自己也没有做很深的研究,这里就先分享一下通过studio将自己的项目上传到github上的步骤。
两个相关概念:git和github
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
github作为开源代码库以及版本控制系统,它是一个网站,给用户提供git服务.这样你就不用自己部署git系统直接注册个账号,就可以用他们提供的git服务。GitHub可以托管各种git库,并提供一个web界面,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。
准备
安装Androidstudio并新建一个工程;安装git版本控制系统.如Git GUI;
在github网站上注册一个账号.
步骤
1 studio的git配置;安装好git后启动Androidstudio,打开如下路径File->Settings->Version Control(展开)->git
在Path to Git executable后面的输入框输入你安装的git路径,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/ca71267f969462487c0334b4a5b1fad8.png)
点击test按钮如果出现 Git executed successfully 对话框说明配置成功,同时对话框会显示你安装的git版本号;如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/e2680b93566e73bcbca943deea73ded1.png)
2 配置github登录信息;
打开如下路径File->Settings->Version Control(展开)->GitHub,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/9e80ecd3b013741fd9a2fb6f5d51d613.png)
填入如下信息:
Host:github.com
Login:你的github账户名
Password:你的github账户密码
填完之后点击test按钮,如果出现如下对话框说明配置成功
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/c1544cc2013267d2d8799ceae355cb78.png)
3上传工程到github
打开你要上传的工程,顶部菜单选择VCS->Import into Version Control->Share Project on GitHub,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/f9370bcb736c69337ac4ee802af3d81e.png)
如果你是第一次提交该项目会出现如下对话框,提示你这是一个新的存储库(repo),可以自定义repo的名字,和添加描述。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/149a495d0705968d6b16e7fb33a5eb7a.png)
填写完毕点击share按钮如果你的工程没有问题会出现如下界面
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/dfba48c9941eace84fde4922394d9eb6.png)
这里列出了将要提交的类,以及各种资源配置文件等等,点击ok按钮
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/331a812ac2d97e3a5553f0d6da1bed2d.png)
输入你的Master password点击ok,如果提交成功studio右上角会提示相关信息
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/3e3445cd538abaddb98a7365b33116fe.png)
此时打开你的github网站地址在你的repositories中会看到刚刚提交过的工程名称,点击进去会看到完整的提交工程,到此提交结束
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/1e5ac1ba27db78da7ea0ff8b53bea92b.png)
项目更新
当项目新增了模块或者模块修改了如何更新github上的项目,其实也很简单。
1 如果你的项目新增了一个类,当你创建该类的时候会提示你是否需要加入git,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/a48707e47d62e0f69970f0c42ef37f00.png)
选择yes该类就会加入git,同时该类本身的颜色会有改变(Darcula主题下由正常的白色变为绿色)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/6e5ccddae5c68acc04ea86c380237792.png)
此时该类右击->Git->COmmit File... 出现如下对话框
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/8b2c2fbe8c4feccefd969195ed539b39.png)
填写 commit message 后点击Commit按钮,有可能会出现如下警告,忽略它点击Commit
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/34f0e2158bca13bdcc8928075597ccff.png)
再次右击->Git->Repository->Push,如下图所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/fe2d0656d82c2d4178e3e1574d077165.png)
点击Push出现如下对话框,点击Pust按钮
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/df7cb0b778ef82bd9a954160e2aa3da7.png)
此时打开你的github上的该项目源码,你会发现新增的类已经出现了
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/a35841699acbdc72a4fdc769330fcaef.png)
2 如果你的项目中某个类进行了修改需要重新提交;
右击该类->Git-Add
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/22/af1721f69fbc5026cd72d45761b692b6.png)
感觉这步没什么变化?其实不是,这步其实是吧该类加入到git中;
以后的步骤和新增类的操作一样,这里不再赘述。
4
android studio打开项目后一直Gradle:Resolve dependecies 'app_XXAPk'很长时间
buildscript { repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } jcenter() } }
注意:
1. 添加到Project级别的build.gradle中
2. 在buildscript与allprojects里都要添加
相关文章推荐
- [安卓]2dx 安卓开发问题记录
- 关于开发安卓sqlite的小问题记录
- 安卓开发问题记录
- VC 开发中遇到的问题记录(一)
- uClinux开发的一些问题记录
- 记录C#开发遇到的问题和应用经验
- 开发中遇到的问题记录
- 开发错误处理记录(framework框架版本导致的引用问题)
- 最近开发遇到一个传值和引用问题 记录一下
- 安卓开发工具问题解决方安
- android源码编译与开发:问题记录
- ndk开发问题记录(2012/04/25)
- 新版数采仪开发问题全记录
- vs程序开发问题记录
- 安卓开发中使用sqlite数据库时打不开data/data目录的问题解决
- linphone开发中的一个问题记录
- J2ME3.0/2.2 混合开发环境配置问题记录
- Web开发中的Globalization问题记录
- iphone开发问题记录--更新中
- ndk开发问题记录(2012/04/24)