精华内容
下载资源
问答
  • 安卓相册插件
    2021-01-14 23:26:29

    ionic混合开发调用Android系统相册,官方的cordova-image-picker插件在直接用的时候会在Android6.0以上的版本由于没有获得相应的存储权限而闪退。

    解决方法一:

    在原有的cordova插件上面改动,添加了动态授权,我放在了github 用法和原来的相同。

    function getImgPicker() {

    var options = {

    maximumImagesCount: 1,

    width: 800,

    height: 800,

    quality: 80,

    title:'',

    message:'',

    outputType:1

    };

    window.imagePicker.getPictures(function (results) {

    vm.userInfo.Url = results[0];

    console.log(vm.userInfo.Url);

    vm.upload(vm.userInfo.Url);

    }, function (err) {

    publicMethod.showLoadingNoBackdrop('调取相册失败');

    console.log(angular.toJson(error, true));

    }, options);

    }

    解决方法二:

    var permissions = cordova.plugins.permissions;

    permissions.hasPermission(permissions.CAMERA, checkPermissionCallback, null);

    function checkPermissionCallback(status) {

    if(!status.hasPermission) {

    var errorCallback = function() {

    console.warn('Camera permission is not turned on');

    }

    permissions.requestPermission(

    permissions.CAMERA,

    function(status) {

    if(!status.hasPermission) errorCallback();

    },

    errorCallback);

    }

    }

    ionic 监听Android的返回键和双击退出程序(直接上代码)

    $ionicPlatform.registerBackButtonAction(function (e) {

    e.preventDefault();

    //判断处于哪个页面时双击退出

    if ($location.path() == '/tab/home' || $location.path() == '/tab/activity' ||

    $location.path() == '/tab/person' || $location.path() == '/tab/share' || $location.path() == '/tab/study') {

    if ($rootScope.backButtonPressedOnceToExit) {

    ionic.Platform.exitApp();

    } else {

    $rootScope.backButtonPressedOnceToExit = true;

    $cordovaToast.show("再按一次退出系统", "short", "bottom");

    $timeout(function () {

    $rootScope.backButtonPressedOnceToExit = false;

    }, 2000);

    }

    } else if ($location.path() == '/blueprint-list' || $location.path() == '/megagame-list') {

    $state.go('tab.activity'); //此处判断当前所处的View,并返回到tab页

    } else if ($ionicHistory.backView()) {

    $ionicHistory.goBack();

    } else {

    if ($rootScope.backButtonPressedOnceToExit) {

    ionic.Platform.exitApp();

    } else {

    $rootScope.backButtonPressedOnceToExit = true;

    $cordovaToast.show("再按一次退出系统", "short", "bottom");

    $timeout(function () {

    $rootScope.backButtonPressedOnceToExit = false;

    }, 2000);

    }

    }

    return false;

    }, 101);

    更多相关内容
  • android相册上传插件

    2014-09-23 13:58:21
    android相册上传插件,可以选择本地图片或者拍照上传。。选定图片后可以截取图片。比较不错的功能插件
  • Unity访问相册图片插件 UnityNativeGallery
  • Android相册选择,拍照库基本介绍链式调用,本地相册选择,支持多选,单选,压缩,裁剪,批量压缩,裁剪,适配Android6.0,7.0权限还有一些细节后续再完善补充,作者后期打算使用自己的这套库,并持续更新优化。...

    b758097e15da15aaee6d4d9bb09f0581.png

    Android相册选择,拍照库

    a3087e4a978c0e8d55bbd9df9d85350c.pngS71122-162709.jpg3d98a607ec9ee46b49e55bc80d7fd262.pnggif.gif

    基本介绍

    链式调用,本地相册选择,支持多选,单选,压缩,裁剪,批量压缩,裁剪,适配Android6.0,7.0权限

    还有一些细节后续再完善补充,作者后期打算使用自己的这套库,并持续更新优化。

    如何使用

    Android Studio

    第一步:

    在项目的gradle里配置

    allprojects {

    repositories {

    ...

    maven { url 'https://jitpack.io' }

    }

    }

    第二步:

    在module的gradle里配置

    dependencies {

    compile 'com.github.shajinyang:PhotoPicker:1.1.7'

    }

    使用示例

    快速使用(默认单选,不压缩,不裁剪)

    PhotoPicker.Album(mContext)

    .setOnResultListener(new OnResultListener() {

    @Override

    public void onSucess(ArrayList imagePathList) {

    //todo 返回图片的绝对路径集合

    }

    @Override

    public void onCancel() {

    }

    })

    .start();

    常规使用

    PhotoPicker.Album(mContext)

    .setMultiChooseSize(6)//设置最大选择数量

    .setIsCompress(true)//是否压缩

    .setIsCrop(false)//是否裁切

    .setOnResultListener(new OnResultListener() {

    @Override

    public void onSucess(ArrayList imagePathList) {

    //todo 返回图片的绝对路径集合

    }

    @Override

    public void onCancel() {

    }

    })

    .start();

    自定义UI细节

    PhotoPicker.Album(mContext)

    .setMultiChooseSize(6)//设置最大选择数量

    .setIsCompress(true)//是否压缩

    .setIsCrop(false)//是否裁切

    .setExitIco(resId)//设置返回图标按钮

    .setStateBarColor("#ffffff")//设置状态栏颜色

    .setToolBarColor("#ffffff")//设置toolbar颜色

    .setOnResultListener(new OnResultListener() {

    @Override

    public void onSucess(ArrayList imagePathList) {

    //todo 返回图片的绝对路径集合

    }

    @Override

    public void onCancel() {

    }

    })

    .start();

    展开全文
  • 支持unity5.0以上,支持打开Android和IOS手机系统摄像机和相册软件并截图,解决其他此类工具使用后打包APK出错问题。
  • UnityNativeGallery-master.zip 用于unity访问相册等功能 比较方便快捷
  • 仿Android系统相册

    2016-11-29 14:07:20
    以GridView的形式展示出指定目录下的图片,点击选择或者是长按图片进入多选状态,在非选择状态下点击图片以图片浏览器打开图片
  • 直接调用:ScreenshotHelper.iCaptureScreen(CaptureScreenCallBack);即可实现截屏。 函数void CaptureScreenCallBack(Texture2D texture2D) { new FilePathName().SaveTextureAs(texture2D,FilePathName.Save...
  • 2.下载Android stdio 3.编写插件 4.导入插件 5.unity调用 6.打包运行 1.sdk、jdk 网上教程多的是,这里不再赘述,但是需要注意的是,在安装sdk的时候,你所安装的 SDKPlatform 的API,要和Android SDK Build-tools相...

    1.配置unity的sdk,jdk
    2.下载Android stdio
    3.编写插件
    4.导入插件
    5.unity调用
    6.打包运行

    1.sdk、jdk
    网上教程多的是,这里不再赘述,但是需要注意的是,在安装sdk的时候,你所安装的 SDKPlatform 的API,要和Android SDK Build-tools相匹配,不然 会报错。如下
    在这里插入图片描述
    2.Android studio 下载与安装自行搜索百度
    3.插件编写
    开始最重要的插件的编写,这里我们要做的是jar包
    1.在Android stdio 中新建一个空项目,有两个需要注意的地方,如下
    在这里插入图片描述
    包名必须与unity工程中的包名一样,最低使用的API等级也要已知,否则unity打包出来的apk会闪退,当然还有可能有其他的导致闪退的原因,可以自行上网去查。
    2.在MainAcitivy中将一下代码复制进去,注意包名要使用你自己的

    import android.content.Context;
    import android.content.Intent;
    import android.os.Bundle;
    import android.util.Log;
    import com.unity3d.player.UnityPlayerActivity;
    
    public class MainActivity extends UnityPlayerActivity{
        private static String LOG_TAG = "LOG_My";
        Context mContext = null;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            mContext = this;
        }
    
        //Unity中会调用这个方法,用于打开本地相册
        public void TakePhoto(String str)
        {
            Log.d(LOG_TAG,str);
            Intent intent = new Intent(mContext,WebViewActivity.class);
            this.startActivity(intent);
        }
    
    }
    

    复制编译之后,会有报错,先不管,如果是第一次使用android stdio的人,可能找不到这个MainAcitivy,在Android stdio的左上角有一个切换视图,切换到 Android视图,一般在java下面
    在这里插入图片描述
    3.导入unity的classes.jar
    这个jar包一般在你unity的安装目录下面,需要注意的是,你项目使用的是那个版本,那你就要导入那个版本的classes.jar
    路径一般为:unity->Editor->Data->PlaybackEngines->AndroidPlayer->Varations->momo->Release->classes;
    找到这个classes.jar之后,将其复制一份,粘贴到刚才的android项目中的app/lib文件夹中,并且讲起添加(右键,add as library,添加之后会弹出提示,确定是app就好了)
    原因:android需要和unity进行交互,那么就要调用unity的类才行
    在这里插入图片描述
    4.在MainActivity下面创建新的类,命名为 WebViewActivity
    在这里插入图片描述
    将一下代码复制进去,注意包名要用自己的

    import android.app.Activity;
    import android.content.ContentResolver;
    import android.content.Intent;
    import android.database.Cursor;
    import android.graphics.Bitmap;
    import android.net.Uri;
    import android.os.Bundle;
    import android.provider.MediaStore;
    import android.util.Log;
    import android.view.KeyEvent;
    
    import com.unity3d.player.UnityPlayer;
    
    import java.io.IOException;
    
    
    public class WebViewActivity extends Activity
    {
        public static final int NONE = 0;
    
        public static final int PHOTORESOULT = 3;
    
        public static final String IMAGE_UNSPECIFIED = "image/*";
    
    
    
        private String LOG_TAG = "LOG_ZDQ";
        @Override
        protected void onCreate(Bundle savedInstanceState) {
    
            super.onCreate(savedInstanceState);
    
            Intent intent = new Intent(Intent.ACTION_PICK, null);
            intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, IMAGE_UNSPECIFIED);
            startActivityForResult(intent, PHOTORESOULT);
            Log.d(LOG_TAG, "打开相册!");
        }
    
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            Log.d(LOG_TAG, "resultCode :" + resultCode);
            if (resultCode == NONE)
                return;
    
            if (data == null)
                return;
    
            
            ContentResolver resolver = getContentResolver();
            Bitmap bm=null;
            
            Uri originalUri = data.getData();
            try {
                bm = MediaStore.Images.Media.getBitmap(resolver, originalUri);
            } catch (IOException e) {
                e.printStackTrace();
            }
    
    
            String[] proj = {MediaStore.Images.Media.DATA};
    
                     
            Cursor cursor= getContentResolver().query(originalUri,proj,null,null,null);
            int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
             cursor.moveToFirst();
             String _path = cursor.getString(column_index);
    
            UnityPlayer.UnitySendMessage("Main Camera", "GetPhoto", _path);
            super.onActivityResult(requestCode, resultCode, data);
             this.finish();
        }
    }
    
    需要注意的地方有一点:在打成jar包之前,你首先要确定,你这个打开手机相册的方法到底是在那个物体上在这里我给的是Maincamera,然后调用的是getphoto,传过去的参数是你选择的图片的路径
    

    在这里插入图片描述

    5.打包准备:
    新建一个module-》Android Library 里面的设置要和上面的一样
    在这里插入图片描述
    然后将前面写的两个脚本放在新建的module同样的位置,再将classes.jar也复制到module的lib里面 ,add as library,注意包名!
    在这里插入图片描述
    编辑一下 module的 Androidmanifest.xml文件复制一下代码

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.NXNC.Farm" >
        <!--读取相册权限 (必须)-->
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <application   >
            <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity
                android:name=".WebViewActivity">
            </activity>
        </application>
    
    </manifest>
    

    注意包名要是自己的

    在build.gradle中加上代码,注意不是直接覆盖原本的代码,是追加:

    task makejar(type: Copy){
    
        delete 'libs/test.jar'
    
        from('build/intermediates/packaged-classes/release/')
    
        into('libs')
    
        include('classes.jar')
    
        rename('classes.jar','FarmGetAndroidPhoto.jar')
    }
    
    makejar.dependsOn(build)
    

    6.打包建议:
    在android stdio安装目录下面找到studio.exe.vmoptions ,看看是64位的还是32位的,不管是那个,有那个就编辑那个,修改里面的相应内容,不是全部,不是全部

    -Xms2048m
    -Xmx2048m
    -XX:ReservedCodeCacheSize-2048m
    

    gradle.properties注释到这句话:
    在这里插入图片描述
    就是在前面加一个#

    7.正式打包!
    在terminal中输入gradlew makehar
    在这里插入图片描述
    如果成功,会提示build successful
    切换到project视图,在新建的module的libs中会有心的jar

    在导入插件之前,先用压缩包打开生成的jar,将里面的buildCofig.class删除,原因是unity在使用插件打包的时候,也会生成这个文件,为了避免不必要的错误,直接删掉jar里面的这个;

    4.导入插件
    在unity工程里面的Asset 中新建文件夹Plugins-Android
    Plugins 文件夹是专门用来放unity所使用的插件的,Android这个子文件夹是用来确定放什么引擎写出的插件的

    5.unity调用

    using UnityEngine;
    using System.IO;
    using UnityEngine.UI;
    
    public class GetAndroidPhoto : MonoBehaviour
    {
        public Button button;
        public RawImage rawImage;
    
        void Start ()
        {
            button.onClick.AddListener(OpenLibery);
        }
    
        private void OpenLibery()
        {
            AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
            jo.Call("TakePhoto", Application.persistentDataPath);
        }
    
        public void GetPhoto(string path)
        {
            Debug.Log("android give path ==> " + path);
            FileGetTex(path);
        }
    
        private void FileGetTex(string path)
        {
            FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);
            fileStream.Seek(0, SeekOrigin.Begin);
            byte[] bye = new byte[fileStream.Length];
            fileStream.Read(bye, 0, bye.Length);
            fileStream.Close();
    
            Texture2D texture2D = new Texture2D((int)rawImage.rectTransform.rect.width, (int)rawImage.rectTransform.rect.height);
            texture2D.LoadImage(bye);
            rawImage.texture = texture2D;
        }
    }
    

    6.打包
    注意包名与android stdio中的包名的一致性,不要用interal!要用Gradle,原因是因为我们要和Android系统做交互,就要用这个
    然后就能正确的运行demo了

    展开全文
  • 此代码,是unity拉取安卓苹果的插件,里面集成了安卓和ios的所有功能,直接用里面的代码也可以,也可以自己重写方法,按自己的需求来。有不懂的尽管提问
  • 本篇文章基于uniapp 框架+ nvue,实现了uniapp仿微信/得物相册选择功能实例项目,该插件实例实现了以下功能: 1: 相册过滤 2: 图视频过滤 3: 界面UI定制化 4: 栅格列数定制化 效果图: 技术实现 开发...

    本篇文章基于uniapp 框架+ nvue,实现了uniapp仿微信/得物相册选择功能实例项目,该插件实例实现了以下功能:

    1: 相册过滤

    2: 图视频过滤

    3: 界面UI定制化

    4: 栅格列数定制化

    效果图:


    技术实现

    • 开发环境:HbuilderX + nodejs
    • 技术框架:uniapp + vue2.x
    • 测试环境:App端(Android + IOS)
    • 插件:Zhimi-Album-JustPicker
    • 代码:开源

    效果概览

    在uniapp开发下,安卓和ios端表现效果高度一致,通过可控性的api配置使得相册实现高度可定制性,可以实现内置图片按钮,列数控制,多语言环境等功能。

     


    自由布局的控件

    相对于传统的弹出式选择控件,固定不变的按钮,固定不变的布局与设计使得开发面对多种需求的场景显得尤其乏力,因此自由布局插件给予了一个更大,更自由地开发控件,仅仅引入相册显示本身,其余界面均开发者可定制化开发,开发者拥有了足够的控制权。

    <zhimi_album_view 
        ref='albumView' 
      class="album-elem"
    />
    // 获取相册控件对象
    
    let albumView = this.$refs.albumView
    // 监听相册事件回调
    
    albumView.setEventCallback(this.AlbumCallbackHanlder)
    // 设置相册类型
    
    albumView.albumType(0); // 0 全部, 1 照片, 2 视频
    // 获取系统相册列表
    
    albumView.getAlbumTypeNames(albums => this.albums = albums)
    // 设置每行显示数量
    
    let spanCount = 4;
    albumView.setSpanCount(spanCount)
    // 设置最大选择数量
    
    var maxCount = 9;
    albumView.setMaxCount(maxCount)

    开发者可以设置列数,最大选择数,甚至是相册类型,指定相册,awesome!


    控制筛选,清空选择

    相较于与传统的相册选择插件不同,插件提供方法控制过滤相册,清空选择等方法,方便结合各类场景,例如发送图视频、朋友圈上传图片、图文排版场景。

    获取系统相册列表

    albumView.getAlbumTypeNames(albums => this.albums = albums)

    加载相册内容

    albumView.loadAlbum(albumId) // 通过上述的获取相册列表获得

    清空已选项目

    albumView.clearCheckedImages()

    获取已选项目

    albumView.clearCheckedImages()

    灵活的客制化UI

    由于相册控件的组件化,使得界面的布局更加灵活,不论是配色,语言,界面布局都能自由搭配,仿微信相册,仿得物界面,均能掌握在手中。

    至此uniapp开发仿微信仿微信/得物相册选择界面的分享到此为止咯

    对于这部分的代码使用到的原生插件,可以参考uniapp插件市场中的插件,在插件市场也有开源的代码工程哦。

    DCloud 插件市场自定义相册地址:智密相册-自定义原生相册+图片视频过滤-QQ群755910061-智密科技 - DCloud 插件市场

    通过插件市场对应的按钮可以直接导入开源代码,但是记得先安装HbuilderX哦

    欢迎加入插件使用交流QQ群:755910061 一起讨论uniapp开发

    展开全文
  • Android 炫酷相册源码.zip
  • Unity截屏保存到Android相册Unity端截屏代码Unity需要的Android Jar及Java代码(由于之前是找的一个Jar库因不支持鸿蒙所以自己动手二次开发的Java调用库)Unity JAR库(支持Android系统)Unity录屏代码 Unity端截屏...
  • Android 水果相册浏览器源码.zip
  • 我们先通过loadUrl(url)加载我们的本地h5项目,使用loadUrl这个方法一定是继承自CordovaActivity,cordovaActivity的onCreate...h5中如何调用引入的cordova插件呢,以相册选取为例,下面我们来看下: navigator.ca...
  • 安卓 CameraPlus具有以下功能 在后台从Camera检索实时图像 在Base64中以HTML / JS检索图像,以便可以显示它们,将其保存在本地存储中并使用HTTP POST发送 设置目标格式(仅适用于iOS) 如果5秒钟内未请求,则自动...
  • Unity调用安卓、IOS 相机、相册、保存图片的插件

    千次阅读 多人点赞 2020-03-12 17:05:31
    经过诸多摸索与Android端、IOS端的相机相册插件寻找与改写 先是在github中找到了一个UnityNativeCamera的项目,经过测试可以在安卓与IOS双端完美运行,只是缺少相册功能。 后来经过修改项目安卓代码与ios代码,...
  • cordova-plugin-useragent =科尔多瓦-插件-相册com.danielsogl.cordova.useragent = com.elbozor.cordova.album im.ltdev.cordova.UserAgent = com.elbozor.cordova.PhotoAlbum UserAgent =相册im / ltdev / cordova...
  • 分析了基于Android的手机相册分享软件的功能模块,对其进行架构设计和代码实现,完成了照片拍摄,特效编辑等功能,并以广泛使用的新浪微博为例,探讨了如何通过微博授权进行分享。
  • cordova-android保存图片插件,不知道为何不适用ios,仅供参考
  • 1:引入插件 pubspec.yaml 增加 image_picker: ^0.7.5+2 2:android 添加androidx兼容 gradle.properties 增加 android.useAndroidX=true android.enableJetifier=true build 添加依赖 ...
  • 这个组件主要是用来展示图片、相册用的,还是很实用的。  一、使用这个组件需要引入两个js文件  1 [removed] 2 [removed] <!–当前最新版的应该是1.0.11 –> 二、然后页面结构可以是这样子的 
  • 这是一款基于jQuery的手风琴相册集播放插件相册分四组,每一组均可展开播放相片。 建议开发童鞋使用统一开发环境UDE来进行查看、调试、开发哦~~其属于MM应用引擎的应用开发部署工具,它是基于云计算基础架构,...
  • 最新版,Unity调用Android/IOS系统相册、摄像机,选取后可以裁剪(Demo)
  • 插件导入unity,直接调用,获取手机图片和下载图片功能 NativeGallery插件 跨平台 亲测可用
  • 在上上篇文章中(),我们基于... 测试环境:App端(Android + IOS)、 代码:开源 效果预览 业务分析 这里主要是承接上次写的仿微信相册(uniapp框架如何实现仿微信相册 | 图视频过滤、相册选择...
  • 简单的跨平台插件,可在Android和iOS上访问图像和视频。 平台支援 平台 版 Xamarin.iOS iOS 8以上 Xamarin.Android API 14+ 正在安装 安装 : nuget install MediaFilesManager API用法 呼叫...
  • Android 调用系统相册和系统照相机功能雨实例源码.zip
  • Unity插件NativeGallery拉取手机相册的使用简记拉取手机相册文档摘要1. 关于2. 使用设置3.常见问题解答项目示例资源链接 拉取手机相册 项目中使用到了拉取手机相册的功能,使用的该插件插件中有README.txt英文文档...
  • Android GitHud 项目插件

    2021-06-05 08:51:50
    1、android自定义相册,实现了拍照、图片选择(单选/多选)、 裁剪(单/多裁剪)、旋转、ImageLoader无绑定任由开发者选择、功能可配置、主题样式可配置。GalleryFinal为你定制相册。通过Gradle抓取:compile'...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,602
精华内容 1,840
关键字:

安卓相册插件