在AS的plugins工具时竟然给我提示“marketplace plugins are not loaded”!
经上网了解发现IDEA的模块系统加载不出来,是由于IDEA的网络安全机制造成的,类似于windows的防火墙,IDEA误认为你的网络不安全,不给你连接,本质为公司的网络被IDEA认为不安全,具体IDEA为什么会这么认为,原因暂时我还不知道。
解决方法时这样的:点击File->settings->Appearance&Behavior->System Settings -> Updates
将Use secure connection选项的√去掉!……继续阅读 »
sharezer
5年前 (2019-07-26) 4095浏览 0评论
11个赞
apply plugin: 'com.android.application'
//创建当前时间字符创 比如 0411_1213 表示 4月11号,12点13分
def buildTime() {
def date = new Date()
def formattedDate = date.format('MMdd_HHmm')
return formattedDate
}
//获取文件夹最后一次git commit的sha值
def gitSha = 'git rev-parse --short HEAD'……继续阅读 »
sharezer
5年前 (2019-06-27) 2052浏览 0评论
0个赞
以Mac为例
切换到.android目录
cd ~/.android
使用命令(需要输入密码)
debug的默认口令为:android
如果使用自己提供的keystore,就是自己的密码了
keytool -list -v -keystore debug.keystore
……继续阅读 »
sharezer
5年前 (2019-01-30) 2850浏览 0评论
0个赞
本文由 简悦 SimpRead 转码, 原文地址 https://www.jianshu.com/p/067b1399158d
1、在 buildsrc 中新建 AsmInjectPlugin 插件
public class AsmInjectPlugin implements Plugin<Project>{
@Override
void apply(Project project) {
System.out.println("========================")
System.out.pri……继续阅读 »
sharezer
5年前 (2019-01-30) 3938浏览 0评论
2个赞
本文由 简悦 SimpRead 转码, 原文地址 https://www.jianshu.com/p/d1d7fd48ff0b
前言
我们平常在进行 Android 开发时,都会使用 Gradle 来进行项目配置,通常在对应的 module:app 的build.gradle中,在最上面的一句话一般都为:
apply plugin: 'com.android.application'
这句话就是用来加载 gradle 的android开发插件,然后,我们就可以使用该插件提供的配置方法进行 Android 项目的配置了,即如下所示:
android {
compileSdkVers……继续阅读 »
sharezer
5年前 (2019-01-30) 3005浏览 0评论
0个赞
介绍
Java 中一般认为有 23 种设计模式,我们不需要所有的都会,但是其中常用的几种设计模式应该去掌握。下面列出了所有的设计模式。需要掌握的设计模式我单独列出来了,当然能掌握的越多越好。
总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
1、单例设计模式
最好理解的一种设计模式,分为懒……继续阅读 »
sharezer
5年前 (2019-01-29) 1880浏览 0评论
0个赞
[TOC]
Android与iOS不嵌入微信SDK的情况上发送一份文件给微信好友。
1. iOS 一键分享
let activityVC = UIActivityViewController(activityItems: ["需要分享文件asset" as Any], applicationActivities: nil)
activityVC.popoverPresentationController?.sourceView = self.view
self.present(activityVC, animated: true, completion: nil)
效果如……继续阅读 »
sharezer
5年前 (2018-11-23) 3118浏览 0评论
0个赞
1. 背景
在JNI中使用中需要在一个c层的回调方法中调用Java层的静态方法,一开始的设想是初始化的时候保存JNIEvn与jclass为全局变量,需要的时候直接使使用。在实际使用中发现,直接使用会出现奔溃。
初步猜测可能是多线程引起。
2. 问题排查
2.1 步骤1 子线程中使用全局JNIEnv与jclass
使用方法
jmethodID mid = (*g_env)->GetStaticMethodID(g_env, g_cls, "print", "(Ljava/lang/String;)V");
jstring param = (*g_env)->NewStringUTF(……继续阅读 »
sharezer
6年前 (2018-09-25) 4201浏览 0评论
5个赞
import java.io.Serializable;
public class IsAssignableFromTest implements Serializable{
/** 序列号 */
private static final long serialVersionUID = 5716955136475665579L;
public static void main(String[] args) {
//测试是否实现了父类
boolean re1= Object.class.isAssignableFrom(IsAssi……继续阅读 »
sharezer
6年前 (2018-06-20) 2855浏览 0评论
0个赞
编译WebRTC后,默认是没有把H264编码编进来的。WebRTC中H264编码采用的是openh264,解码默认采用的是ffmpeg,移动版本android,ios默认采用的是系统的h264硬件编码,如果你的手机支持H264硬件编码的话,WebRTC就会默认支持H264。
1.如何在桌面版本中开启H264编码
使用gn生成ninja文件时,加入以下两个选项就可以生成 ffmpeg_branding="Chrome" rtc_use_h264=true,比如我要编译Linux版本,使用以下命令 gn gen out/linux --args='target_os="linux" target_……继续阅读 »
sharezer
6年前 (2018-06-13) 4011浏览 0评论
4个赞