安卓7.0还会出现方法数mysql 多列超过 6553565535的问题吗

一切安排都是最好的,剩下的就交给时间!
做自己的安卓拍照应用,其实很简单
看着自己手机上的自带的拍照APP,感觉人家做的好精美啊,所以就心血来潮的想要做一个自己的安卓拍照app。于是在网上找啊找啊找的终于做出了一款还算能用的拍照设备。 (*^__^*) 嘻嘻……
首先是一些原理上的介绍
我主要是借助于SurfaceView类来实现组件的添加的;
然后借助于Camera(导入包的时候记得是引入hardware的);
设置拍照所需的一些参数
实现拍照的回调接口,用以处理回调事件
将摄像头采集到的数据写入本地的文件中
在清单文件中添加摄像机权限,写外部存储卡权限
代码的实现
首先是布局文件,这里因为要显示两个按钮,所以采用了帧布局,并将两个按钮一开始设置为不显示。
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/surface"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
android:id="@+id/buttonlayout"
android:id="@+id/takephoto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Take"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginRight="5dp"
android:onClick="takephoto"
android:id="@+id/focus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/takephoto"
android:layout_alignTop="@id/takephoto"
android:layout_marginRight="20dp"
android:onClick="focus"
android:text="Focus"
然后是清单文件的一些样式(横屏和全屏显示)以及相关的权限的添加
&?xml version="1.0" encoding="utf-8"?&
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mark.takephoto"
android:versionCode="1"
android:versionName="1.0" &
android:minSdkVersion="8"
android:targetSdkVersion="21" /&
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/&
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/&
android:name="android.permission.CAMERA"/&
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" &
android:name=".MainActivity"
android:screenOrientation="landscape"
android:label="@string/app_name" &
android:name="android.intent.action.MAIN" /&
android:name="android.intent.category.LAUNCHER" /&
最后是主界面的业务代码的实现:
package com.mark.
import java.io.F
import java.io.FileNotFoundE
import java.io.FileOutputS
import java.io.IOE
import java.text.SimpleDateF
import java.util.D
import android.annotation.SuppressL
import android.app.A
import android.hardware.C
import android.hardware.Camera.PictureC
import android.os.B
import android.os.E
import android.view.MotionE
import android.view.SurfaceH
import android.view.SurfaceV
import android.view.V
import android.view.ViewG
import android.view.W
import android.view.WindowM
public class MainActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
layout = this.findViewById(R.id.buttonlayout);
SurfaceView sv = (SurfaceView) findViewById(R.id.surface);
sv.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
sv.getHolder().setKeepScreenOn(true);
sv.getHolder().addCallback(new SurfaceCallback());
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
layout.setVisibility(ViewGroup.VISIBLE);
return true;
return super.onTouchEvent(event);
public void takephoto(View view) {
if (camera != null) {
switch (view.getId()) {
case R.id.takephoto:
camera.takePicture(null, null, new MyPictureCallback());
case R.id.focus:
camera.autoFocus(null);
public void focus(View view) {
camera.autoFocus(null);
* 对Camera的拍照时的参数的类型的实现,主要是相关的一些回调方法的处理
private final class SurfaceCallback implements
android.view.SurfaceHolder.Callback {
@SuppressWarnings("deprecation")
public void surfaceCreated(SurfaceHolder holder) {
camera = Camera.open();
parameters = camera.getParameters();
parameters.setPreviewSize(1024, 768);
parameters.setPreviewFrameRate(15);
parameters.setPictureSize(1024, 768);
parameters.setJpegQuality(80);
camera.setParameters(parameters);
camera.setPreviewDisplay(holder);
camera.startPreview();
} catch (Exception e) {
e.printStackTrace();
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
public void surfaceDestroyed(SurfaceHolder holder) {
if (camera != null) {
camera.release();
camera = null;
* 负责对照相机拍照事件进行处理的一个内部类
final class MyPictureCallback implements PictureCallback {
* data就是图片的字节数组
@SuppressLint("SimpleDateFormat")
public void onPictureTaken(byte[] data, Camera camera) {
String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
.format(new Date(System.currentTimeMillis()));
File jpgFile = new File(
Environment.getExternalStorageDirectory(), time
+ ".jpeg");
FileOutputStream fos = new FileOutputStream(jpgFile);
fos.write(data);
fos.close();
camera.startPreview();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
现在回头来整理一下这个小应用的思路,方便对这些知识点加深印象。
首先是对布局界面的设计的整理:
因为要通过点击按钮的方式来实现拍照和聚焦的效果,还得显示我们的照相机所捕捉到的实时数据,所以我采用了帧布局的形式,让两个按钮显示在SurfaceView的上层,并初始化为不可见的状态。
而实时的界面采用全屏和横屏的方式更为妥当,所以加入下面的代码即可,我这里的全屏带代码中进行设置了。
&application
android:allowBackup="true"
android:icon="@drawable/camera"
android:label="@string/app_name"
android:theme="@style/AppTheme" &
// 需要在setContentView之前进行设置,否则会报错
this.requestWindowFeature(Window.FEATURE_NO_TITLE)
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN)
setContentView(R.layout.activity_main)
然后是清单文件的书写:
由于要操作照相机和拍照的图片数据,所以要在清单文件中添加相关的权限。
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/&
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/&
android:name="android.permission.CAMERA"/&
主界面的代码逻辑:
然后是我们的主界面的代码的逻辑了,在Activity初始化的时候就需要获取SurfaceView控件,然后设置一些参数,比如屏幕常亮,实时无缓冲等,然后添加回调的处理。这里是为了初始化我们的照相机的一些参数,比如设置每秒捕获的图片的帧数,每张图片的大小等等吧。这些都是在SurfaceCreated方法内完成的,也就是那个回调的实现类中完成的。等待着事件返回结果就可以了。最后记得要关闭camera的实例哦,否则其他应用可能就调用不了照相机,进行工作了。
完成了初始化的任务后,我们的界面就算是完成了,现在我们要拍照咯,那必须得按下快门吧,快门就是我们设置好的按钮呗,所以点击屏幕会触发onTouchEvent事件,在这个方法里面我们就设置这两个按钮显示就可以了。左边的是聚焦,右边的是拍照。现在只需要对这两个方法进行实现,就大功告成了。
所以现在就是调用camera的camera.takePicture(null, null, new MyPictureCallback());方法了,前两个是关于压缩,格式等相关,可以设置为null,第三个就是拍照时的一个回调了。其作用就是将照相机捕获到的数据封装起来了,public void onPictureTaken(byte[] data, Camera camera) {这里面的data就是照相机捕获到的图片的字节数组了,我们接下来要做的就是使用一个输出流,将文件写入到一个格式为.jpeg 的图片中,就可以了。
以上就是这个应用的整个的实现的流程和思路。希望对大家能有所帮助。
小总结以及拓展
最后,来个小小的总结和拓展吧。
简易的实现了拍照应用。使用了多个开发过程中常用的知识点和小技巧。
但是代码显得很是混乱,没有分层。应该将不同的业务逻辑实现放到不同的包内,方便代码的管理。
作为拓展,是我们可以借助这样的代码实现更加美化的效果,比如说添加上一个预览路径,便于查看所拍摄的图片。或者一个摄像的模式,这需要借助于额外的类进行处理。添加上二维码扫描功能等等。
最后,附上我测试的手机的照相机的参数信息
手机型号:魅蓝2
04-13 20:46:28.399: I/MainActivity(29768): 3dnr-mode=on;3dnr-mode-values=on,afeng-max-focus-step=1023;afeng-min-focus-step=0;aflamp-mode=aflamp-mode-values=off,on,antibanding=antibanding-values=off,50hz,60hz,auto-exposure-lock-supported=true;auto-whitebalance-lock-supported=true;brightness=brightness-values=low,middle,brightness_value=0;burst-num=1;cap-mode=cap-mode-values=normal,face_beauty,continuousshot,smileshot,bestshot,light-field,autorama,mav,asd,capfname=/sdcard/DCIM/cap00;contrast=contrast-values=low,middle,cshot-indicator=true;cshot-indicator-supported=true;dynamic-frame-rate=true;dynamic-frame-rate-supported=true;edge=edge-values=low,middle,effect=none;effect-values=none,maroon,black_and_white,film,oxidize,leaf,violet,light_yellow,azure,viridity,wood,pale_green,fading,corn_field,olive_yellow,toy,pale_blue,clay_bank,sunny,eng-mfll-e=false;eng-mfll-s=true;eng-s-shad-t=0;eng-shad-t=0;exposure-compensation=0;exposure-compensation-step=1.0;face-beauty=false;face-beauty-supported=true;fb-enlarge-eye=0;fb-enlarge-eye-max=4;fb-enlarge-eye-min=-4;fb-extreme-beauty=true;fb-extreme-beauty-supported=false;fb-face-pos=-2000:-2000;fb-sharp=0;fb-sharp-max=12;fb-sharp-max-values=12;fb-sharp-min=-12;fb-sharp-min-values=-12;fb-skin-color=0;fb-skin-color-max=12;fb-skin-color-max-values=12;fb-skin-color-min=-12;fb-skin-color-min-values=-12;fb-slim-face=0;fb-slim-face-max=12;fb-slim-face-max-values=12;fb-slim-face-min=-12;fb-slim-face-min-values=-12;fb-smooth-level=0;fb-smooth-level-max=12;fb-smooth-level-max-values=12;fb-smooth-level-min=-12;fb-smooth-level-min-values=-12;fb-touch-pos=-2000:-2000;feature-max-fps=24@VFB+EIS;flash-duty-max=1;flash-duty-min=0;flash-duty-value=-1;flash-mode=flash-mode-values=off,on,auto,red-eye,flash-step-max=0;flash-step-min=0;focal-length=3.81;focus-distances=0.95,1.9,Infinity;focus-fs-fi=0;focus-fs-fi-max=65535;focus-fs-fi-min=0;focus-mode=focus-mode-values=auto,macro,infinity,continuous-picture,continuous-video,manual,gesture-shot=false;gesture-shot-supported=true;horizontal-view-angle=62;hsvr-size-fps=640x480x120;hsvr-size-fps-values=640x480x120;hue=hue-values=low,middle,iso-speed=iso-speed-values=auto,100,200,400,800,1600;jpeg-quality=100;jpeg-thumbnail-height=128;jpeg-thumbnail-quality=100;jpeg-thumbnail-size-values=0x0,160x128,256x192;jpeg-thumbnail-width=160;m-sr-g=0;m-ss=0;max-exposure-compensation=3;max-num-detected-faces-hw=15;max-num-detected-faces-sw=0;max-num-focus-areas=1;max-num-metering-areas=9;max-num-ot=1;max-zoom=10;mfb=mfb-values=off,mfll,min-exposure-compensation=-3;mnr-e=0;mnr-s=true;mtk-123-shad-s=true;mtk-awb-s=true;mtk-cam-mode=0;mtk-shad-s=true;native-pip=false;native-pip-supported=true;picture-format=picture-format-values=picture-size=2560x1920;picture-size-values=320x240,640x480,1024x768,1280x720,1280x768,1280x960,1600x1200,2048x1536,2624x1968,3264x2448,3840x2304,4192x3104;pip-fps-zsd-off=30;pip-fps-zsd-on=15;preferred-preview-size-for-video=1920x1088;preview-format=yuv420preview-format-values=yuv420sp,yuv420p,yuv420i-yyuvyy-3preview-fps-range=5000,60000;preview-fps-range-values=(5000,60000);preview-frame-rate=30;preview-frame-rate-values=10,20,15,24,30,120;preview-size=640x480;preview-size-values=176x144,320x240,352x288,480x320,480x368,640x480,720x480,800x480,800x600,864x480,960x540,1024x768,1280x720,1280x768,1920x1088,2096x1572;rotation=0;saturation=saturation-values=low,middle,scene-mode=scene-mode-values=auto,portrait,landscape,night,night-portrait,theatre,beach,snow,sunset,steadyphoto,fireworks,sports,party,candlelight,sen-mode-s=0;sensor-type=252;shutter-value=0;shutter-value-supported=0,200,500,1000,2000,5000,10000,20000,50000,100000,200000,300000,400000,500000,600000,800000,1000000,2000000,3000000,5000000,8000000,;smooth-zoom-supported=true;sr-awb-s=true;sr-shad-s=true;stereo-capture-frame-rate=15;stereo-preview-frame-rate=15;sv1-s=3;sv2-s=3;vdr-cc2m-s=true;vdr-r=0;vdr-r2m-s=true;vdr-r4k2k-s
扫码向博主提问
非学,无以致疑;非问,无以广识
擅长领域:
没有更多推荐了,随笔分类 - android
摘要: 微信的缩略图要求是不大于32k,这就需要对我的图片进行压缩。试了几种方法,一一道来。 代码如下 ByteArrayOutputStream baos = new ByteArrayOutputStream(); image.compress(Bitmap.CompressFormat.JPEG, 1
星辰之力 阅读(2) |
摘要: 我的解决办法: 1 首先设置android:layout_width=”wrap_content”和android:layout_height=”wrap_content”,否则你按比例缩放后的图片放在这也有可能会虚的。 2.配合android:scaleType=&fitXY& 使用 3.为图片设
星辰之力 阅读(0) |
摘要: GreenDao 给我个人感觉 比一般的ORM框架要好很多,虽然说上手和其他的比起来,较复杂,但是如果使用熟练以后,你会爱上这个框架的 用这些ORM 框架给我的感觉都是,当升级时,都需要进行数据库所有表的删除,然后再重新创建表,这样的话,开发时候可以,但是真正的项目用,这是不允许的,因为如果用户升级
星辰之力 阅读(3) |
摘要: RxJava2和Retrofit2用的越来越多,最近也在封装一个通用的网络请求库,其中就包括了单文件下载的方法,所以这里进行记录。文末附带Demo 由于网上很多的方法都是使用拦截器进行进度的监听,个人觉得使用起来非常复杂和,所以取了个巧,在文件写入到硬盘的时候对文件读写进行监听,就解决了retrof
星辰之力 阅读(17) |
摘要: 接上篇android接入微信支付文章,这篇我们带你来接入支付宝支付服务 简介 首先要说明的是个人感觉接入支付宝比微信简单多了,很轻松的,所以同学们不要紧张~ 当然还是老规矩啦,上来肯定的贴上官网地址,因为我这些服务天天在更新,而我的文章是教大家方法,而让你不是照葫芦画瓢 进入app支付文档有两种方式
星辰之力 阅读(14) |
摘要: Retrofit2是square公司出品的一个网络请求库,网上有很多相关的介绍。我很久以前都想去研究了,但一直都有各种事情耽搁,现在就让我们一起去捋一捋,这篇主要讲解Retrofit2与RxJava的基本用法。 get请求 post请求 文件上传 文件下载 开启日志拦截 与RxJava结合使用 ge
星辰之力 阅读(11) |
摘要: 我这里的网络请求是用的装饰者模式去写的,什么是装饰者模式呢?在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。我的理解就是一个接口,两个实现类,一个实现类负责调用接口的方法,另一个类负责功能的具体实现。本文中所提到的代码都是伪代码,
星辰之力 阅读(6) |
摘要: 如果嫌麻烦直接可以用我封装好的库:Novate: https://github.com/Tamicer/Novate 通过对Retrofit2.0的前两篇的基础入门和案例实践,掌握了怎么样使用Retrofit访问网络,加入自定义header头,包括加入SSL证书,基本的调试基础,cookie同步问题
星辰之力 阅读(12) |
摘要: rxjava+retrofit处理网络请求 在使用rxjava+retrofit处理网络请求的时候,一般会采用对观察者进行封装,实现代码复用和拓展。可以参考我的这篇文章:rxjava2+retrofit封装处理网络请求全解析。一种可行的封装如下: 基类observer 封装请求(登录为例) 这里us
星辰之力 阅读(22) |
摘要: Github 相关代码: Github地址 一直感觉 RxJava2 的取消订阅有点混乱, 这样也能取消, 那样也能取消, 没能系统起来的感觉就像掉进了盘丝洞, 迷乱… 下面说说这几种情况 几种取消的情况 subscribe 时返回了 disposable: subscribe 不返回 dispos
星辰之力 阅读(12) |
摘要: 截止日前最新版: RxJava RxJava2 1:create操作改变 Rxjava RxJava2 2:新增Flowable
星辰之力 阅读(9) |
摘要: RxJava2介绍 RxJava2 发布已经有一段时间了,是对 RxJava 的一次重大的升级,由于我的一个库cv4j使用了 RxJava2 来尝鲜,但是 RxJava2 跟 RxJava1 是不能同时存在于一个项目中的,逼不得已我得把自己所有框架中使用 RxJava 的地方以及App 中使用 Rx
星辰之力 阅读(24) |
摘要: 因为其简单与出色的性能,Retrofit 是安卓上最流行的HTTP Client库之一。 不过它的缺点是在Retrofit 1.x中没有直接取消正在进行中任务的方法。如果你想做这件事必须手动杀死,而这并不好实现。 Square几年前曾许诺这个功能将在Retrofit 2.0实现,但是几年过去了仍然没
星辰之力 阅读(6) |
摘要: 第一次启动avd,Android stutdio会自动安装Intel HAXM,而且表面看是成功的,再次启动会出现“/dev/kvm is not found.”,这说明Intel HAXM没有安装成功。找到安装包(路径:C:\Users\Administrator\AppData\Local\An
星辰之力 阅读(13) |
摘要: 开机自启主要自定义广播接收类,且需要在清单文件中注册,不要在代码中动态注册。 开始编写广播接收器: 再看来看看在服务中启动悬浮框的代码:
星辰之力 阅读(6) |
摘要: 附录文章1介绍了Android平台上的悬浮窗WindowManager,WindowManager悬浮窗可以悬浮在Android设备上的桌面窗口之上,但是WindowManager的使用,必须先申请权限,在一些定制的Android操作系统中,有可能会将WindowManager悬浮窗的权限一律屏蔽掉
星辰之力 阅读(4) |
摘要: 如果已经启动了四个Activity:A,B,C和D。在D Activity里,我们要跳到B Activity,同时希望C finish掉,可以在startActivity(intent)里的intent里添加flags标记,如下所示: 这样启动B Activity,就会把D,C都finished掉,
星辰之力 阅读(5) |
摘要: 在android studio 中添加jar和so时,将jar文件直接拷贝到 项目目录\app\libs下即可,将so文件按照平台分类目录放到 项目目录\app\src\main\jniLibs\平台类别目录 下。 这是默认的情况如此操作。 如果将gradle 配置文件修改了,也可以变更上述文件存放
星辰之力 阅读(3) |
摘要: Broadcast Receive 广播接收(Broadcast Receive)为android的四大组件之一。主要用于监听广播消息,并做出响应。与应用程序中监听事件相比而言,该监听事件为全局监听。 Broadcast Receive分为两个部分,一个用于发送广播,一个用于接收广播。而发送广播的方
星辰之力 阅读(4) |
摘要: Android下可以打开一些文件,带有.doc 等后缀的文件网上一般都有解释,这个写一个使用文件管理器打开指定文件夹的 打开其他文件的方法,基本上和以上差不多,只是inten的一些属性不同而已,现在列表在下: Intent intent = new Intent(Intent.ACTION_VIEW
星辰之力 阅读(67) |
摘要: FAQ:& Manifest merger failed with multiple errors, see logs 解决: 此问题产生原因大概有三个 # 第一,清单文件有错,这种错不会在编译时指出来,当然as中还是可以看到的, 边上的红色就是了# 第二,引入的三方包存在相同的label icon
星辰之力 阅读(25) |
摘要: 解决办法:
星辰之力 阅读(7) |
摘要: 1,在赶项目的时候我们经常会实现下面这个功能,及添加滚动条广告广播,先看一下淘宝的效果 2,这次实现效果主要使用Android自带的ViewFlipper控件,先来看一下我们的它的基本属性和基本方法吧 属性: 方法: 所以现在实现该功能的思路是: ①创建主布局文件,包含ViewFlipper控件(从
星辰之力 阅读(12) |
摘要: 1、效果图如下: 这效果用户体验还是很酷炫,今天我们就来讲解如何实现这个效果。 2、分析 为了方便理解,作图分析 如图所示,整个页面分为四个部分: 1、悬浮内容,floatView 2、顶部内容,headView 3、中间内容,与悬浮内容相同,middleView 4、商品详情展示页面,detail
星辰之力 阅读(13) |
摘要: 这篇博客主要介绍的是 Android 主流各种机型和各种版本的悬浮窗权限适配,但是由于碎片化的问题,所以在适配方面也无法做到完全的主流机型适配,这个需要大家的一起努力,这个博客的名字永远都是一个将来时,感兴趣或者找到其他机型适配方法的请留言告诉我,或者加群一起交流一下,非常感谢~
星辰之力 阅读(54) |
摘要: 首先是一个小的悬浮窗显示的是当前使用了百分之多少的内存,点击一下小悬浮窗,就会弹出一个大的悬浮窗,可以一键加速。好,我们现在就来模拟实现一下类似的效果。 先谈一下基本的实现原理,这种桌面悬浮窗的效果很类似与Widget,但是它比Widget要灵活的多。主要是通过WindowManager这个类来实现
星辰之力 阅读(7) |
摘要: 在做项目时想增加点动感,于是就有如下效果: 实现起来也很简单,通过属性动画和recyclerview 滑动结合就很好实现了。 通过给recycleview添加一个滑动监听:通过滚动的差值来处理动画 两个动画如下: 动画中给定了移出屏幕和显示在屏幕的距离是100,这个值并不是那么确定性,项目中需要通过
星辰之力 阅读(13) |
摘要: 当我们在手机上安装360安全卫士时,手机屏幕上时刻都会出现一个小浮动窗口,点击该浮动窗口可跳转到安全卫士的操作界面,而且该浮动窗口不受其他activity的覆盖影响仍然可见(多米音乐也有相关的和主界面交互的悬浮小窗口)。它能悬浮在手机桌面,且不受Activity界面的影响,说明该悬浮窗口是不隶属于A
星辰之力 阅读(14) |
摘要: 第一种 第二种 第一种实现方法 xml布局 Activity调用 view指的是布局 第二种实现方法 xml布局 自定义控件 com.ui.view.DragFrameLayout Activity调用方法
星辰之力 阅读(31) |
摘要: 由于最近小蔡的手机音量键坏了,调节音量有点麻烦,突发奇想,想自己实现一个快捷键来调节音量。在忘上参考了一些代码,总结出一般本章,分享给大家。 首先 按钮要想实现悬浮在任何界面,那么必须是要写在服务里面的,使用定时器,2.5s不触摸后,背景变淡 下载地址 清单文件中加权限 然后再Activity里启动
星辰之力 阅读(65) |
摘要: 主要还是用到了WindowManager对桌面悬浮进行管理. 需要一个火箭的悬浮窗 一个发射台悬浮窗 ,判断火箭是否放到了发射台,如果放上了,则使用AsyTask 慢慢将火箭的图片往上移.结束后., 返回原位. 1.打开activity_main.xml &RelativeLayout xmlns:
星辰之力 阅读(9) |
摘要: 转载请标明出处:http://www.jianshu.com/u/a5ad093cffe8 效果图如下: 图片.png 图片.png 实现当前这种类似的效果 (360小球 悬浮桌面差不错类似)。第一次接触到的童鞋就像我一样懵逼(研究过得童鞋,就知道,实现这种悬浮窗体,是需要添加悬浮窗 设置权限的,我
星辰之力 阅读(20) |
摘要: 在页面上随意拖动的按钮 按钮布局: 按钮背景设置: 效果图: 效果图: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zuo_er_lyf/article/details/ 版权声明:本文为博主原创文章,未经博主允许不得转载。 ht
星辰之力 阅读(52) |
摘要: 项目准备 信令服务器代码:https://github.com/matthewYang92/WebRtcServer(代码改自ProjectRTC) 安装Node.js 进入项目根目录,命令行:npm install 命令行:node app.js 打开浏览器输入127.0.0.1:3000,见到W
星辰之力 阅读(16) |
摘要: 我在华为P6测试机上测试,发现底部的三个虚拟按钮遮挡了我的应用。类似效果如:https://www.zhihu.com/question/#answer- 解决方案 在Activity onCreate后,记得不要添加下面这句 需要透明导航栏就加
星辰之力 阅读(56) |
摘要: 这个问题来来回回困扰了我很久,一直没能妥善解决。 场景1:华为手机遮挡了屏幕底部。 场景2:进入应用时,虚拟键自动缩回,留下空白区域。 需求: 需要安卓能自适应底部虚拟按键,用户隐藏虚拟按键时应用要占满整个屏幕,当用户启用虚拟键时,应用能往上收缩,等于是被底部虚拟按键顶上来。 需求很简单,实现起来却
星辰之力 阅读(23) |
摘要: 这几天的任务是将mapbox的工程合到程序中去,但是合并过程却出现了问题 合并方法: 在app的build.gradle中添加 但是合并后会报错: 这个错误是由于jar包冲突,解决方法如下: 方法一:找到冲突包,将冲突包删除,一般冲突包为'com.android.support:appcompat-
星辰之力 阅读(18) |
摘要: 当Android App中的方法数超过65535时,如果往下兼容到低版本设备时,就会报编译错误: 原因是Android系统定义总方法数是一个short int,short int 最大值为65536。解决这个问题的方案是: 在Android的模块gradle文件的defaultConfig默认配置里
星辰之力 阅读(149) |
摘要: 先找到AndroidStudio配置的SDK路径; 在SDK的/tools/路径下【就是和配置ADB一样的路径】有个monitor.bat 的批处理文件; 鼠标连续点击两下monitor.bat这个批处理文件,在屏幕上会打开一个类似CMD的命令行中输入板,然后迅速自动关闭; 坐等1到3秒就会打开DD
星辰之力 阅读(37) |
摘要: 首先说明:该文章不是大家说的沉浸式状态栏,网上沉浸式状态栏的博客很多,搜索就有了! 该篇博客的主要目的就是为了将图片显示在状态栏上,让APP看起来更有型!如下图所示: 界面 这个界面的布局就是coordinatorLayout + CollapsingToolbarLayout实现的效果,将背景图片
星辰之力 阅读(27) |
摘要: 在面对选择国家地区,选择手机号码区号等信息的时候,常常我们是读取已存好的数据,我现在读取的就是excel里面的数据,所以在此记录下读取的方法以及注意点。 下面就是读取国际地区手机区号的数据效果图: excel表格里面数据 1.准备工作 1.1 excel 表格 我在assets 下放的的excel
星辰之力 阅读(12) |
摘要: public static void save() { String dbpath = &/data/data/tl.cac.view/databases/& +&afinal.db&; boolean success=copyFile(dbpath, Environment.getExternalStorageDirectory() + &/& ...
星辰之力 阅读(34) |
摘要: 最近项目中需要用到加解密功能,言外之意就是不想让人家在反编译后通过不走心就能获取文件里一些看似有用的信息,但考虑到加解密的简单实现,这里并不使用AES或DES加解密 为了对android中assets文件里的数据加密,我决定自己动手丰衣足食。 首先我们需要一个配置文件命名为config.proper
星辰之力 阅读(91) |
摘要: Android中当item数量超过一定大小时,将RecyclerView高度固定 方法1 该方法只适用于item高度固定,在本例中使用34dp来设置相应的item高度,故而可以通过乘上相应的item数来计算RecyclerView的高度。 方法2 在使用这种方式时,有一点需要注意的是,不要将Recy
星辰之力 阅读(19) |
摘要: 文字识别一般都用的tesseract-ocr。 GitHub:https://github.com/tesseract-ocr/tesseract 而Android对应的比较推荐的有个tess-two。 GitHub:https://github.com/rmtheis/tess-two Demo的
星辰之力 阅读(19) |
摘要: 顶部下拉时背景图形成视差效果 上拉时标题栏透明切换显示 底部实现TabLayout+ViewPager+Fragment+RecyclerView NestedScrollView+ViewPager的滑动冲突解决 NestedScrollView+RecyclerView滑动冲突的解决
星辰之力 阅读(13) |
摘要: excelPanel 二维RecyclerView。不仅可以加载历史数据,而且可以加载未来的数据。 包括在您的项目中 excelPanel 二维RecyclerView。不仅可以加载历史数据,而且可以加载未来的数据。 包括在您的项目中
星辰之力 阅读(23) |
摘要: 我用recyclerView的时候设置LayoutManager为Grid,添加decoration为Grid,作为二级列表时,多次点击一级列表来跳转的时候,两张图之间的间隙在逐渐变大,后来发现是因为多次初始化Adaper的缘故。 这是有bug的代码,每次都创建adapter导致间隙变大 解决办法
星辰之力 阅读(11) |
摘要: Uri.parse(&android.resource://& + getApplicationContext().getPackageName() + &/& +R.mipmap.luo)
星辰之力 阅读(26) |
摘要: 前些天看到有人在论坛上问这种效果怎么实现,没写过也没用过这个功能,网上查了一下,大多是使用ViewPager+GridView或者HorizontalScrollView+GridView实现,不过貌似有点复杂,太懒,没仔细看。这两天学习RecyclerView的使用(网上有很多文章,建议大家阅读本
星辰之力 阅读(170) |
摘要: 使用RecyclerView设置间距,需要重写RecyclerView.ItemDecoration这个类。有如下的效果图需要实现,间距只有中间的格子和底部的格式之间有。 Paste_Image.png 实现方法很简单,因为这个效果是每一行有3个格子,只要每行的第一个格式左边间距为0即可以。其他都设
星辰之力 阅读(27) |
星辰之力 阅读(69) |
摘要: 最近几天在做文件上传的时候,想在自定义Adapter中启动activity时也返回Intent数据,于是想到了用startActivityForResult,可是用mContext怎么也调不出这个方法,只能调用startActivity这个方法,于是在网上搜一下,可以利用一个方式可以间接的解决这个问
星辰之力 阅读(8) |
摘要: 最近学习recyclerview 遇到的问题 1.宽度不适配 正确写法 错误写法 2 只显示一行 itemView中父 view 写成wrap_
星辰之力 阅读(23) |
摘要: 转载请注明出处:http://blog.csdn.net/woshizisezise/article/details/ 这两天产品经理向我丢来一个新需求,需要在项目里添加一个视频录制的功能,正好是我没做过的,于是研究了一番。在网上搜索了一些案例,但是都是不完整的,要不就是分辨率有问题
星辰之力 阅读(46) |
摘要: 本文章只写了个类似微信的录制视频的按钮,效果图如下: 一、主要的功能: 1.长按显示进度条,单击事件,录制完成回调 2.最大时间和最小时间控制 3.进度条宽度,颜色设置 二、实现思路 该自定义View主要有三块组成,白色内圆,浅色大圆,圆形进度条;长按一段时间,内圆缩小0.75倍,外圆放大1.33倍
星辰之力 阅读(31) |
摘要: 朋友圈实现原理 我们使用 Android Device Monitor 来分析朋友圈发布图片的界面实现原理。如果需要分析其他应用的界面实现也是采用这种方法哦。 打开 Android Device Monitor,选择DDMS,连接上真机,区域2 就会显示出当前手机正在运行的应用,再点击 区域1,然后
星辰之力 阅读(14) |
摘要: github地址(欢迎下载Demo) https://github.com/zhouxu88/WXCircleAddPic 老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧,先把工作完成了,再看也来得及,是吧! 仿微信添加图片.gif 1、首先这是用GridView实现的
星辰之力 阅读(16) |
摘要: 1、所谓无图无真相,先上效果图。我们要实现的就是中间那个录音的按钮,周边会显示一圈音量大小的波形 2、VolumCircleBar继承自View,我们进行了自定义,代码如下
星辰之力 阅读(16) |
摘要: 在使用RecyclerView控件时,上下拖动控件时的时候,需要实时的隐藏与显示部分控件,已到达很好的用户体验. 原理很简单,当RecyclerView拖动至最上层时显示控件,当RecyclerView.开始向下拖动时,隐藏控件,直接上代码: 定义两个动画: 初始化: RecyclerView控件初
星辰之力 阅读(93) |
摘要: 当RecyclerView适配显示不全时可以单独给其嵌套一个相对布局!!!(必须是相对布局),这样在曲面屏手机就可以全部显示出来如下图所示
星辰之力 阅读(12) |
摘要: 解决方案:可以在setVisibility()之前调用clearAnimation()方法清除掉动画,或setFillAfter(false)(时间上该函数内部也调用了clearAnimation())。 解决方案:可以在setVisibility()之前调用clearAnimation()方法清除
星辰之力 阅读(27) |
摘要: 使用 第一种方案:自定义控件 1.在布局中使用 2.在Activity中获取控件使用 3.CountDownTextView.java 第二种方案:工具类 1.在activity中使用 2.CountDownUtil.java TextView textView = (TextView) findV
星辰之力 阅读(15) |
摘要: Android有四大组件,其中包括service和activity,那么在使用的过程中,我们最常遇到的问题是他们之间的通信问题。 1.首先Activity调用Service 这个是比较基础的,它有两种常见的方法; 1. 通过Intent 可以指定package name和class name的方式来
星辰之力 阅读(51) |
摘要: 我用在我的 style.xml 作为主要应用程序主题 并使用相同的所有 AlertDialogs 白色/蓝色的颜色。但我有活动,当 Dialog parent=&android:Theme.Dialog& 和此框使用黑暗的主题。我要如何改变它对 AppCompat.Light 的主题?我试过 The
星辰之力 阅读(29) |
摘要: 在我们使用Dialog时,如果需要用到很多自己设计的控件,虽然可以让弹出框显示出我们需要的界面,但却无法找到地方完成控制代码的编写,如何解决这个问题呢,我们可以将Activity伪装成Dialog弹出框,这样即显示了界面,在Activity里写控制代码也是大家的拿手好戏了,现在我就来抛砖引玉说说简单
星辰之力 阅读(50) |
摘要: 前几天看到了有人在android5.0上实现了如下图一样的效果,我自己就去搜了下。参考了国外一篇文章和国内的一篇文章,最终实现了想要的效果。具体参考的网址我已经贴到文章末尾,大家可以去英文的那个网站看看,讲解的很傻瓜化。 好,下面我们来看看如何实现如上面右图一样的效果。 1.原理分析 (1)我们是否
星辰之力 阅读(167) |
摘要: 项目GitHub地址https://github.com/tikeyc/TNinePlaceGridView_Android https://github.com/tikeyc/TikeycAndroid 玩Android不久,根据iOS实现思路https://github.com/tikeyc/T
星辰之力 阅读(17) |
摘要: 今天在AndroidStudio中导入了一个项目,编译的时候没有什么问题,但是在执行Rebuild Project 和 Build APK(s)时报错了,提示: Error:Execution failed for task ':app:transformDexArchiveWithExternal
星辰之力 阅读(41) |
摘要: 本文将介绍如何通过retrofit库post一串json格式的数据。首先post的json数据格式如下: 通过安装android studio gsonformat插件,根据上面的json格式自动生成一个Bean类,本文命名为FlyRouteBean 然后就来建立接口了,其内容如下: 接下来就是提交
星辰之力 阅读(24) |
摘要: A/art: art/runtime/jdwp/jdwp_event.cc:661] Check failed: Thread::Current() != GetDebugThread() (Thread::Current()=0xabb30400, GetDebugThread()=0xabb30400) Expected event thread A/art: art/runtime/run...
星辰之力 阅读(133) |
摘要: 假如我们有一段json串,该json串是由一系列结构相同的数据集合组成,如下: 现在,想要转换成excel表单: 针对该需求,于是在网上找了个excel工具包。 现在将实现代码贴出来,希望给正有此需求的同仁些许帮助。 执行main方法,得到/var/tmp/api-sources.xls文件。和预想
星辰之力 阅读(22) |
摘要: 1.使用js脚本批量下载慕课网视频 慕课网(http://www.imooc.com/)上有很多不错的视频,当然我不是来给慕课网打广告的,我本人学习过很多慕课网上的免费的视频。 在线看如果网速慢时,可能会有卡顿,没网时无法观看。所有说下载到本地,离线看视频是非常不错的选择。慕课网上没提供下载视频的入
星辰之力 阅读(102) |
摘要: 支付宝支付-APP支付服务端详解
星辰之力 阅读(12) |
摘要: Android开发笔记(一百四十三)任务调度JobScheduler Android开发笔记(一百四十三)任务调度JobScheduler Android开发笔记(一百四十三)任务调度JobScheduler
星辰之力 阅读(8) |
摘要: Android8.0 启动后台Service
星辰之力 阅读(28) |
摘要: Android MVP+Retrofit+dagger2+RxAndroid框架整合
星辰之力 阅读(24) |
摘要: 常用的ADB命令 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号 4. 启
星辰之力 阅读(18) |
摘要: 【视频音频】雷霄骅开源视音频项目汇总
星辰之力 阅读(22) |
摘要: LitePal for Android LitePal是一个Android开源库,它使开发者使用SQLite数据库变得非常容易。 你可以不用写一句SQL语句就可以完成大部分数据库操作,包括创建表,更新表,约束操作,聚合功能等等。LitePal的安装也相当简单,5分钟之内就可以将它集成到你的工程里。
星辰之力 阅读(112) |
摘要: 虽然使用AndroidStudio(以下简称as)开发并使用git管理代码已经有很长时间,但是第一次提交项目到git依然会很不顺利,网上的文章或许因为所使用版本比较老,并不一定完全凑效,因此写此笔记做下整理。 首先准备工作git客户端和as客户端是不可少的工具,本次使用的是as2.2.2和git2.
星辰之力 阅读(183) |
摘要: Android框架之路——Fragmentation的使用(流式交互Demo)
星辰之力 阅读(15) |
摘要: Android Studio 升级到3.0后出现各种编译问题,其中有一个问题是关于资源找不到的问题,百度了半天,也没有相关的文章 C:\Users.gradle\caches\transforms-1\files-1.1***-release.aar\be5ab119cbd836da
星辰之力 阅读(29) |
摘要: 前言:从Eclipse转到Android Studio之后,一开始把keymap设置成Eclipse,却发现有些常用的快捷键都失效了,大概是冲突了。想了下,觉得与其重新设置快捷键,不如去适应AS的快捷键,毕竟听说AS新增了好些有用的快捷键。于是把keymap又改回Default。事实也证明,熟悉起来
星辰之力 阅读(24) |
摘要: Android开发,本身并不是一个可以走得多远的方向,它只是一个平台,提供了许多封装好的API,让大家能够快速开发出针对特定业务的应用。 真正有价值的地方就在于Android与具体的业务方向结合,比如: Android与音视频技术,Android与智能硬件交互,Android与前端技术的融合与探索,
星辰之力 阅读(23) |
摘要: 在app的build中
星辰之力 阅读(219) |
摘要: Android原生项目集成React Native
星辰之力 阅读(15) |
摘要: Android vector标签 PathData 画图超详解
星辰之力 阅读(11) |
摘要: Android BottomNavigationBar底部导航控制器的使用
星辰之力 阅读(14) |
摘要: Android原生项目集成React Native
星辰之力 阅读(13) |
摘要: 1、Android Studio Terminal 命令行无效的问题 在Android Studio中自带了命令行终端Terminal,但是我们在输入命令时经常会发现:“XXX”不是内部或外部命令,也不是可运行程序或批处理文件。 如下图: 一般这种情况都是系统环境变量中没有配置相应工具的路径,那么我
星辰之力 阅读(13) |
摘要: Android CoordinatorLayout使用
星辰之力 阅读(19) |
摘要: 26款优秀的Android逆向工程工具 26款优秀的Android逆向工程工具 26款优秀的Android逆向工程工具
星辰之力 阅读(25) |
摘要: XDroidMvp是XDroidAndroid快速开发框架的MVP版本,其使用方式类似于XDroid,大部分源码也来自XDroid。 XDroidMvp主要会有这些特性: 无需写Contract! 无需写Present接口! 无需写View接口! 新增: 保留: Get Started 使用: 1.
星辰之力 阅读(270) |
摘要: http://blog.csdn.net/jiang89125/article/details/
星辰之力 阅读(22) |
摘要: 开源框架BaseRecyclerViewAdapterHelper使用——RecyclerView万能适配器
星辰之力 阅读(22) |
摘要: 1、首先,进入阿里的矢量图标库,在这个图标库里面可以找到很多图片资源,当然了需要登录才能下载或者使用,用GitHub账号或者新浪微博账号登录都可以 2、登录以后,可以搜索自己需要的资源,然后直接下载使用,或者建立图标库然后再使用,例如这里以删除的图标为例 a) 搜索删除图标 b) 选择需要的图标,然
星辰之力 阅读(32) |
摘要: 由于工作要求最近在使用GridView完成图片的批量上传功能,我的例子当中包含仿微信图片上传、拍照、本地选择、相片裁剪等功能,如果有需要的朋友可以看一下,希望我的实际经验能对您有所帮助。 直接上图,下面的图片就是点击“加号”后弹出的对话框,通过对话框可以根据自己需求进行相片选择。 项目结构: 下面直
星辰之力 阅读(26) |
摘要: 前几天开发安卓要用到文件批量上传,就是上传图片,视频,文件之类的用到Xutil3框架,用
星辰之力 阅读(20) |
摘要: 超详细Android面试的准备与经历分享 | 百度(offer)
星辰之力 阅读(31) |
摘要: 学习Kotlin吗?
星辰之力 阅读(18) |
摘要: LeakCanary
星辰之力 阅读(11) |
摘要: 可能是迄今为止最好的 GitHub 代码浏览插件
星辰之力 阅读(15) |
摘要: Android 性能优化:使用 TraceView 找到卡顿的元凶
星辰之力 阅读(14) |
摘要: 如何在一个应用中追踪和定位性能问题,甚至在没有它的源代码的情况下?? “Profile GPU rendering”(GPU渲染分析),一款Android4.1所引入的工具。你可以在“设置”应用的“开发者选项”中找到这个工具。 如果开发者选项在你的Android4.2设备上不可见,你可以在“关于手机
星辰之力 阅读(18) |
摘要: Android下玩JNI的新老三种姿势
星辰之力 阅读(18) |
摘要: AndroidStudio 插件 之 Findbugs 安装与简单使用教程
星辰之力 阅读(10) |
摘要: 打造一个高逼格的android开源项目 | 小白全攻略
星辰之力 阅读(17) |
摘要: 开发App没有数据源?不存在的!国内值得关注的API集合
星辰之力 阅读(12) |
摘要: 必知必会 | Android 性能优化的方面方面都在这儿
星辰之力 阅读(7) |
摘要: 送你几个用起来很爽的Studio插件
星辰之力 阅读(15) |
摘要: 必会 | 手把手带你体验Android Studio 3.0的新功能
星辰之力 阅读(14) |
摘要: 手把手教你在Android Studio 3.0上分析内存泄漏
星辰之力 阅读(23) |
摘要: Android APP 性能优化的一些思考
星辰之力 阅读(10) |
摘要: 开发SDK和平时写代码体验不同吗? | 经验分享
星辰之力 阅读(11) |
摘要: android用讯飞实现TTS语音合成 实现中文版
星辰之力 阅读(15) |
摘要: 这句子的话意思也很容易理解,“接收者类已经被注册为事件类了”。 之前我是这么写: 事件注册是写在onStart()里面的 来看一下Activity的生命周期: 解决方式:
星辰之力 阅读(23) |
摘要: 使用StaggeredGridLayoutManager实现交错式网格布局
星辰之力 阅读(21) |
摘要: RecyclerView使用StaggeredGridLayoutManager布局的粘性头部实现
星辰之力 阅读(27) |
摘要: 最近在使用ActionBar的时候,如果使用的是最新版V7包或者最新的SDK平台,就会发现 ActionBar的导航功能已经不建议使用了。主要的原因是ActionBar自带Tab导航自定义性差(只能通过style修改),而且不再建议使用ActionBar。SlidingTabLayout就是Acti
星辰之力 阅读(20) |
摘要: Rxjava2的学习与总结
星辰之力 阅读(12) |
摘要: 在做一款聊天软件,其中聊天界面需要发送表情,而表情都是动图,在安卓中想要显示动图,就要借助第三方框架,我选的是pl.droidsonroids.gif.GifImageView。 使用方法如下:你在github上下载了android-gif-drawable.aar后,解压后,将jni文件下的所有文
星辰之力 阅读(57) |
摘要: Glide是谷歌推荐的一款加载图片的第三方框架,对内存优化更好,更省资源,他的众多好处,我就不一一描述了,有兴趣的朋友可以百度一下,介绍的还是挺详细的。 今天主要给大家介绍一下关于怎么获取Glide的图片缓存和清除图片缓存,其实很简单,下面是写的一个工具类,简单易懂,便捷好用!
星辰之力 阅读(117) |
摘要: EventBus3.0详解
星辰之力 阅读(10) |
摘要: bitmap的六种压缩方式,Android图片压缩
星辰之力 阅读(13) |
摘要: 1、使用Bitmap将自身保存为文件 2、BitmapFactory从File中解析图片并防止OOM
星辰之力 阅读(55) |
摘要: Android性能优化之Bitmap导致的内存溢出
星辰之力 阅读(10) |
摘要: 如果图片过大,可能导致Bitmap对象装不下图片解决办法: Bitmap对象保存味图片文件
星辰之力 阅读(27) |
摘要: 内存泄露作业
星辰之力 阅读(9) |
摘要: 今天在做拍照上传的时候遇到个问题,根据路径获取Bitmap 失败,一直返回空,以为这个路径获取Bitmap代码久经考验,不怀疑它,找参数传入是否正确,初步怀疑是 filePath 没传进去,打印 filePath. 但是发现 filePath 有值,起了怪了,一步步Debug,发现每一步都是正确的,
星辰之力 阅读(50) |
摘要: 尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存。因此,改用先通过BitmapFactory
星辰之力 阅读(17) |
摘要: 从sd卡里读出图片后有时调用setImageBitmap(bitmap)方法会显示不出图片,仔细考虑过后原来是加载的图片过大导致的,解决办法为: 这样返回的bitmap就可以被显示出来了。
星辰之力 阅读(530) |
摘要: https://www.jianshu.com/p/31e
星辰之力 阅读(13) |
摘要: 本文介绍EventBus的基本使用,以及用于Fragment和Activity之间通信。 github地址: https://github.com/greenrobot/EventBus 版本是 EventBus-2.4.0 release EventBus是基于订阅和发布的一种通信机制,使用流程如
星辰之力 阅读(108) |
摘要: 在android应用中如果要对多个EditText控件进行监听的话,比如说:只有在用户名和密码的输入都不为空的情况下,button按钮才显示有效,可以自己构造一个TextChange的类,实现一个TextWatcher接口,里面有三个函数可以实现对所有text的监听。
星辰之力 阅读(104) |
摘要: 1.今天在升级基于RxJava2+Retrofit+RxCache的网络请求封装这套框架的过程中遇到一个问题,当我使用Post动态传入url时,服务器一直返回http404 ,我的请求地址末端是这样的: query?key=7c2d1da3bfeedcba Retro
星辰之力 阅读(55) |
摘要: 语音朗读,这是一个很好的功能,可以实现一些客户的特殊要求。在Android 实现主意功能只需要几段简单的代码即可完成。 在Android 中使用语音朗读功能 只需要使用此类 TextToSpeech ,该类实现了很多关于语音的功能,使用该类必须为其设置语言,支持语言列表位于java.util类里的L
星辰之力 阅读(265) |
摘要: 最近作者又碰到因为android 7.0 引起的兼容问题了。 这个file文件直接非常简单的转换成&file://XXX/XXX/XXX&的uri格式 当把targetSdkVersion指定成24及之上并且在API&=24的设备上运行时。这种方式则会出现FileUriExposedExceptio
星辰之力 阅读(436) |
摘要: http://www.jb51.net/article/77223.htm https://www.cnblogs.com/breeze1988/p/4019510.html
星辰之力 阅读(13) |
摘要: Toolbar如何使用想必大家清楚地很,实际开发中标题栏的样式各色各样,因此其基本样式便不能满足我们的需求,这就需要我们自定义布局。打开ToolBar源码我们发现它继承ViewGroup,这就表示我们可以把它当做一个存放控件的容器。 结果:左边出现一片空白 查找源码发现: 是这个contentIns
星辰之力 阅读(36) |
摘要: 在做android解析服务器传来的json时遇到的错误。 服务器传来的数据格式 之前对应的代码如下: 以上解析方法是错误的,修改如下代码:
星辰之力 阅读(467) |
摘要: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/11.html
星辰之力 阅读(17) |
摘要: https://www.jianshu.com/p/6d1ef9f43cdc
星辰之力 阅读(16) |
摘要: 下载:http://code.google.com/p/gifview/downloads/list 简介:android中现在没有直接显示gif的view,只能通过mediaplay来显示,且还常常不能正常显示出来,为此写了这个gifview,其用法和imageview一样 使用方法: 1-把Gi
星辰之力 阅读(30) |
摘要: 博客地址:https://luhaoaimama1.github.io//rxjava/
星辰之力 阅读(12) |
摘要: 学习Django中:试着着写一个用户注册登录系统,开始搞事情 O(∩_∩)O哈哈~ Ubuntu python 2.7.12 Django 1.10.4 IDE:Pycharm Bootstrap(其实没怎么用~~) 新建项目:(我是直接用pycharm直接生成的) 使用终端: (创建项目)djan
星辰之力 阅读(420) |
摘要: 问题背景: 使用pycharm创建完成django项目(项目名称为:mydjangopro,app名称为my_blog) , 本想登录后台直接输入地址:http://127.0.0.1:8000/admin后,登录页面出现了,随便(username:admin,password:admin)输入了账
星辰之力 阅读(43) |
摘要: pycharm是python的一个商业的集成开发工具,本人感觉做python开发还是很好用的,django是一个很流行的python web开源框架,本文就是使用pycharm+django来开发python web项目,下面直接开始 1.安装pytcharm和django,关于安装没有什么好说的,
星辰之力 阅读(158) |
摘要: package com.studychen.seenews. import android.content.C /** * Created by tomchen on 2/26/16. */ public class GetTimeAgo { private static final int SECOND_MILLIS = 1000; priva...
星辰之力 阅读(29) |
摘要: Fresco是一个第三方库,github官网地址:https://github.com/facebook/fresco 百学须先立志—学前须知: 在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该呈现正在加载时的图像,当图片加载失败时
星辰之力 阅读(145) |
摘要: 浅谈 RxAndroid + Retrofit + Databinding
星辰之力 阅读(7) |
摘要: 导航菜单的制作方式多种多样,网上也有各种炫酷效果的具体实现方式,那么今天我主要是想来说说Google在Android5.0之后推出的NavigationView的具体使用方式。 NavigationView在很多App上都已经可以看到其效果图,国内的比如知乎(侧拉菜单滑出来的那一部分属于Naviga
星辰之力 阅读(94) |
摘要: http://blog.csdn.net/qq_/article/details/
星辰之力 阅读(11) |
摘要: AS报错:Could not find com.afollestad:material-dialogs:0.7.6.0 网上没有解决方案; 解决: 将用:
星辰之力 阅读(71) |
摘要: 背景: 同事把Android项目直接考给了我。。。我在Android Studio上运行,然后提示: Error:Failed to resolve: com.afollestad:material-dialogs:0.7.6.0 一直以为是本地依赖没有加载。。使用最新的material-dialo
星辰之力 阅读(31) |
摘要: Android中出现Error:In (declare-styleable) FontFamilyFont, unable to find attribute android:font 解决办法,今天由于项目要用到 support-v4 包,所以就导入v4 包到项目中,可是导入之后就出现 Error
星辰之力 阅读(350) |
摘要: 我目前正在做一个Android应用程序的DICOM 继code打开图片DROM RES /绘制的“ussual”图像格式,但它不与.dcm工作 在主要活动: 在此先感谢! 解决方案 DICOM是一种普通的容器。里面DICOM文件,你可以找到一个巨大的各种图像格式。从为RGB灰度的,由单一帧多帧的,用
星辰之力 阅读(28) |
摘要: 体验最新版AndroidStudio3.0 Canary 8的时候,发现之前项目的butter knife报错,用到注解的应该都会报错 Error:Execution failed for task ':app:javaPreCompileDebug'. & Annotation processors must be explicitly declared now. The following...
星辰之力 阅读(50) |
摘要: 在之前呢,我们经常会有这种需求,比如在某个activity,或者某个fragment里面,我们需要查找某个数据源,并且显示出来,当数据源自己更新的时候,界面也要及时响应。 当然咯,查找数据这个过程可能很短,但是也可能很漫长,为了避免anr,我们都是开启一个子线程去查找,然后通过handler来更新我
星辰之力 阅读(25) |
摘要: Android实现RecyclerView的下拉刷新和上拉加载更多
星辰之力 阅读(30) |
摘要: Android之ViewFlipper的简单使用
星辰之力 阅读(8) |
摘要: 在淘宝App的首页中间位置,有一块小小的地方在不知疲倦地循坏滚动着头条标题(见下图的红框区域),这样的设计无疑能够在有限的手机屏幕上展示更丰富的内容。而实现这一功能需要用到的控件就是我在上一篇文章中提到的ViewFlipper控件(详见“参考文章”)。在网上看到一篇博客是用自定义ViewFlippe
星辰之力 阅读(33) |
摘要: 今天使用ViewPager发现setOnPageChangeListener的方法居然过期了,而且AS编译不通过了,最后查了一下原来把set换成add了,代码如下: setOnPageChangeListener addOnPageChangeListener
星辰之力 阅读(21) |
摘要: 今天在《第一行代码》上学习做自定义标题栏,需要将系统自带的标题栏隐藏掉,使用自定义的标题栏,结果发现,requestWindowFeature(Window.FEATURE_NO_TITLE); 这句代码无效,标题栏无法隐藏,可我以前都可以隐藏啊,今天怎么不可以了,最终发现是Activity的继承问
星辰之力 阅读(28) |
摘要: 1) ViewPager提供了左右滑动切换页面的方法,但是它所提供的标题只是无语,估计没有真正的项目会照搬拿过来;并且它只能一页一页滑,我想直接查看最后一页要滑半天; 2) 看了腾讯新闻客户端感觉体验很好,所以就仿着写了,因为只是做个demo供大家交流也是给自己做个笔记,所以功能实现就行demo比较
星辰之力 阅读(195) |
摘要: 好久没逛简书了。这周公司的项目也已经愉快的迭代了新版本,对于之前一直存留的东西一直没怎么梳理,今天想说说这两年特别火的网络框架。okhttp我想大部分Android开发者都不陌生,因为它的到来。是我们Android开发者的一个福音,像之前我们一直都在用volley网络请求 、android-asyn
星辰之力 阅读(97) |
摘要: 网络请求框架总结1.xutils 此框架庞大而周全,这个框架可以网络请求,同时可以图片加载,又可以数据存储,又可以 View 注解,使用这种框架很方便,这样会使得你整个项目对它依赖性太强,万一以后这个库不维护了,或者中间某个模块出问题了,这个影响非常大,所以在项目开发时,一般会更喜欢选择专注某一领域
星辰之力 阅读(39) |
摘要: 修改源码自定义SwipeRefreshLayout样式——高仿微信朋友圈下拉刷新
星辰之力 阅读(52) |
摘要: 这是一个下拉刷新的控件,它比SwipeRefreshLayout更加漂亮和强大。它易于使用并且支持API LEVEL &= 8。希望你能够喜欢。 Now let me talk about MaterialRefreshLayout of function (1)It can be done lik
星辰之力 阅读(179) |
摘要: 问题:Error:Unable to find method 'com.android.build.gradle.api.BaseVariant.getOutputs()Ljava/util/L'.Possible causes for this unexpected error inclu
星辰之力 阅读(42) |
摘要: 浅谈 RxAndroid + Retrofit + Databinding
星辰之力 阅读(11) |
摘要: https://www3.ntu.edu.sg/home/ehchua/programming/android/Android_3D.html
星辰之力 阅读(11) |
摘要: 原文地址:http://blog.csdn.net/maplejaw_/article/details/ Observable 在RxJava1.x中,最熟悉的莫过于Observable这个类了,笔者刚使用RxJava2.x时,创建一个Observable后,顿时是懵逼的。因为我们熟
星辰之力 阅读(395) |
摘要: 简书地址 http://www.jianshu.com/p/2badfbb3a33b RxJava 2.X + Retrofit + OkHttp 简单示例点这里 library依赖变化 package变化 变动主要为rx.xxx --& io.reactivex.xxx null值 RxJava
星辰之力 阅读(291) |
摘要: 网络请求有个问题就是取消操作。 在Rxjava1中,调用subscribe之后会返回Subscription,然后利用CompositeSubscription进行统一管理。 在Rxjava2中,调用subscribe之后,返回的则是Disposable,Disposable同样用Composite
星辰之力 阅读(116) |
摘要: DICOM:DICOM标准学习路线图(初稿)
星辰之力 阅读(11) |
摘要: 一、场景(例如:购物车) 1、当我们需要以列表样式管理某些数据时,可能需要列表项的某个字段可编辑 2、编辑Item上的某个字段后可能还要更新相关字段的值 二、可能遇到的问题 1、列表滑动导致输入框中的数据错位(或者焦点错位) 2、无法更新Item上相关的字段项的值 3、监听输入框文本更改时陷入死循环
星辰之力 阅读(630) |
摘要: 1. Introduction Read 2. Getting Started with 3D Graphics on Android 2.1 OpenGL ES Android supports OpenGL ES in packages android.opengl, javax.microed
星辰之力 阅读(17) |
摘要: 一、概念 在Android中要想实现3D效果,第一个想到的应该就是OpenGL ES,因为在很多基础教材中几乎都提到了它。但是其使用起来还是稍微麻烦一些,而且它也主要用在游戏方面,那在应用方面有没有更好的选择呢?答案是肯定的,使用Camera类就可以完成3D效果。它有旋转、平移的一系列方法,实际上都
星辰之力 阅读(17) |
摘要: 关键:public final void notifyItemChanged(int position, Object payload) RecyclerView局部刷新大家都遇到过,有时候还说会遇见图片闪烁的问题。 优化之前的效果: 优化之后的效果: 如果想单独更新一个item,我们通常会这样做,
星辰之力 阅读(619) |
摘要: 使用ViewHolder来刷新某项数据,而不用每次都全部刷新数据。 继承BaseAdapter,新建ViewHolder类。 在Activity中,调用updateView()方法,刷新数据。 给出布局文件:
星辰之力 阅读(15) |
摘要: 在之前呢,我们经常会有这种需求,比如在某个activity,或者某个fragment里面,我们需要查找某个数据源,并且显示出来,当数据源自己更新的时候,界面也要及时响应。 当然咯,查找数据这个过程可能很短,但是也可能很漫长,为了避免anr,我们都是开启一个子线程去查找,然后通过handler来更新我
星辰之力 阅读(42) |
摘要: 这一系列博文都是:(android高仿系列)今日头条 --新闻阅读器 (一) 开发中碰到问题之后实现的,觉得可能有的开发者用的到或则希望独立成一个小功能DEMO,所以就放出来这么一个DEMO。 原本觉得是最后完成后发网站客户端的,可是这样体现不出一个功能一个功能的分析实现效果,而且周期时间长,所以就
星辰之力 阅读(138) |
摘要: TabLayout + viewpager 其中viewpager的适配器要继承FragmentPagerAdapter,要实现动态更新,最主要的是适配器的写法,要在数据发生变化之后清除FragmentManager的缓存,然后重新生成抬头以及viewpager里面的Fragment,详细可以搜索”viewpager中动态添加、删除Fragment“
星辰之力 阅读(215) |
摘要: https://segmentfault.com/a/7941
星辰之力 阅读(38) |
摘要: 英文原文:https://github.com/ReactiveX/RxJava/wiki/Backpressure Backpressure(背压、反压力) 在rxjava中会经常遇到一种情况就是被观察者发送消息太快以至于它的操作符或者订阅者不能及时处理相关的消息。那么随之而来的就是如何处理这些未
星辰之力 阅读(36) |
摘要: 问题描述:使用Glide加载RecyclerView的Item中的图片,RecyclerView使用了瀑布流展示图片,但是滚动时图片会不断的加载,并且大小位置都会改变,造成显示错乱。 解决方法:使用瀑布流,我们可以根据要展示的列数来将屏幕宽度等分,从而获得Item的宽度。知道了宽度,那么我们就可以使
星辰之力 阅读(244) |
摘要: 实现:使用onScrollStateChanged回调检测滚动状态,并在RecyclerViewAdapter内部设置类似isScrolling的状态值来控制网络图片的加载。 下面是代码举例: 具体的子Adapter实现: 在UI层进行监听:
星辰之力 阅读(707) |
摘要: RecyclerView 滑动时的优化处理 在滑动时停止加载图片,在滑动停止时开始加载图片,这里用了Glide.pause 和Glide.resume.这里为了避免重复设置增加开销,设置了一个标志变量来做判断。
星辰之力 阅读(222) |
摘要: 1、控制线程数量 + 数据分页加载2、重写onScrollStateChanged方法 这个我们后面再谈,下面先来看看RecyclerView控件的使用及我们为什么选择使用它 RecyclerView的使用 RecyclerView 位于package android.support.v7.widg
星辰之力 阅读(78) |
摘要: 学过android的人应该都知道Glide是一个无比强大的图片加载库,它内部已经提供了很好的缓存机制供我们选择,我们只需一个参数调用即可(DiskCacheStrategy()),而不必像Universal-Image-Loader类一样自己实现。正是因为它太好用了,导致我们很容易忽略一些重要的细节
星辰之力 阅读(993) |
摘要: 用JAVA相关类转换。代码如下:
星辰之力 阅读(40) |
摘要: LisviewPop.setOnDismissListener(new OnDismissListener() { @Override public void onDismiss() { //改变显示的按钮图片为正常状态 ...
星辰之力 阅读(29) |
摘要: 现在的开发我们基本上都是一个主activity中放多个fragment,点击返回按钮的时候,直接退出主activity,但是我们在fragment中经常会弹出例如popupWindow这样的布局,用户一般点击返回按钮的时候是想让弹窗消失,而不是退出应用。如果你直接退出应用这样的用户体验就非常的不好,
星辰之力 阅读(195) |
摘要: 使用情况: 在activity中,出现了popupwindow和dialog,这个时候,如果点击返回键,它们消失了,但是一些操作还在继续。如:1、进行耗时操作,出现dialog提醒用户等待,这时,按下返回键,dialog消失,但是,耗时操作还在继续。这是因为,dialog拦截了返回键,消费了它,让自
星辰之力 阅读(286) |
摘要: Android开发常用资料传送门
星辰之力 阅读(23) |
摘要: 服务端用 SRS(Simple Rtmp Server),在这里下载simple-rtmp-server需要Linux系统最好是Ubuntu,装个Ubuntu虚拟机就行了在Linux里,解压缩SRS 安装包,运行 & sudo ./INSTALL& sudo /etc/init.d/srs star
星辰之力 阅读(31) |
摘要: formatMsgTime (timespan) { var dateTime = new Date(timespan); var year = dateTime.getFullYear(); var month = dateTime.getMonth() + 1; var day = dateTime.getDate(); var hour = dateTime.get...
星辰之力 阅读(49) |
摘要: Android 热补丁动态修复框架小结
星辰之力 阅读(22) |
摘要: Android 增量更新完全解析 是增量不是热修复
星辰之力 阅读(18) |
摘要: 一、热修复开源方案和使用情况 方案名称方案开发公司开发时间Github星评 Robust 美团 2016年 54 Andfix 阿里 2015年 4994 Nuwa 个人开发者(dex文件补丁) 2015年 2588 Dexposed 不考虑,需要root权限 Amigo 饿了么(apk补丁) 20
星辰之力 阅读(188) |
摘要: Activity做为Android应用层四大组件的重要组成部分,它的灵活性、可扩性无论是在应用还是游戏方面都得到了广泛应用,本文主要介绍Activity作为dialog对话框 的使用方法进行说明。 本文GatherGameActivity做为对话框的使用为例进行说明。 步骤如下: 1、在Manife
星辰之力 阅读(28) |
摘要: 现在做的项目中集成了友盟分享,产品要求集成微信、朋友圈、QQ、QQ空间、短信这几个分享平台。按照友盟的文档集成一切都很顺利,集成成功以后测试QQ、QQ空间、短信都没有问题,唯独微信和朋友圈一直分享不出去。 微信分享不出去的特点: 1、未登陆的状态下,可以正常弹出登录框,输入完账号密码点登录,分享页面
星辰之力 阅读(45) |
摘要: 刚开始使用微信分享,申请的微信appid也可以在直接使用,分享成功! 当我使用自己的签名打包分享时却分享失败,一闪而过,好郁闷的说,为什么之前没有打包就可以,签名打包后就不可以了。。。 开始查找各种资料,综合一下问题所在和解决方法。 问题:第一次申请时使用的是没有打包的apk,android stu
星辰之力 阅读(16) |
摘要: 从自己开发的应用中根据QQ号跳转到QQ应用的聊天界面,实现起来很方便: 即: qqNum(string型)即是所要跳转的qq号。 不过如果直接写这个代码的话,若本机未安装qq应用,程序会直接go die,所以要加以判断: 方法checkApkExit()如下: 注:qq的应用包名是:com.tenc
星辰之力 阅读(71) |
摘要: 我曾四处看看,在我的案子中找到几个与类似的主题,但没有帮助的问题。我想访问现有活动片段使用getSupportFragmentManager().findFragmentByTag(TAG),但它始终返回null。有关类似问题的答复建议它需要提交要执行的一段时间,因此调用 findFragmentB
星辰之力 阅读(126) |
摘要: 一、简述 不管AbsListView(ListView、GridView)或是新出的RecyclerView,在使用notifyDataSetChanged方法更新列表数据时,一定要保证数据为同个对象(即hashCode要一致)。对于这个问题的论证,可以去看官方源代码,或是看我之前写的一篇博文“解决
星辰之力 阅读(290) |
摘要: 一般listview设置完data后调用notifyDataSetChanged便可刷新布局界面,然而recycleview调用这个方法却没有任何反应。对于很多不熟悉recycleview的话很容易躺坑,折腾了好久。在此记录下。一、recycleview刷新:设置相关属性: data设置完后需要这样
星辰之力 阅读(266) |
摘要: ScrollView嵌套RecyclerView在Android6.0以下能正常显示,但是在6.0以上就会出现RecyclerView显示不全的bug。尝试多种方法之后终于找到解决办法,特在此记录下。 无效方法之一 ScrollView嵌套RecyclerView时出现的各种冲突一般是靠重写Recy
星辰之力 阅读(752) |
摘要: 在Android系统中向下兼容性比较差,但是一个应用APP经过处理还是可以在各个版本间运行的。向下兼容性不好,不同版本的系统其API版本也不同,自然有些接口也不同,新的平台不能使用旧的API,旧的平台也使用不了新的API。 为了应用APP有更好的兼容性,咱们可以利用高版本的SDK开发应用,并在程序运
星辰之力 阅读(503) |
摘要: 尝试用mvp架构加dagger2来重写了一下,大致功能都实现了,还没有全部完成。 项目地址 接近完成的时候,想在天气信息页面实现一个很常见的功能,也就是点击屏幕下方的返回键的时候不是返回到上一个activity或者退出,而是提醒用户再按一次就会退出。 实现思路也很简单,就是对返回键的动作进行监听和拦
星辰之力 阅读(45) |
摘要: 一. 问题出现原因 我们在做APP分享时,分享webview加载带有音乐播放控件的网页.当弹出分享界面,webview的网页处于后台状态或关闭该网页时,音乐声仍在播放.出现该类现象使我们所不能容忍,也会给用户一个不好的印象,网上有几种解决办法,但都有不尽如意的地方,今天,我们就来说说如何更好地解决它
星辰之力 阅读(73) |
摘要: 笔者最近使用Eclipse开发Android移动应用app,其实有一个功能是使用Android系统自带的WebView控件加载Web页面。开发很顺利,浏览也很正常。不过有个比较特殊的一点就是加载的Web页面中有声音或者视频。在包括WebView的Activity被Finish之后。声音或者视频仍然在
星辰之力 阅读(194) |
摘要: Android项目引用不到以下两个java类 Android有自己的base64类
星辰之力 阅读(344) |
摘要: 近期遇到了如标题这种错误,再次记录解决方法。本文參考帖子: http://bbs.csdn.net/topics/ 出现此bug的原因是在内存回收上。里面用Bitamp的代码为: 在回收时,应该这样写: 或者 另外MyRecycle方法的代码例如以下: 总之是必需要解除与bitma
星辰之力 阅读(40) |
摘要: 微信官网给的Demo中。图片的分享例子他是这么描述的: 而在实际的使用过程中,总是报这样的一个错误,怎么也调用不到微信的分享界面。 05-06 10:21:35.276: E/MicroMsg.SDK.WXMediaMessage(19273): checkArgs fail, thumbData
星辰之力 阅读(48) |
摘要: 今天主要研究了Glide获取图片Path、Bitmap用法,相信也困扰了大家很久,我在网上也找了很久,基本没有,后来研究了下,也参考了下api文档,总结了以下几个方式: 1. 获取Bitmap: 1)在图片下载缓存好之后获取 上面是简单方法,下面有全面的方法,可以完美控制: 2)通过url获取 2.
星辰之力 阅读(135) |
摘要: public Bitmap returnBitMap(final String url){ new Thread(new Runnable() { @Override public void run() { URL imageurl = try { imageurl = new U...
星辰之力 阅读(1843) |
摘要: 这个是我写的 一个从内存卡读取照片的类.. 可根据自己需求更改 我先上代码,我们看看上面的代码..设置缩略图那 官方给的 代码是 msg.thumbData = Util.bmpToByteArray(thumbBitmap, true); 然后Util类,居然找不到(我用了qq的jar包,只能在这
星辰之力 阅读(27) |
摘要: public static void share(String CustomEventData,String title,String titlle_detail,String imgUrl)throwsMalformedURLException{ Log.e(TAG,&share##########################&); Log.e(TAG,...
星辰之力 阅读(32) |
摘要: Android检查手机上是否安装了指定的软件(根据包名检测)
星辰之力 阅读(157) |
摘要: 从Android3.0 (API level11)开始,Android的2D显示管道被被设计得更加支持硬加速了.硬加速使用GPU承担了所有在View的canvas上执行的绘制操作. 启用硬加速最简单的的方法是对整个应用启用硬件速.如果你的应用只使用标准的view和Drawable,全局启用硬加速将不
星辰之力 阅读(20) |
摘要: 最近鼓捣android,碰到个问题,因为没有root权限,需要调用Intent安装apk,但需要获取用户是否安装了(如,用户点击了返回或取消),查了很多文章,最后可以解决,但有瑕疵,解决方法如下: 在MainActivity中添加protected void onActivityResult(int
星辰之力 阅读(71) |
摘要: 最近在项目中遇到一个现象,一个界面有一个RecyclerView(GridView型的),外面套了一层ScrollView,通过ScrollView上下滚动,但是在滑动的时候如果是在RecyclerView的内容上滑动,这时会出现滑动卡顿,而如果是在其他内容上滑动时就可以很顺畅的滑下去。 这是Rec
星辰之力 阅读(144) |
摘要: 最近做的项目中遇到了ScrollView嵌套RecyclerView,刚写完功能测试,直接卡出翔了,后来通过网上查找资料和 自己的实践,找出了两种方法解决这个问题。 首先来个最简单的方法: 这个方法就可以解决这一问题。 既然有首先那肯定有第二种解决的办法,只不过相对于第一种方法来说就太麻烦了。 我们
星辰之力 阅读(71) |
摘要: delete from TableN //清空数据 update sqlite_sequence SET seq = 0 where name ='TableName';//自增长ID为0 Sample: DatabaseHelper helper = DatabaseHelper.getHelper(context); itemDaoOpe = helper.getDao(Item...
星辰之力 阅读(46) |
摘要: 问题: 使用FileProvider构造SD卡中文件uri时异常 java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/840E-10F6/音乐/千里之外.mp3at and
星辰之力 阅读(140) |
摘要: 我们在开发app时避免不了需要添加应用内升级功能。当app启动时,如果检测到最新版本,将apk安装包从服务器下载下来,执行安装。安装apk的代码一般写法如下,网上随处可以搜到 然而,当我们在Android7.0手机中执行时,会发现报如下错误日志 我们来看一下FileUriExposedExcepti
星辰之力 阅读(347) |
摘要: 一、问题描述 相信大家在使用Fragment的过程中,肯定碰到过Fragment重叠的问题,重启应用就好了。然而原因是什么呢? 二、原因分析 首先,Android管理Fragment有两种方式,使用add、hide、show的方式和replace方式,两种方式各有优缺点。 replace方式 如果使
星辰之力 阅读(217) |
摘要: 一、目前的号码段(更新) 二、代码
星辰之力 阅读(50) |
摘要: 在进行Android开发过程中,我们经常会接触到Drawable对象,那么,若要使用数据库来进行存储及读取,该如何实现? 一、存储 代码看起来比较繁琐,是因为过程的确挺繁琐的,不过可以简单的总结为: Drawable→Bitmap→ByteArrayOutputStream→SQLite 二、读取
星辰之力 阅读(102) |
摘要: 这种方式不用在配置文件加东西,我比较喜欢。 广播注册,可以写在Activity(onCreate),也可以写在Fragment(onActivityCreated)里。 发送广播
星辰之力 阅读(23) |
摘要: 问题: 在应用开发中遇到需要这样的需求:在用户下载我们的应用安装之后删除安装包。 解决: android会在每个外界操作APK的动作之后发出系统级别的广播,过滤器名称: android.intent.action.package_ADDED, android.intent.action.PACKAG
星辰之力 阅读(191) |
摘要: 应用的状态变化,包括安装、卸载、更新,是android系统上重要的事件。如何侦听到?有两种方法,一是通过侦听广播,一是实现PackageMonitor。侦听广播 当Package状态发生变化时,系统会广播如下一些Action的Intent:应用安装:public static final Strin
星辰之力 阅读(79) |
摘要: if(!TextUtils.isEmpty(pNumber) && pNumber.length() & 6 ){ StringBuilder sb =new StringBuilder(); for (int i = 0; i = 3 && i &= 6) { sb.append('*'); ...
星辰之力 阅读(150) |
摘要: 在项目中切换Fragment,一直都是用replace()方法来替换Fragment。但是这样做有一个问题,每次切换的时候Fragment都会重新实列化,重新加载一次数据,这样做会非常消耗性能用用户的流量。 官方文档解释说:replace()这个方法只是在上一个Fragment不再需要时采用的简便方
星辰之力 阅读(34) |
摘要: Android能用来存储的地方有两个,一个是手机内置的存储空间,一个是外置的SD卡,内置的存储空间一般比较小,所以应用的缓存建议存储在外置的SD卡中。 在Android系统中如何获得存储的路径呢? 以上对应的输出结果为 应用的缓存建议存储在通过getExternalCacheDir().getPat
星辰之力 阅读(229) |
摘要: 在操作安卓版本23+的文件读取时,不仅要在maniests中声明,还要在代码中动态声明:
星辰之力 阅读(281) |
摘要: 1. 2. 例子:
星辰之力 阅读(12) |
摘要: 想把文件保存到SD卡中,一定要知道SD卡的路径,获取SD卡路径: 另外,在保存之前要判断SD卡是否已经安装好,并且可读写: 实例 1. 下载存文本文件和下载如mp3等大容量的文件 2.代码编写 AndroidMainfest.xml中配置 主要是解决网络权限和写SDCard的权限 FileUtil.
星辰之力 阅读(31) |
摘要: APP开发中常有计算缓存大小和清空缓存的功能,此功能很常见,几乎每个应用都能看到,下面就用代码来实现此功能: 步骤为: 1、获取缓存路径 获取长时间保存的文件,Context.getExternalFilesDir(); 存储位置,SDCard/Android/data/你的应用的包名/files/
星辰之力 阅读(46) |
摘要: Android Studio升级到2.3版本之后,小米手机MIUI8不能运行Android Studio程序,报如下错误: 解决方法 设置Android Studio 中Instant Run中的选项为不选中 根据以下路径,找到Instant Run中的选项 File —— Settings——Bu
星辰之力 阅读(135) |
摘要: 在Android Studio的开发中,在软件中集成了ButterKnife插件,另外需要集成ButterKnife的jar包。因为本地没有现成的,所以在module的build.gradle文件中添加了如下代码: 结果报了如下错误: Unresolved Dependencies Unresolv
星辰之力 阅读(639) |
摘要: Android Studio打包应用默认生成的apk名称是:app-release.apk 、如果我们要让生成的apk名跟我们版本包名有联系的话,那我们就要自定义生成的apk名了 需要在build.gradle(Module:app)文件下android{ }中添加: 这样我们打包的apk名就是:c
星辰之力 阅读(48) |
摘要: 这里我不再详细介绍那写比较常规的方式,例如静态变量,静态方法,持久化,application全局变量,收发广播等等。 首先我们来介绍使用Handler来实现Fragment与Activity 的交互。 第一步,我们需要在Activity中定义一个方法用来设置Handler对象。 第二步,在Fragm
星辰之力 阅读(192) |
摘要: 解决办法是当前activity 销毁的时候 我遇到的问题:
星辰之力 阅读(344) |
摘要: 多渠道打包,主要是为了统计不同的渠道上包的下载数量,渠道越多,我们需要打的包数量越多,这个时候,我们没法去使用单纯的手动打包去一个一个的生成不同的渠道包,我们需要更高效的打包方式。 声明渠道方式一: 通常我们区分渠道都是在我们manifest 文件的 application 用这样来定义渠道信息:
星辰之力 阅读(24) |
摘要: 在国内Android常用渠道可能多达几十个,如: 谷歌市场、腾讯应用宝、百度手机助手、91手机商城、360应用平台、豌豆荚、安卓市场、小米、魅族商店、oppo手机、联想乐商、中兴汇天地、华为、安智、应用汇、木蚂蚁、3G安卓市场(久邦开发者发布系统) uc应用商店、苏宁应用、淘宝手机助手、蘑菇市场、搜
星辰之力 阅读(13) |
摘要: 1 首先你要定义一个接口 2 创建一个service 3 需要添加一个string转换器 4 就可以传递jsonarray了,我下面的实例代码传递的是jsonarray
星辰之力 阅读(68) |
摘要: 今天调试程序时log中突然打印这样的错误,但是程序并没有crash,为了不放过一个错误,我决定调查一下。 当时是离开一个activity,然后提示是否退出此界面,接下来就打印此错误: 显然,我用Dialog确认是否退出,但是activity销毁后并没有处理Dialog的退出。 解决办法: 知道了问题
星辰之力 阅读(38) |
摘要: 1.准备 我使用的是AS2.2.2,首先翻墙注册google开发者帐号,准备获取API Key,网上有许多相关资料我就不再赘述,这里讲一个比较小白级的获取方法,可以减少许多输入 1.1. AS创建项目添加一个Google Map Activity 1.2 创建成功后找到google_maps_api
星辰之力 阅读(98) |
摘要: 方法一: 通过命令行,直接生成MD5值 keytool -list -v -keystore keystorefile -storepass 123456 其中keytool为jdk自带工具;keystorefile为Android 签名证书文件 如: C:\Program Files\Java\jdk1.7.0_25\bin&keytool -list -v -key...
星辰之力 阅读(187) |
摘要: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file &/data/app/***/base.apk&],nativeLibraryDirectories=[/data/app/***/
星辰之力 阅读(94) |
摘要: 微信授权登录,官方说的不是很清楚、所以导致有一部分的坑。 微信注册应用平台的应用签名,下载 微信签名生成工具 输入项目的packageName也可以查看到。 (注意:debug、Release 一定要区分,因为2种生成的微信签名不一致,会导致没有跳转、回调。。。。一般在微信开发者上面注册的是正式环境
星辰之力 阅读(34) |
摘要: Github:https://github.com/kymjs/RxVolley RxVolley使用文档 V1.0:http://rxvolley.mydoc.io/ 一.RxVolley使用指南 1.概述 2.依赖 使用 RxVolley 做网络请求 3.简单实现 4.对Cookie等请求头的处
星辰之力 阅读(26) |
摘要: 1:首先在微博官方注册账号,官方地址是:http://open.weibo.com/然后创建一个新应用。 2:当然我们得现在自己电脑上创建一个应用,例如包名叫com.winorout.weibo,那么这个包名此时就要用到了。 3:我们点击应用信息,再点击高级信息,从里面我们可以添加包名,然后下载到m
星辰之力 阅读(102) |
摘要: 最近我老大问我一个问题,说Android可不可以像iOS那样,通过target对项目进行管理啊。老大提这个问题也是正常的,我公司的主要是帮别的公司做硬件定制的,每定制一个硬件就要定制一个APP,但是很多APP的定制其实都是基于同一个APP,只是改改图标,改改部分功能,但是就是这么简单的改变都需要新建
星辰之力 阅读(77) |
摘要: 前言 Android第三方登录可以说是非常的常见,今天主要先说一下新浪微博第三方登陆授权。 SDK版本支持 SDK v3.0已经发布了支持iPhone和Android的版本。 须将你的应用的包名签名信息在平台进行填写注册。 SDK3.0不区分Phone和Pad。Windows Phone请下载SDK
星辰之力 阅读(59) |
摘要: 众所周知,移动互联网在这几年经历了蓬勃发展,到目前为止,移动互联网发展仍然很强劲。其中移动设备系统以android占据主导地位,之前是加拿大的黑莓系统占据主导,但后来随着android系统的问世,黑莓手机操作系统逐渐被android蚕食,目前,全球最为流行的移动操作系统有Google公司的andro
星辰之力 阅读(44) |
摘要: 可以作为Jar包内容的有两个地方: 方式1,采用的方式为copy,也就是网上最多、最容易搜索、最重复的方式: 当你需要生成Jar包的时候,在命令行Terminal中,输入gradlew makeJar 就会在 ’build/libs‘目录下生成你命名的jar包。 但会有缺点,无法自定义的编辑

我要回帖

更多关于 mysql 多列超过 65535 的文章

 

随机推荐