My PC
AppGameKit 2017.04.24 (Linux)
Linux Mint 18.1 Serena
Linux desenvolvimento 4.4.0-71-generic #92-Ubuntu SMP Fri Mar 24 12:59:01 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
IDE --> Android Studio 2.3.1
SDK Platform-Tools-> 25.0.5
SDK Tools-> 26.0.2
NDK -> 14.1.3816874
My Cellphone
Model ->Lenovo A6020l36
Android -> 5.1.1
CPU-> 8 Core 1.5GHz
RAM->2GB
ROM->16GB
My Problem
On Tier1 the function ShowImageCaptureScreen works.
// Capture image from camera and show it
backdrop = CreateSprite ( LoadImage ( "background5.jpg" ) )
SetSpriteSize ( backdrop, 100, 100 )
camera_existe = GetCameraExists()
camera_dialogo = 0
camera_capturando = 0
do
if camera_existe =1
if camera_dialogo = 0
camera_dialogo = ShowImageCaptureScreen()
endif
if camera_dialogo=1
camera_capturando = IsCapturingImage()
if camera_capturando=1
Sync()
else
camera_existe = 0
image=GetCapturedImage()
Print("Camera existe="+Str(camera_existe))
endif
endif
endif
if GetSpriteExists(1)=0
CreateSprite(1,image)
SetSpritePosition(1,10,10)
SetSpriteSize(1,80,-1)
endif
SetSpriteImage(1,image)
Sync ( )
loop
On Tier 2, the same example does not works. Compile, install APK and running, but stop and does not shows camera dialog.
// Includes
#include "template.h"
#include <string>
// Namespace
using namespace AGK;
app App;
int bt_set_unset=0,
deviceLargura=0,
deviceAltura=0,
backdrop =0,
bt_pega_foto=0,
imagem_capturada = 1,
imagem_cameradevice = 2,
imagem_bloco_2 = 3,
camera_existe = 0,
camera_dialogo = 0,
camera_capturando = 0,
bt_captura = 1,
set_unset = 0,
memblock = 0,
width = 0,
height = 0,
size = 0,
temp=0,
temp1=0,
temp2=0,
temp3=0,
c=0;
std::string str;
void app::Begin(void)
{
//agk::SetResolutionMode(0);
deviceLargura = agk::GetDeviceWidth();
deviceAltura = agk::GetDeviceHeight();
agk::SetVirtualResolution(deviceLargura, deviceAltura);
agk::SetFolder("/media");
agk::SetClearColor( 151,170,204 ); // light blue
agk::SetSyncRate(60,0);
agk::SetScissor(0,0,0,0);
agk::SetErrorMode(2);
// set window properties
//agk::SetWindowTitle( "Leitor Braille" );
agk::SetOrientationAllowed( 0, 0, 1, 0 ); // allow both portrait and landscape on mobile devices
agk::UseNewDefaultFonts( 1 ); // since version 2.0.22 we can use nicer default fonts
backdrop = agk::CreateSprite ( agk::LoadImage ( "background.png" ) );
agk::SetSpritePosition(backdrop, 0,0);
agk::SetSpriteSize ( backdrop, deviceLargura*100/100, deviceAltura*100/100 );
agk::SetPrintColor(0,0,0);
camera_existe = agk::GetCameraExists();
camera_dialogo = 0;
camera_capturando = 0;
}
int app::Loop (void)
{
if (camera_existe == 1){
if (camera_dialogo == 0){
camera_dialogo = agk::ShowImageCaptureScreen();
}
if (camera_dialogo==1){
camera_capturando = agk::IsCapturingImage();
if (camera_capturando==1){
agk::Sync();
}else{
camera_existe = 0;
imagem_capturada = agk::GetCapturedImage();
if (agk::GetSpriteExists(2)==1){
camera_dialogo = 0;
agk::DeleteSprite(2);
agk::CreateSprite(2,imagem_capturada);
agk::SetSpriteSize(2, deviceLargura*96/100,deviceAltura*10/100);
agk::SetSpritePosition(2, deviceLargura*2/100, deviceAltura*11/100);
}
}
}
}
if(agk::GetTextExists(4)==0){
//CreateText(3,"tamanho="+Str(GetImageMemoryUsage()))
str = "Posicione a câmera na linha a ser traduzida.";
agk::CreateText(4,str.c_str());
agk::SetTextSize(4,deviceLargura*4/100);
agk::SetTextPosition(4, deviceLargura*2/100,deviceAltura*12/100);
}
str = "Posicione a câmera na linha a ser traduzida.";
agk::SetTextString(4,str.c_str());
agk::Sync();
if(agk::GetRawKeyState(27)){ exit(1); }
agk::Print(agk::ScreenFPS());
return 0;
}
void app::End (void)
{
}
Please, I need help.