проблема, возникающая при записи видео и загрузке на сервер в Android Titanium - PullRequest
0 голосов
/ 02 июня 2018

Я использую устройство Android для загрузки видео на сервер, используя платформу Titanium.При получении данных я сталкиваюсь со следующей проблемой.

Не найдено действий для обработки Intent {act = android.media.action.VIDEO_CAPTURE dat = content: //com.example.videoupload.tifileprovider/filesystem/storage / emulated / 0 / Android / data / com.example.videoupload / cache / _tmp / tia7257530851591479880.mp4 typ = video / * flg = 0x3}

Ниже приведен код, который я использую:-

Titanium.Media.showCamera( {
  success: function( event ) {
    // called when media returned from the camera
    if( ( event.mediaType === Ti.Media.MEDIA_TYPE_VIDEO ) && ( event.media !== null ) ) {

        //  AndroidSelectedImage(event.media.imageAsThumbnail(300));

        var image = event.media;
        var intent = Ti.Android.createIntent( {
            action: "android.media.action.VIDEO_CAPTURE",
            //action : Ti.Android.ACTION_PICK,
            //flags : Titanium.Android.FLAG_GRANT_READ_URI_PERMISSION | Titanium.Android.FLAG_GRANT_WRITE_URI_PERMISSION,
            //data : event.media.getFile().nativePath,
            type: 'video/*',
        } );

        var activity = require( 'main' ).activity;
        //winCertificate.getActivity()
        activity.startActivityForResult( intent, function( param ) {
            Ti.API.info( 'intent :- ' + JSON.stringify( intent ) );
            Ti.API.info( 'intent 1:- ' + JSON.stringify( param ) );

        } );
    } );
} );

Помогите мне в этой ситуации.Заранее спасибо

1 Ответ

0 голосов
/ 04 июня 2018

Отправка видео непосредственно на сервер с помощью HttpClient

success: function( event ) {
    if( ( event.mediaType === Ti.Media.MEDIA_TYPE_VIDEO ) && ( event.media !== null ) ) {
        var client = Ti.Network.createHTTPClient( {
            onload: function( e ) {
                alert( 'success' );
            },
            onerror: function( e ) {
                alert( 'error' );
            },
            timeout: 0
        } );
        client.open( "GET", URL );
        client.send( {
            video: media.video
        } );
    }
}

С титановой активностью начинайте так:

Ti.Android.currentActivity.startActivity(intent);
...