- 博客(440)
- 资源 (18)
- 收藏
- 关注
原创 Socket编程调试(TCP)
Socket编程本质是TCP长连接 通信前可以通过电脑端的网络调试助手提前调试 注意:电脑和手机需要连接到同一局域网Mac 软件:网络调试助手 1.点击TCP服务器 2.本地端口 3.开始监听电脑端测试 1.点击TCP客户端 2.服务器IP:查看本机电脑的IP地址 3.输入TCP服务器监控的端口号 4.点击连接,下方会显示连接状态,连接成功,TCP服务器会显示连接数 5
2018-01-09 10:04:52 2544
转载 Android Studio中Gradle使用详解
转载自:http://www.jianshu.com/p/02cb9a0eb2a0一)基本配置build配置buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.2.3' } }Android脚本a
2017-11-22 09:51:33 651 1
原创 Android Studio 3.0 Canary 6 release bug android.content.res.Resources$NotFoundException
Android Studio 3.0 Canary 6 release bug android.content.res.Resources$NotFoundException最新的Android Studio3.0预览版在打包编译的时候, 安装会导致无法找到资源, 尤其是对于低版本的Android5.0以下的系统出现不兼容, 这个问题可能是由于AAPT2编译的bug, 目前(2017/07/17)
2017-07-17 10:44:49 1664
转载 iOS 热更新方案
以下是iOS app热更新的几种方案, 由于苹果在2017年3月左右更新了开发者协议, 禁止需要线上审核的应用进行热更新, 所以请大家慎用(企业版不需要提交审核当然是可以使用的)一、JSPatch热更新时,从服务器拉去js脚本。理论上可以修改和新建所有的模块,但是不建议这样做。建议 用来做紧急的小需求和 修复严重的线上bug。 二、lua脚本
2017-03-20 10:41:14 6705
转载 Android M WRITE_SETTINGS权限的一个BUG
运行时权限Android 6.0,代号Marshmallow,自发布伊始,其主要的特征运行时权限就很受关注。因为这一特征不仅改善了用户对于应用的使用体验,还使得应用开发者在实践开发中需要做出改变。Android中有很多权限,但并非所有的权限都是敏感权限,于是6.0系统就对权限进行了分类,一般为下述几类:正常(Normal Protection)权限危险(Dangerous)权限特殊
2016-12-20 17:27:20 10060 2
转载 使用iOS多媒体框架实现视频倒放
最近在做一个视频类的APP,在视频的编辑模块有一个视频倒序文件的需求,这个和倒序播放的需求不一样,要求的是生成新的倒序视频文件研究过程一开始原本以为这个需求很简单,但是实现的时候遇到了各种麻烦,在最初,本以为可以直接使用AVMutableComposition对Track直接反转的操作就可以实现视频的倒序了(看来我真是Too Naive了),然后发现AVFoundation没有提供
2016-12-15 14:45:06 4482 3
转载 Xcode Couldn’t communicate with a helper application.
xcrun git config --global user.email your@email.comxcrun git config --global user.name "your name"在终端运行这两句 如果是gitosc的就写您的邮箱和名称第二句不用加引号也行
2016-12-01 13:40:42 4922 1
转载 最新Mac OS X 10.12.1 安装cocoapods及使用详解
最新Mac OS X 10.12.1 安装cocoapods及使用详解字数1727 阅读16585 评论18 喜欢33cocoapods官网:https://cocoapods.org一、什么是CocoaPods每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs 的 npm。随着 iOS 开发者的增多,业
2016-11-14 18:09:03 507
转载 上传ipa时遭遇错误:ERROR ITMS - 90167 No. app bundles found in the package
问题描述升级了macOS Sierra (10.12) 和XCode8以后,使用Application Loader上传IPA到App Store时报了个奇怪的错误:ERROR ITMS - 90167 No. app bundles found in the packageITMS - 90167调查上Google搜了一下错误码,发现有很多相关讨论
2016-11-14 14:25:58 922
转载 Android Studio CMakeLists.txt文件配置
关于生成可执行文件时依赖的源文件在当前目录及当前目录子目录中的解决办法:因为 aux_source_directory (./ EXE_SRC)中只能将当前目录中的源代码文件添加到变量EXE_SRC中,如果最终要生成的文件还依赖与当前目录中子目录里面的源代码文件时,可以用如下的方法list命令list(APPEND SRC_LIST a
2016-11-11 13:07:53 8958
转载 在 Android Studio 2.2 中愉快地使用 C/C++
转载请注明出处:http://blog.csdn.net/wl9739/article/details/52607010Android Studio 2.2 正式版发布后,看到更新内容中有提到对 C/C++ 支持的完善,表示非常高兴。然后将官网上这一部分内容翻译出来,如有错误,欢迎指正。原文链接:Add C and C++ Code to Your Project使
2016-11-10 10:53:22 3921
转载 Android开发中的tools命名空间的使用
在Android布局文件中,经常看到 xmlns:tools=”http://schemas.android.com/tools“,一直不知道有什么用,直到看到这篇博客,看到了tools的强大功能,不仅可以节省开发时间,还可以辅助页面布局在布局文件中使用tools命名空间Android Studio 布局文件中导入tools命名空间输入toolsNs,点击TAB
2016-10-31 17:24:31 4135 1
转载 Android最简单的基于FFmpeg的例子(四)---以命令行的形式来使用ffmpeg
FFmpeg使用第四步,以命令行的形式来使用ffmpeg.编译环境Mac OS X Capitan 10.11.3NDK-r10e (64-bit)FFmpeg 3.0简介在前面编译FFmpeg类库编译ffmpeg时,编译脚本中使用了参数 –disable-ffmpeg,所以是不会生成ffmpeg工具的,即使生成了,在android应用下也无
2016-10-31 17:18:26 5778 8
转载 Android最简单的基于FFmpeg的例子(一)---编译FFmpeg类库
FFmpeg使用第一步,编译FFmpeg源码 –> .so 库。编译环境Mac OS X Capitan 10.11.3NDK-r10e (64-bit)FFmpeg 3.0 准备工作下载安装NDK 下载地址下载FFmpeg源码 下载地址编译过程修改configure文件下载FFmpeg源代码之后,首先需要对源代码中的
2016-10-31 17:15:46 1309
转载 Android最简单的基于FFmpeg的例子(二)---测试编译好的SO库
FFmpeg使用第二步,测试编译好的SO库。使用AndroidStudio创建测试工程创建工程,并新建 jni 目录,如图:界面实现这是一个简单的例子,所以只有一个Activity,Activity里有四个按钮和一个TextView(ScrollView包裹),直接上代码吧:MainActivity.java
2016-10-31 17:14:04 1562 2
转载 Android最简单的基于FFmpeg的例子(三)---编译FFmpeg成一个SO库
FFmpeg使用第三步,编译FFmpeg成一个SO库.编译环境Mac OS X Capitan 10.11.3NDK-r10e (64-bit)FFmpeg 3.0简介在看完了第一篇Android最简单的基于FFmpeg的例子(一)—编译FFmpeg类库的基础上再看这一篇,在前一文中,编译FFmpeg生成了六个SO文件,如图:由于
2016-10-31 17:12:14 4554 2
转载 ffmpeg 编译Android支持的所有cpu架构的共享库
Compile ffmpeg for AndroidBefore Continuing this page, if u want to enable x264, please complete building x264 using android toolchain first. Check this.Please put x264 folder at same level of
2016-10-31 16:33:03 5398
转载 android 6.0权限全面详细分析和解决方案
一、Marshmallow版本权限简介android的权限系统一直是首要的安全概念,因为这些权限只在安装的时候被询问一次。一旦安装了,app可以在用户毫不知晓的情况下访问权限内的所有东西,而且一般用户安装的时候很少会去仔细看权限列表,更不会去深入了解这些权限可能带来的相关危害。所以在android 6.0 Marshmallow版本之后,系统不会在软件安装的时候就赋予该app所有其申请
2016-10-31 15:38:00 805
原创 swift3.0 GCD DispatchSourceTimer注意事项
var count =0; var timer =DispatchSource.makeTimerSource(flags: [], queue:DispatchQueue.global()) timer.setEventHandler { NSLog("t
2016-10-24 15:08:56 6341 1
转载 JAVA8 十大新特性详解
一、接口的默认方法Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下:复制代码代码如下:interface Formula { double calculate(int a); default double sqrt(int a) { retur
2016-09-26 16:14:06 1831
转载 JNI中C调用Java方法
背景需求 我们需要在JNI的C代码调用Java代码。实现原理:使用JNI提供的反射借口来反射得到Java方法,进行调用。JNI关键方法讲解。1. 在同一个类中,调用其他方法JNIEXPORT void JNICALL Java_cn_itcast_ndkcallback_DataProvider_callmethod1 (JNIEnv * env, job
2016-09-12 13:49:56 2560
转载 android studio external tool 自定义工具
选项位置生成native.h头文件$JDKPath$\bin\javah.exe-bootclasspath $ModuleSdkPath$/platforms/android-21/android.jar -o $ModuleFileDir$/src/main/jni/$Prompt$ $FileClass$$ModuleFileDir$\build\inte
2016-09-12 12:26:00 1765
原创 ffmpeg-3.1.1编译(iOS和Android)
本文介绍ffmpeg3.1.1版本的编译(此版本正常编译通过, 其他版本可能会有改动, 不同的版本开发, 代码上会有一定的差异)由于各自的环境不同, 所以注明本人用的设备这里的编译为.a文件, iOS平台下可以直接使用的静态库.so为Android平台的库, 要生成so的话必须将ffmpeg的源码目录拷贝到ndk目录下的sources目录, 编译完成后会在ffmpeg目
2016-09-06 13:42:53 2556
原创 Android Studio External Tools快速生成.h头文件和.so
1.配置Anroid Studio(这步是关键)使用[command+,] 打开Preferences,选择External Tools,点击加号框如下图:Paste_Image.png点击+号之后,打开Macros 配置宏命令界面,如下图:Paste_Image.pngsetting.pngjavah.pngndk-build.
2016-09-05 13:51:46 3985 1
转载 android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测
目录: 1,过程感慨; 2,运行环境; 3,准备工作; 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图。 (原创:转载声明出处:http://www.cnblogs.com/linguanh/)1,过程感慨(想直接看教程,请跳过此部分) 在写具体内容之前,我先说下我搞这个东西的过程,由于导师之前说过要搞个图像匹配的
2016-09-01 12:45:18 1686 1
转载 [总结]FFMPEG视音频编解码零基础学习方法
原文地址: http://blog.csdn.net/leixiaohua1020/article/details/15811977在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者。在和大家探讨的过程中,我忽然发现了一个问题:在“大神”和初学者之间好像有一个不可逾越的鸿沟。“大
2016-08-26 20:54:38 1012
转载 java中Executor、ExecutorService、ThreadPoolExecutor介绍
1.Excutor 源码非常简单,只有一个execute(Runnable command)回调接口 public interface Executor { /** * Executes the given command at some time in the future. The command * may execute in a n
2016-08-26 13:04:19 947
转载 Condition的await-signal流程详解
上一篇讲了ReentrantLock的lock-unlock流程,今天这篇讲讲Condition的await-signal流程。Condition类图:Condition接口包含了多种await方式和两个通知方法ConditionObject实现了Condition接口,是AbstractQueuedSynchronizer的内部类Reentra
2016-08-22 16:24:01 550
转载 ReentrantLock实现原理深入探究
前言这篇文章被归到Java基础分类中,其实真的一点都不基础。网上写ReentrantLock的使用、ReentrantLock和synchronized的区别的文章很多,研究ReentrantLock并且能讲清楚ReentrantLock的原理的文章很少,本文就来研究一下ReentrantLock的实现原理。研究ReentrantLock的实现原理需要比较好的Java基础以及阅读代码的能力
2016-08-22 16:21:07 372
转载 ubuntu 16.04启用root用户方法
您的位置: Linux系统教程 > Ubuntu系统 >ubuntu 16.04启用root用户方法时间:2016-07-23来源:linux网站 作者:sxjlinux1、使用:sudo passwd root设置root的密码,如下图所示: 2、使用su root来测试是否可以进入root用户,如果出现#说明已经设置roo
2016-08-20 06:45:52 755
转载 MAC下安装与配置MySQL
一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL Community Server”下方有一个“download”点击。进入MySQL的下载界面(http://www.mysql.com/downloads/mysql/),如果你是用的Mac OS来访问的话那么就会默认为你选好了
2016-08-10 21:17:53 1958
转载 Java Web开发Tomcat中三种部署项目的方法
Java Web开发Tomcat中三种部署项目的方法,开始java web开发必不可少的步骤,经过查找,觉得有篇文章介绍的不错第一种方法:在tomcat中的conf目录中,在server.xml中的,节点中添加: docBase="D:\eclipse3.2.2forwebtools\workspace\hello\WebRoot" debug="0"privileged="t
2016-08-10 15:29:03 5423
原创 android EditText 不自动弹出键盘的方法
在 AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为 adjustUnspecified|stateHiddenactivity android:name=".Main" android:label="@string/str_lable_device_loc" android:windowSo
2016-08-10 14:48:00 4509
转载 ffmpeg常用基本命令
1.分离视频音频流ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流ffmpeg -i input_file -acodec copy -vn output_file_audio //分离音频流2.视频解复用ffmpeg –i test.mp4 –vcodec copy –an –f m4v test
2016-08-10 11:36:22 1193
原创 Android 蓝牙通信及自定义消息协议的解析和生成
Socket通信几本协议:首先解释下为什么Socket通信需要一定的协议才能理解消息的内容1. 安全性, 协议中有判断内容安全的字段(比如报文的长度), 这样可以进行验证,如果被网络连接和篡改,这样的消息就是不安全的,不予处理2. Socket通信, 消息达到一定的长度会分多次接收, 用协议的方式可以可以解决报文被截断的问题3. 其他可能的原因消息协议的
2016-07-29 11:15:00 5817
转载 android 沉浸式状态栏(像ios那样的状态栏与应用统一颜色样式)
这个特性是andorid4.4支持的,最少要api19才可以使用。下面介绍一下使用的方法,非常得简单: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(sa
2016-07-19 15:56:35 2458
转载 JAVA中用三种方法将字符串持久化到文件中
经常需要将数据进行持久化,而我们的文件系统是最古老也是最可靠的保存方式。这里就给出一个在JAVA中把字符串保存到文件中的例子。如下: package test.base;import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io.FileWriter;i
2016-07-13 10:21:27 4627 1
转载 Android多媒体MediaStore运用
MediaScanner与音乐信息扫描在Android系统中,多媒体库是通过MediaScanner去扫描磁盘文件,对元信息的处理,并通过MediaProvider保存到MediaStore中。下图为MediaScannerr 框架: 图1-1 MediaScanner框架流程 Android系统在SD卡插入后,MediaScan
2016-07-08 10:27:12 3814
转载 CAMediaTiming 控制动画时间
感谢翻译小组成员@answer-huang(博客)热心翻译。本篇文章是我们每周推荐优秀国外的技术类文章的其中一篇。如果您有不错的原创或译文,欢迎提交给我们,更欢迎其他朋友加入我们的翻译小组(联系qq:2408167315)。 有一种通过CAAnimation实现的协议叫做CAMediaTiming,也就是CABasicAnimation和CAKeyframeAnimation的基类
2016-07-02 20:40:14 595
原创 Android WebView JS交互 混淆打包需要注意的问题
android 4.2以后, 因为安全性的考虑 js交互需要添加注解, 因此注解需要保留# 保留所有注解-keepattributes *Annotation*-keepattributes *JavascriptInterface*# 替换成自己的包名 保留对应的交互方法-keepclassmembers class .MainActivity$JSInterface {
2016-07-01 14:55:38 2596
NavigationDrawer
2014-07-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人