Example usage for android.content.pm PackageManager FEATURE_CAMERA

List of usage examples for android.content.pm PackageManager FEATURE_CAMERA

Introduction

In this page you can find the example usage for android.content.pm PackageManager FEATURE_CAMERA.

Prototype

String FEATURE_CAMERA

To view the source code for android.content.pm PackageManager FEATURE_CAMERA.

Click Source Link

Document

Feature for #getSystemAvailableFeatures and #hasSystemFeature : The device has a camera facing away from the screen.

Usage

From source file:com.cannabiscoin.wallet.ui.SendingAddressesFragment.java

@Override
public void onCreateOptionsMenu(final Menu menu, final MenuInflater inflater) {
    //Fixed menu item doubling on rotate in address screen - langerhans (https://github.com/langerhans/dogecoin-wallet-new)
    if (menu.findItem(R.id.sending_addresses_options_paste) == null
            && menu.findItem(R.id.sending_addresses_options_scan) == null) {
        inflater.inflate(R.menu.sending_addresses_fragment_options, menu);

        final PackageManager pm = activity.getPackageManager();
        menu.findItem(R.id.sending_addresses_options_scan)
                .setVisible(pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)
                        || pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT));

        super.onCreateOptionsMenu(menu, inflater);
    }/*www .  j a  va  2s  . c o  m*/
}

From source file:com.android.idearse.Result.java

public boolean isCameraAvailable() {
    PackageManager pm = getPackageManager();
    return pm.hasSystemFeature(PackageManager.FEATURE_CAMERA);
}

From source file:com.chute.android.photopickerplus.ui.activity.ServicesActivity.java

@Override
public void takePhoto() {
    if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        NotificationUtil.makeToast(getApplicationContext(), R.string.toast_feature_camera);
        return;/*from w w  w  . ja  v  a2  s.c  om*/
    }
    final Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (AppUtil.hasImageCaptureBug() == false) {
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(AppUtil.getTempImageFile(ServicesActivity.this)));
    } else {
        intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
    }
    startActivityForResult(intent, Constants.CAMERA_PIC_REQUEST);
}

From source file:github.nisrulz.qreader.QREader.java

private boolean hasCameraHardware(Context context) {
    return context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
}

From source file:com.getchute.android.photopickerplus.ui.activity.ServicesActivity.java

@Override
public void takePhoto() {
    if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        NotificationUtil.makeToast(getApplicationContext(), R.string.toast_feature_camera);
        return;//w  w  w . j  ava2  s. co  m
    }
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    // Ensure that there's a camera activity to handle the intent
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        photoFile = AppUtil.getOutputMediaFile(MediaType.IMAGE);
        if (photoFile != null) {
            if (AppUtil.hasImageCaptureBug() == false) {
                takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));
            } else {
                takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT,
                        MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
            }
            startTheCamera(takePictureIntent, Constants.CAMERA_PIC_REQUEST);
        }
    }
}

From source file:com.mobicage.rogerthat.GroupDetailActivity.java

private void getNewAvatar(boolean checkPermission) {
    T.UI();//from   w  w  w.jav a2s . co  m
    if (checkPermission) {
        final SafeRunnable continueRunnable = new SafeRunnable() {
            @Override
            protected void safeRun() throws Exception {
                getNewAvatar(false);
            }
        };

        final SafeRunnable runnableCheckStorage = new SafeRunnable() {
            @Override
            protected void safeRun() throws Exception {
                if (askPermissionIfNeeded(Manifest.permission.WRITE_EXTERNAL_STORAGE, PERMISSION_REQUEST_CAMERA,
                        continueRunnable, null))
                    return;
                continueRunnable.run();
            }
        };
        if (askPermissionIfNeeded(Manifest.permission.CAMERA, PERMISSION_REQUEST_CAMERA, runnableCheckStorage,
                null))
            return;
        runnableCheckStorage.run();
        return;
    }
    File image;
    try {
        image = getTmpUploadPhotoLocation();
    } catch (IOException e) {
        L.d(e.getMessage());
        UIUtils.showLongToast(getApplicationContext(), e.getMessage());
        return;
    }
    image.delete();
    mUriSavedImage = Uri.fromFile(image);
    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, mUriSavedImage);
    cameraIntent.putExtra("outputFormat", Bitmap.CompressFormat.PNG.toString());

    Intent galleryIntent = new Intent(Intent.ACTION_PICK,
            android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
    galleryIntent.putExtra(MediaStore.EXTRA_OUTPUT, mUriSavedImage);
    galleryIntent.putExtra("outputFormat", Bitmap.CompressFormat.PNG.toString());
    galleryIntent.setType("image/*");

    PackageManager pm = getPackageManager();
    final Intent chooserIntent = Intent.createChooser(galleryIntent, getString(R.string.select_source));
    if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] { cameraIntent });
    }

    startActivityForResult(chooserIntent, PICK_IMAGE);

}

From source file:com.cloverstudio.spika.CameraCropActivity.java

