生疏知识点

1.样式(Style)主题和主题(Theme)资源的 区别
     主题资源月样式资源非常相似,主题资源的XML文件通常也放在/RES/values/目录下,主题资源的XML文档同样以<rresource> 元素作为根元素,同样使用<style>元素来定义主题。
    主题不能作用于单个的View组件,主题应该对整个应用的所有Activity起作用,或对指定的Activity起作用。
    主题定义的格式应该是改变窗口外观的格式,例如窗口标题,窗口边框等。
2.应用程序的数据文件默认保存在/data/data/<package name>/files目录下, 像shraePreference,文件,数据库 都在/data/data下面


3.有关远程服务AIDL Service 查看疯狂android 第10章,开发AIDL远程Service只是需要比开发本地Service多定义一个AIDL接口,并且在ServiceConnection 返回你远程定义的接口类型


4。需要使用开机自动运行的Service,例如监听用户来电,监听用户短信,拦截黑名单电话。。。为了让Service随应系统启动自动运行,可以让BroadcastReceiver监听Action为ACTION_BOOT_COMPLETED常量的Intent,然后在BroadcastReceiver中启动特定的Service.例如网络远程控制手机诈骗等

5.基于TCP协议的网络通信
IP协议:只保证计算机能发送和接受分组数据。不能解决数据分组在传输过程中可能出现的问题
TCP协议:会让两端建立一个连接,用于发送和接受数据的虚拟链路。例如重发机制
综上所述,虽然IP和TCP这两个协议的功能不尽相同,也可以分开单独使用,但他们是在同一时期作为一个协议来涉及的,并且在功能上也是互补的,只有两者结合,才能保证Internet在复杂的环境下正常运行,凡事要连接到Internet的计算机,都必须同时安装和使用者两个协议,因此在实际中常把这两个协议统称为TCP/IP协议

6.网络通信
1.Sokect:ServerSokect 与 Sokect 连接 通信
2.URLConnection GET POST 通信 或者是用URLConnection的子类HttpURLConnection通信
3.使用apache开源项目 HttpClient 通信(掌上系列 使用该项目通信) 

7.PayUI-AbsactuionUI-AbsUiAcitivity:
protected void onCreate(Bundle savedInstanceState)  
public void setContentView(View view) {}
都是activity的方法,子类继承 直接调用。
如果有多重,一步一步的调用

8.Context与ApplicationContext的引用:
问题在于,这个Context哪来的我们不能确定,很大的可能性,你在某个Activity里面为了方便,直接传了个this;这样问题就来了,我们的这个类中的sInstance是一个static且强引用的,在其内部引用了一个Activity作为Context,也就是说,我们的这个Activity只要我们的项目活着,就没有办法进行内存回收。而我们的Activity的生命周期肯定没这么长,所以造成了内存泄漏。实际上,只要把握住一点,凡是跟UI相关的,都应该使用Activity做为Context来处理;其他的一些操作,Service,Activity,Application等实例都可以,当然了,注意Context引用的持有,防止内存泄漏。 


9.FragmentActivity和Activity的具体区别在哪里
fragment是3.0以后的东西,为了在低版本中使用fragment就要用到android-support-v4.jar兼容包,而fragmentActivity就是这个兼容包里面的,它提供了操作fragment的一些方法,其功能跟3.0及以后的版本的Activity的功能一样。
下面是API中的原话:
FragmentActivity is a special activity provided in the Support Library to handle fragments on system versions older than API level 11. If the lowest system version you support is API level 11 or higher, then you can use a regular Activity.

1、fragmentactivity 继承自activity,用来解决android3.0 之前没有fragment的api,所以在使用的时候需要导入support包,同时继承fragmentActivity,这样在activity中就能嵌入fragment来实现你想要的布局效果。 
2、当然3.0之后你就可以直接继承自Activity,并且在其中嵌入使用fragment了。 
3、获得Manager的方式也不同 
3.0以下:getSupportFragmentManager() 
3.0以上:getFragmentManager() 

10.@SuppressLint("NewApi")和@TargetApi()的区别
在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上@SuppressLint("NewApi")或者@TargetApi()。那他们之间有什么区别呢,很简单,@SuppressLint("NewApi")屏蔽一切新api中才能使用的方法报的android lint错误@TargetApi() 只屏蔽某一新api中才能使用的方法报的android lint错误举个例子,某个方法中使用了api9新加入的方法,而项目设置的android:minSdkVersion=8,此时在方法上加@SuppressLint("NewApi")和@TargetApi(Build.VERSION_CODES.GINGERBREAD)都可以,以上是通用的情况。而当你在此方法中又引用了一个api11才加入的方法时,@TargetApi(Build.VERSION_CODES.GINGERBREAD)注解的方法又报错了,而@SuppressLint("NewApi")不会报错,这就是区别。
当然,不管你使用了哪个注解,作用仅仅是屏蔽android lint错误,所以在方法中还要判断版本做不同的操作,比如:
[java] view plaincopy

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {  

            //  

        } else {// Pre GINGERBREAD  

            //  

        }  

11打开时候android studio. 直接进入项目了,没有第一次启动时候的选择项,这是为什么?
</pre><p><span style="color: rgb(34, 34, 34); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px;">设置中这个勾去了就行了</span></p><p><span style="color: rgb(34, 34, 34); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px;"><img src="https://pic2.zhimg.com/a738851ecf408922dcd8f892c68ddc09_b.png" data-rawwidth="1164" data-rawheight="542" class="origin_image zh-lightbox-thumb lazy" width="1164" data-original="https://pic2.zhimg.com/a738851ecf408922dcd8f892c68ddc09_r.png" data-actualsrc="https://pic2.zhimg.com/a738851ecf408922dcd8f892c68ddc09_b.png" style="border: 0px none; margin: 6px 0px; display: block; overflow: hidden; max-width: 100%; height: 271.93127147766324px; cursor: -webkit-zoom-in; color: rgb(34, 34, 34); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px; width: 584px;" alt="" /></span></p><pre name="code" class="java">

From the menu bar:

  • on Mac OS choose Android Studio -> Preferences
  • on Windows and Linux choose File -> Settings

Then look for Editor -> Code Style -> File and Code Templates in the left hand pane.

You have two ways you can change this...

1) Select the Includes tab and edit the Created by... text directly.

enter image description here







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值