《Adroid》
真正步入职场的技能相关总结
网络hunter
每一个不曾起舞的日子都是对生命的辜负
展开
-
Android集成腾讯直播(无需后台配合一小时让你拥有直播APP)
直播互动的功能,最终选择了腾讯云平台进行开发,LiveRoom组件里面包含了(直播,连麦,弹幕,私信等)功能,我们需要的是推流,拉流都交个腾讯云来处理,腾讯云这方面功能也是比较齐全的了(粗略大概2分钟可看完本文,能像我写如此详细的全网暂时木有可以说,如果你是第一次接触直播可谓福音不敢说,无需自己后台一小时让你拥有直播app不在话下!文末有巨型福利相送及手写FFmpeg推流拉流教程源码+高清视频)。而且腾讯云直播也是按照流量收费的,没有其他任何费用,所以如果要使用腾讯云直播+IM聊天(基本免费按日活收费)功转载 2020-11-13 16:26:45 · 2013 阅读 · 0 评论 -
android contentprovider详解
虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences共享数据,需要使用sharedpreferences API读写数据。而使用ContentProvider共享数据的好处是统一了数据访问方式。在APP之间数据共享—-ContentResolver中,已经说明了An原创 2016-02-04 09:37:27 · 593 阅读 · 0 评论 -
Android fragment解析2
上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上)。本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与Action转载 2016-02-03 15:56:16 · 483 阅读 · 0 评论 -
Android Fragment解析1
自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务;以及Fragment的一些特殊用途,例如:没有布局的Fr转载 2016-02-03 15:47:04 · 377 阅读 · 0 评论 -
Android性能优化之如何避免Overdraw
什么是Overdraw?Overdraw就是过度绘制,是指在一帧的时间内(16.67ms)像素被绘制了多次,理论上一个像素每次只绘制一次是最优的,但是由于重叠的布局导致一些像素会被多次绘制,而每次绘制都会对应到CPU的一组绘图命令和GPU的一些操作,当这个操作耗时超过16.67ms时,就会出现掉帧现象,也就是我们所说的卡顿,所以对重叠不可见元素的重复绘制会产生额外的开销,需要尽量减少Ove转载 2016-01-20 11:55:42 · 405 阅读 · 0 评论 -
Android自定义开关3
效果图:一个2个主要类,OnChangedListener,SlipButtonSlipButton代码如下:package com.appipv6.android.slipbutton;import com.appipv.onoff.R;import android.content.Context;import android.graphics.Bit转载 2016-02-02 10:09:03 · 440 阅读 · 0 评论 -
Android自定义控件2
[Android自定义控件] Android自定义控件转载自: http://blog.163.com/ppy2790@126/blog/static/103242241201382210910473/开发自定义控件的步骤:1、了解View的工作原理 2、 编写继承自View的子类3、 为自定义View类增加属性 4、 绘制控件 5、 响应用户消息转载 2016-02-02 10:00:48 · 488 阅读 · 0 评论 -
Android自定义控件1
RoundImageView.javapackage com.dxd.roundimageview; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Bitmap.Config;转载 2016-02-02 09:53:06 · 423 阅读 · 0 评论 -
允许或禁止未知来源apk的安装
1.在系统设置里面->应用程序设置->未知来源设置下面是界面元素定义\packages\apps\Settings\res\xml\application_settings.xml<CheckBoxPreference android:key="toggle_install_applications" android:title="@st原创 2016-01-26 15:40:06 · 11403 阅读 · 1 评论 -
android开机向导实现
在android TV第一次上电时,会进行一个国家和语言及搜台的选择,实现的原理是:写一个单独的apk实现相应的功能,把这个单独的apk设置成Launcher: 在AndroidManifest.xml中,设置: <activity android:name="DefaultActivity" android:exc原创 2016-01-20 11:31:30 · 1435 阅读 · 0 评论 -
apk获取资源文件及反编译方式
针对apk获取其资源文件的方式: 如:360Mobile.apk将该apk的后缀名“apk”更改为“zip”。 如图: 然后解压该zip文件即可得到资源文件(注:xml文件打开为乱码,主要强调获取图片文件) 如图:要想获取源码文件,需进行反编译操作: 下载工具:apktool (作用:资源文件获取,可以提取出图片文件和布原创 2015-10-13 18:05:41 · 838 阅读 · 0 评论 -
判断有线网络连接的方式
第一种:public static boolean checkEthernet(Context context){ConnectivityManager conn =(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo networkInfo = conn.getNet原创 2015-12-28 16:57:13 · 1675 阅读 · 0 评论 -
通过广播监听网络状态
主要代码块(Activity):public class ConnectionChangeReceiver extendsBroadcastReceiver { @Override public void onReceive( Context context, Intent intent ) { ConnectivityManager connectivityMa原创 2015-11-17 17:34:34 · 418 阅读 · 0 评论 -
WiFi信息获取简单demo
WiFi信息获取简单demo:布局文件:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" androi原创 2015-11-17 11:37:10 · 494 阅读 · 0 评论 -
关于WiFi模块(连接流程介绍)
(一)基本类的调用Android 已经帮助我们做好了一些可以直接调用的类打开andriod.net.wifi 我们可以看到Android 提供的几个类。在看这一部分之前,最好能用一下PC 上的wifi,这样对我们的理解会很有帮助!这里列了很多,但是大致可以分为四个主要的类ScanResult,wifiConfiguration,WifiInfo,WifiManager转载 2015-11-17 10:05:48 · 6428 阅读 · 0 评论 -
Android 提示框的几种类型
Dialog的几种形式,及展示效果涉及的属性(android已经提供了相应的接口Dialog Builder )第一种:new AlertDialog.Builder(self) .setTitle("标题") .setMessage("简单消息框") .setPositiveButton("确定", null)原创 2015-11-17 13:55:26 · 795 阅读 · 0 评论 -
输入框被软件盘挡住处理方式
软件盘遮蔽输入框的解决方式:1、EditText有焦点(focusable为true)阻止输入法弹出Java代码 editText=(EditText)findViewById(R.id.txtBody);editText.setOnTouchListener(new OnTouchListener() {public boolean onTouch(View v,原创 2015-11-17 11:13:30 · 635 阅读 · 0 评论 -
android判断应用在前台还是后台运行
public static boolean isBackground(Context context) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.Ru...原创 2019-08-02 14:16:41 · 947 阅读 · 0 评论 -
Android系统onKeyDown事件
KEYCODE列表电话键 KEYCODE_CALL拨号键5KEYCODE_ENDCALL挂机键6KEYCODE_HOME按键Home3KEYCODE_MENU菜单键82KEYCODE_BACK返回键4原创 2015-12-22 10:48:02 · 3837 阅读 · 0 评论 -
android 实现app内部检测最新版本 自动升级到最新版本
添加链接描述原创 2019-09-29 16:20:28 · 474 阅读 · 0 评论 -
apk提示版本更新
一、准备知识 在AndroidManifest.xml里定义了每个Android apk的版本标识:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.try_downloadfile_progress" android:versionCode原创 2015-12-31 10:07:13 · 643 阅读 · 0 评论 -
Android 应用退出后销毁apk进程
在网上查看了好多相关的进程销毁方式,但是都没有实质的效果。比如: System.exit(0);又或者: android.os.process.killProcess(android.os.Process.myPid());因为system.exit(0),是针对主activity做的动作。涉及多个activity的话就不行,无法完全销毁应用的进程。在finish()的时候只会销毁原创 2015-12-28 11:17:17 · 2348 阅读 · 0 评论 -
MAC地址获取
MAC地址获取法一:public static String getWireMacAddress() { String s = null; int fileLen = 0; File file = new File("/sys/class/net/eth0/address"); try { if (file.exists()) { InputStream iis原创 2015-12-24 15:16:31 · 690 阅读 · 0 评论 -
蓝牙自动打开并配对
主程序:import java.util.Set;import android.app.Activity;import android.bluetooth.BluetoothAdapter;import android.bluetooth.BluetoothDevice;import android.content.BroadcastReceiver;import android.con原创 2015-12-15 15:43:09 · 1273 阅读 · 0 评论 -
CoverFlow一个实例demo
CoverFlow.javaimport android.content.Context;import android.graphics.Camera;import android.graphics.Matrix;import android.util.AttributeSet;import android.view.View;import android.view.animatio翻译 2015-11-17 17:55:40 · 588 阅读 · 0 评论 -
Android TV的音量键实现流程
Android.media.AudioManager中包含了对android.media.AudioService的跨进程AIDL调用封装。正常处理过程:1.调整音量是通过AudioManager间接调用AudioService.adjustStreamVolume方法来完成逻辑处理;2.AudioService调用VolumePanel画出音量调整界面,并发送音量变动广播消息原创 2015-10-13 17:31:59 · 3000 阅读 · 0 评论 -
APK重新签名
apk重新签名1)添加权限 在AndroidManifest给apk签名签名方法:1)添加权限在AndroidManifest.xml文件下添加android:sharedUserId="android.uid.system" 。2)在Eclipse中导出无签名的应用文件在工程中:右键->Android Tools -> Export Unsigned Application Package导出应用3)找出系统签名密钥系统密钥为:platform.pk8和platform.x5原创 2015-10-12 16:31:10 · 541 阅读 · 0 评论 -
任意界面启动apk的方法
framwork层设置代码如下(按键启动apk) :if (keyCode == KeyEvent.KEYCODE_TV_INPUT) { String packageName = getTvManager().getCurAPK(); if (packageName != null && packageName.equals("com.tsb.tv")==f原创 2015-09-24 13:22:51 · 709 阅读 · 0 评论 -
Java中的String字符串之处理subString()函数使用
Java中的subString()函数是处理截取字符串的操作函数: 1. substring(int beginIndex); ~~从首字母起长度为beginIndex的字符串,将剩余字符串赋值使用;~~ 2.substring(int beginIndex,int endIndex) ~~从beginIndex开始至...原创 2019-05-16 14:28:20 · 694 阅读 · 0 评论 -
.9.png在Android studio运行出现error: top-left corner pixel must be either opaque white or transparent.
由于Android studio的自我检测机制很细致,相较于eclipse。对于.9.png的检测合法性我们做以屏蔽。**解决方案如下:在bulid.gradle配置清单文件中的buildToolsVersion下面加:aaptOptions.cruncherEnabled = falseaaptOptions.useNewCruncher = false即可。**...原创 2019-07-29 09:35:20 · 1352 阅读 · 0 评论 -
处理ERROR: Manifest merger failed遇到的Androidx与Android support的兼容问题解决
刚开始处理一个小的bug,陆续衍生出来好几个新的bug。没关系,一步一步看log解决。(重点:AndroidX与Android support支持库的兼容问题)原创 2019-07-30 16:06:22 · 956 阅读 · 0 评论 -
处理error:Plugin with id 'org.greenrobot.greendao' not found.
问题:Plugin with id ‘org.greenrobot.greendao’ not found.解决方案:在Project的主工程build.gradle中没有配置classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2’导致。原创 2019-09-09 09:48:36 · 3929 阅读 · 0 评论 -
Android studio查看依赖包之间的依赖关系命令
打开AndroidStudio的terminal,在命令行输入命令:gradlew -q app:dependencies原创 2019-09-16 15:40:22 · 2038 阅读 · 0 评论 -
分享一款iphone移动商城项目
在这里插入图片描述一、环境配置(1)需要一台Mac(OSX),这个是前提(2)在Mac上安装Xcode,建议Xcode 6.3以上版本(3)安装node.js:https://nodejs.org/download/(4)建议安装watchman,终端命令:brew install watchman(5)安装flow:brew install flow二、Hello, React-N...原创 2019-09-17 11:43:31 · 246 阅读 · 0 评论 -
软键盘的布局遮挡问题
把顶级的layout替换成ScrollView,或者说在顶级的Layout上面再加一层ScrollView的封装。这样就会把软键<pre class="java" name="code"> @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method st...原创 2019-08-19 10:32:02 · 246 阅读 · 0 评论 -
activity之间的传值与回传
一、通过startActivity来进行Activity的传值在Android中,如果我们要通过一个Activity来启动另一个Activity,可以使用 startActivity(Intent intent)方法来传入一个Intent对象,这个Intent对象我们可以精确的指定我们需要跳转的Activity上,或者通过Intent对象来指定我们要完成的一个action操作。①.原创 2016-01-04 10:36:19 · 713 阅读 · 0 评论