public void startCamera() {
    // Check if camera exists
    if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        Toast.makeText(this, "No camera on device", Toast.LENGTH_LONG).show();
        finish();//from w w w. j a  v  a  2s .co m
    } else {
        try {
            long date = System.currentTimeMillis();
            String filename = DateFormat.format("yyyy-MM-dd_kk.mm.ss", date).toString() + ".jpg";
            _path = this.getExternalCacheDir() + "/" + filename;
            File file = new File(_path);
            //            File file = new File(getFileDir(getBaseContext()), filename);
            Uri outputFileUri = Uri.fromFile(file);
            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
            startActivityForResult(intent, CAMERA);
        } catch (Exception ex) {
            Toast.makeText(this, "No camera on device", Toast.LENGTH_LONG).show();
            finish();
        }

    }
}

From source file:org.dicadeveloper.runnerapp.TrackDetailActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    hasCamera = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
    photoUri = savedInstanceState != null ? (Uri) savedInstanceState.getParcelable(PHOTO_URI_KEY) : null;
    hasPhoto = savedInstanceState != null ? savedInstanceState.getBoolean(HAS_PHOTO_KEY, false) : false;

    myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this);
    handleIntent(getIntent());//w  w w .  ja  v a 2s  .  c  om

    sharedPreferences = getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE);

    trackRecordingServiceConnection = new TrackRecordingServiceConnection(this, bindChangedCallback);
    trackDataHub = TrackDataHub.newInstance(this);

    tabHost = (TabHost) findViewById(android.R.id.tabhost);
    tabHost.setup();

    viewPager = (ViewPager) findViewById(R.id.pager);

    tabsAdapter = new TabsAdapter(this, tabHost, viewPager);

    TabSpec mapTabSpec = tabHost.newTabSpec(MyTracksMapFragment.MAP_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_map_tab), getResources().getDrawable(R.drawable.ic_tab_map));
    tabsAdapter.addTab(mapTabSpec, MyTracksMapFragment.class, null);

    TabSpec chartTabSpec = tabHost.newTabSpec(ChartFragment.CHART_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_chart_tab), getResources().getDrawable(R.drawable.ic_tab_chart));
    tabsAdapter.addTab(chartTabSpec, ChartFragment.class, null);

    TabSpec statsTabSpec = tabHost.newTabSpec(StatsFragment.STATS_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_stats_tab), getResources().getDrawable(R.drawable.ic_tab_stats));
    tabsAdapter.addTab(statsTabSpec, StatsFragment.class, null);

    if (savedInstanceState != null) {
        tabHost.setCurrentTabByTag(savedInstanceState.getString(CURRENT_TAB_TAG_KEY));
    }

    // Set the background after all three tabs are added
    ApiAdapterFactory.getApiAdapter().setTabBackground(tabHost.getTabWidget());

    trackController = new TrackController(this, trackRecordingServiceConnection, false, recordListener,
            stopListener);
}

From source file:br.com.bioscada.apps.biotracks.TrackDetailActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    hasCamera = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
    photoUri = savedInstanceState != null ? (Uri) savedInstanceState.getParcelable(PHOTO_URI_KEY) : null;
    hasPhoto = savedInstanceState != null ? savedInstanceState.getBoolean(HAS_PHOTO_KEY, false) : false;

    myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this);
    handleIntent(getIntent());//from  www.  j  a va 2  s .  c  om

    sharedPreferences = getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE);

    trackRecordingServiceConnection = new TrackRecordingServiceConnection(this, bindChangedCallback);
    trackDataHub = TrackDataHub.newInstance(this);

    tabHost = (TabHost) findViewById(android.R.id.tabhost);
    tabHost.setup();

    viewPager = (ViewPager) findViewById(R.id.pager);

    tabsAdapter = new TabsAdapter(this, tabHost, viewPager);

    TabSpec mapTabSpec = tabHost.newTabSpec(MyTracksMapFragment.MAP_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_map_tab), getResources().getDrawable(R.drawable.ic_tab_map));
    tabsAdapter.addTab(mapTabSpec, MyTracksMapFragment.class, null);

    if (PreferencesUtils.getBoolean(this, R.string.chart_show_pacer_key,
            PreferencesUtils.CHART_SHOW_PACER_DEFAULT)) {
        TabSpec chartAndPacerTabSpec = tabHost.newTabSpec(ChartAndPacerFragment.CHART_AND_PACER_FRAGMENT_TAG)
                .setIndicator(getString(R.string.track_detail_chart_and_pacer_tab),
                        getResources().getDrawable(R.drawable.ic_tab_chart));
        tabsAdapter.addTab(chartAndPacerTabSpec, ChartAndPacerFragment.class, null);
    }

    TabSpec chartTabSpec = tabHost.newTabSpec(ChartFragment.CHART_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_chart_tab), getResources().getDrawable(R.drawable.ic_tab_chart));
    tabsAdapter.addTab(chartTabSpec, ChartFragment.class, null);

    TabSpec statsTabSpec = tabHost.newTabSpec(StatsFragment.STATS_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_stats_tab), getResources().getDrawable(R.drawable.ic_tab_stats));
    tabsAdapter.addTab(statsTabSpec, StatsFragment.class, null);

    TabSpec pacerTabSpec = tabHost.newTabSpec(PacerFragment.PACER_FRAGMENT_TAG).setIndicator(
            getString(R.string.track_detail_pacer_tab), getResources().getDrawable(R.drawable.ic_tab_pacer));
    tabsAdapter.addTab(pacerTabSpec, PacerFragment.class, null);

    if (savedInstanceState != null) {
        tabHost.setCurrentTabByTag(savedInstanceState.getString(CURRENT_TAB_TAG_KEY));
    }

    // Set the background after all three tabs are added
    ApiAdapterFactory.getApiAdapter().setTabBackground(tabHost.getTabWidget());

    trackController = new TrackController(this, trackRecordingServiceConnection, false, recordListener,
            stopListener);
}

