目录

夜雨飘零

记录精彩的程序人生

标签: Android (26)

Android开机启动 有更新!

要开机启动,首先肯定是想到广播,广播接收器接收到开机发出的广播,就执行onReceive(),在onReceive()可以写一些我们需要做的操作 使用Android Studio帮我们创建广播,点击包名-->New-->BroadcastReceiver 如果是按照上面的操作,在清单文件中会自动生成红框中的代码 需要静态注册,我们要在action中注册开机的广播 <receiver android:name=".BootReceiver" android:enabled="true" android:exported="true"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED"/> </intent-filter> </receiver> 还要加上开机启动的权限 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPL....

Android使用Fragment仿微信底部导航栏 有更新!

这是一个使用Fragment做的一个底部导航栏的小demo MainActivity的代码 package com.example.dell.myapplication; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.ImageButton; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private ImageButton weixin; private ImageButton contact; private ImageButton find; private ImageButton me; private Co....

Android的各种通知Notification、Dialog、Toast、Snackbar 有更新!

有各种各样的通知,不同情况使用不同的通知方式,使用户在体验上更佳,下面就讲一下四种常用的通知方式Notification、Dialog、Toast、Snackbar 通知栏(Notification) public void showNotification() { //通过Notification.Builder 创建一个notification NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext()); //第一次收到通知时,在通知栏显示的内容 builder.setTicker("中奖通知"); //用户点击后自动消失 builder.setAutoCancel(true); //在通知栏显示的标题 builder.setContentTitle("恭喜你中奖了"); //在通知栏显示的内容 builder.setContentText("你的号码被我公司抽中,中奖100万,请及时联络:139999"); //设置小图标,必须设置,否则通知无法显示 bu....

Android的View动画 有更新!

View动画其实就是使ImageView上的图片在隐藏、旋转、缩放、平移通过动画的过程显示。 布局代码,设置图片要通过src设置 <Button android:text="透明动画" android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <ImageView android:id="@+id/alpha_image" android:src="@mipmap/ic_launcher" android:layout_width="match_parent" android:layout_height="match_parent" /> <ImageView android:id="@+id/alpha_image" android:src="@mipmap/ic_launcher" android:layout_width="match_parent" android:layout_height="match....

Android调试的Log.d()没有输出 有更新!

在之前我是很喜欢使用真机进行调试的,因为那时候觉得用真机调试比较方便,直到我发现我的手机打印不出Log.d()的调试日志,我才开始经常使用模拟器。当然还有两小点是:我的手机不支持快速启动和小编的电脑配置比较低,模拟器太吃内存了。 写一个简单的应用,它的代码是 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d("调试日志","你好"); Log.e("错误日志","你好"); } 很简单,就输出一个调试日志和错误日志,但是在真机和模拟器的输出却不一样。 首先使用的是真机 它的输出日志只有错误日志,调试日志不见了。 然后我们使用模拟器进行调试 它把所有的日志都输出了 我们在调试应用时但要是每个日志都要输出,否则是很抓狂的。通过网上查得知是....

Android的cookie的接收和发送 有更新!

我在做自动登录的时候遇到的坑,特写此文以提醒各位不要把自己绕进去了。 我们都知道在web端的cookie是可以通过服务器端设置保存的,默认是关闭浏览器就清除cookie的,但是可以在服务器端设置cookie的有效期,浏览器就会自动保存cookie,而在Android上是不会自动保存cookie,我用的是Okhttp3,我找不到response.addCookie(cookie)和request.getCookies()的方法(Java web的操作),如果没有保存和重发cookie给服务器的话,是不会自动登录的。搞了大半天才知道这一切都在head里。 如果是Okhttp3的话是这样的 在日志输出的cookie 通过这样的方法我们已经拿到了cookie,接下来就是保存cookie了,写以下的静态方法来将cookie保存到SharedPreferces,我的设计思想是尽量少操作数据库。 public static final String ISLOGINED = "islogined"; public static final String COOKIE = "cookie"; pub......