From source file:org.opencv.samples.facedetect.PlayerViewDemoActivity.java

public void onResume() {
    super.onResume();

    if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        Toast.makeText(this, "No camera on this device", Toast.LENGTH_LONG).show();
    } else {/*from  w  w  w . j a v a2  s.  c om*/
        cameraId = findFrontFacingCamera();
        if (cameraId < 0) {
            Toast.makeText(this, "No front facing camera found.", Toast.LENGTH_LONG).show();
        } else {
            camera = Camera.open(cameraId);
        }
    }
    camera.startPreview();

    YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
    youTubeView.initialize(DeveloperKey.DEVELOPER_KEY, this);

    playListButton = (Button) findViewById(R.id.button1);
    SeekBar seekBar1 = (SeekBar) findViewById(R.id.seekBar1);

    seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
            // seekBarValue.setText(String.valueOf(progress));
            progress1 = progress;
            ImageView gauge = (ImageView) findViewById(R.id.gaugeImage);

            if (progress <= 6)
                gauge.setImageDrawable(gauges[0]);
            else if (progress > 6 && progress <= 13)
                gauge.setImageDrawable(gauges[1]);
            else if (progress > 13 && progress <= 19)
                gauge.setImageDrawable(gauges[2]);
            else if (progress > 19 && progress <= 25)
                gauge.setImageDrawable(gauges[3]);
            else if (progress > 25 && progress <= 31)
                gauge.setImageDrawable(gauges[4]);
            else if (progress > 31 && progress <= 37)
                gauge.setImageDrawable(gauges[5]);
            else if (progress > 37 && progress <= 43)
                gauge.setImageDrawable(gauges[6]);
            else if (progress > 43 && progress <= 49)
                gauge.setImageDrawable(gauges[7]);
            else if (progress < 49 && progress <= 55)
                gauge.setImageDrawable(gauges[8]);
            else if (progress > 55 && progress <= 61)
                gauge.setImageDrawable(gauges[9]);
            else if (progress > 61 && progress <= 67)
                gauge.setImageDrawable(gauges[10]);
            else if (progress > 67 && progress <= 73)
                gauge.setImageDrawable(gauges[11]);
            else if (progress > 73 && progress <= 79)
                gauge.setImageDrawable(gauges[12]);
            else if (progress > 79 && progress <= 85)
                gauge.setImageDrawable(gauges[13]);
            else if (progress > 85 && progress <= 91)
                gauge.setImageDrawable(gauges[14]);
            else if (progress > 91)
                gauge.setImageDrawable(gauges[15]);
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
            setIdArray();

        }
    });

    CheckBox checkFd = (CheckBox) findViewById(R.id.checkBox1);
    checkFd.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (isChecked)
                faceDetection = true;
            else {
                tvTop.setText("Let`s play your mood!");
                faceDetection = false;
            }
        }
    });

    happyImage = (ImageView) findViewById(R.id.hapyFace);
    happyImage.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            if (faceDetection == false) {
                sadImage.setImageDrawable(getResources().getDrawable(R.drawable.sad_bw));
                happyImage.setImageDrawable(getResources().getDrawable(R.drawable.happy));
                happyImage.bringToFront();
                currentMood = new String("happy");
                setIdArray();
            }
        }
    });

    sadImage = (ImageView) findViewById(R.id.sadFace);
    sadImage.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            if (faceDetection == false) {
                sadImage.setImageDrawable(getResources().getDrawable(R.drawable.sad));
                happyImage.setImageDrawable(getResources().getDrawable(R.drawable.happy_bw));
                sadImage.bringToFront();
                currentMood = new String("sad");
                setIdArray();
            }
        }
    });

    timerAlert();

    mFacebookBtn = (CheckBox) findViewById(R.id.cb_facebook);

    mProgress = new ProgressDialog(this);
    mFacebook = new Facebook(APP_ID);

    SessionStore.restore(mFacebook, this);

    if (mFacebook.isSessionValid()) {
        mFacebookBtn.setChecked(true);

        String name = SessionStore.getName(this);
        name = (name.equals("")) ? "Unknown" : name;

        mFacebookBtn.setText("  Facebook (" + name + ")");
        mFacebookBtn.setTextColor(Color.WHITE);
    }

    mFacebookBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            onFacebookClick();
        }
    });

}