• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

I need to talk to an android developer!

Hello everyone, I just registered on this site, hoping to find someone to have a call with and talk about the fastest way to start learning how to develop Android apps from scratch. Anyone willing to give me his/her time? I'm serious about this and i really want to start on the right track and not waste any time beating around the bushes. If anyone is willing to help with a call, I would appreciate it. :)

Layout File Storage

I started a new app for a classroom tutorial video from Udemy.com on Android Studio. Now when I bring the app back and I have put a button, three editText boxes and three TextView boxes onto the layout, I can't bring the layout back and I can't find the layout file anywhere on my computer (at least so far). My question is: Does the layout file automatically save itself with Android Studio? With B4A android language's IDE, the layout file must be named and saved. I saw no prompt that I had to save or name the layout for my app ("Registration Form". Here's the app's Activity_main.xml code.
Code:
<?xml version="1.0" encoding="utf-8"?>

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent">
    <item name="workouttype" type="id" />
    <item name="txthello" type="id"/>
</resources>

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <EditText
        android:id="@+id/editTextFirstName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:ems="10"
        android:inputType="textPersonName"
        android:text="First Name"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:id="@+id/editTextLastName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:ems="10"
        android:inputType="textPersonName"
        android:text="Last Name"
        app:layout_constraintStart_toStartOf="@+id/editTextFirstName"
        app:layout_constraintTop_toBottomOf="@+id/editTextFirstName" />

    <EditText
        android:id="@+id/editTextEmail"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:ems="10"
        android:inputType="textPersonName"
        android:text="Email"
        app:layout_constraintEnd_toEndOf="@+id/editTextLastName"
        app:layout_constraintStart_toStartOf="@+id/editTextLastName"
        app:layout_constraintTop_toBottomOf="@+id/editTextLastName" />

    <Button
        android:id="@+id/btnRegister"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:text="Register"
        app:layout_constraintEnd_toEndOf="@+id/editTextEmail"
        app:layout_constraintStart_toStartOf="@+id/editTextEmail"
        app:layout_constraintTop_toBottomOf="@+id/editTextEmail" />

    <TextView
        android:id="@+id/textViewFirstName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:text="First Name"
        app:layout_constraintEnd_toEndOf="@+id/btnRegister"
        app:layout_constraintStart_toStartOf="@+id/btnRegister"
        app:layout_constraintTop_toBottomOf="@+id/btnRegister" />

    <TextView
        android:id="@+id/textViewLastName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:text="Last Name"
        app:layout_constraintEnd_toEndOf="@+id/textViewFirstName"
        app:layout_constraintHorizontal_bias="1.0"
        app:layout_constraintStart_toStartOf="@+id/textViewFirstName"
        app:layout_constraintTop_toBottomOf="@+id/textViewFirstName" />

    <TextView
        android:id="@+id/textViewEmail"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:text="Email"
        app:layout_constraintEnd_toEndOf="@+id/textViewLastName"
        app:layout_constraintStart_toStartOf="@+id/textViewLastName"
        app:layout_constraintTop_toBottomOf="@+id/textViewLastName" />
</androidx.constraintlayout.widget.ConstraintLayout>

Strange system app(spyware?)

I've got LineageOS 14.1 installed on my phone. And I found strange system app: com.qualcomshutdownlistner. On the internet I found only com.qualcomshutdownlistEner. There is a letter missing in my version. Looks suspicious.
Also I noticed that Android System uses traffic every time I open any app, even if this app doesn't need internet connection. Not much(~500b).
I'd got LineageOS 15 installed(rooted). Then I suspected that spyware was installed on my system(I've got some reasons, that not related to my phone). So I replaced LineageOS 15 with LineageOS 14.1. I am 95% sure that i have paranoia, but I wanna be 100% sure. So I would be grateful if someone will explain the things I mentioned above.

How to really backup my android accounts

Hi guys!
I am constantly changing my ROMs and I need a fast way to backup my applications and not re-add everything. For this "Titanium Backup" works for 1-2 apps, but the most important problem that I can not find is how to restore my accounts? Its a very big problem to re-add them every time. I want to be able to do it fast with no effort, can someone point me to a good solution as I can not find any that works. Is
a nandroid backup from a different ROM usable and what is the procedure for restoring my accounts only?

The Rise and Fall of the headphone jack

hey guys,
so i found this very interesting youtube video about the history of the headphone jack.

check it out:

all of my headphones that i have save for a few wired ones (mostly ones that came with the various phones i have owned in the past) are wireless with bluetooth.

i get the uproar to some extent. they are just trying to make you buy things you do not necessarily need......but it works. people are buying wireless buds and airpods. it worked on me. i just bought the samsung buds and they are on the as we speak.

thoughts?

Panda Wish Launch

We are honored to announce the launch of our mobile app Panda Wish (first on demand massage app in the Philippines).

Our app still early on and currently offer it's service in one region in the Philippines (Bicol Region). We looking forward to take it further.

Appreciate sharing your feedback and thoughts on the app.

Thank you

"Add RAMs"

That's what my friend said should be done to fix his slow wifi. It doesn't affect his phone because he has regular service for that, but now that he's got roku tv, it could be a problem. I often use wifi for my phone there. Does increasing bandwidth really help? There's only one company providing wifi in the back of beyond, and he had to go all the way over to the highway to get it done. By the way, internet service was practically nonexistent the other day, but it was cured by nightfall.

Attachments

  • 2019-09-01 08.12.34.jpg
    2019-09-01 08.12.34.jpg
    288.5 KB · Views: 95

Deranged drawer

I was cleaning the kitchen utensil drawer and of course managed to get it off track. It should be straight down the middle but instead keeps sticking to the left and right. It also tilts down toward the back instead of being level. I obviously have no clue how to fix it or I wouldn't be bothering you with this nonsense.

Attachments

  • 20190901_075603.jpg
    20190901_075603.jpg
    201 KB · Views: 58
  • 20190901_075648.jpg
    20190901_075648.jpg
    160.9 KB · Views: 76

Accessories Included AKG USB-C earbuds - telling Left from Right

It's not very easy, lol.

So, they are marked, just above where the wire enters the earbud, on the inside.

The L is embossed, and the R is engraved.
20190901_114246.jpg 20190901_114654.jpg

However, they are almost impossible to see in poor light.

So the EASY way to tell left from right...

The right has the volume controls on and the left has a little raised dot at it's base that you can easily feel.

It has to be said, from a comfort perspective, I actually prefer the earbuds that come with my older Siii or possibly S5.

Help help with alarm clock ringtone

1st this is on a Alcatel One Touch Fierce 7 phone, model 6062W. I have a saved ringtones on the SD card in the phone but I don't know where to find the dir's for the alarm clock ringtone and the phone's ringtone, when someone calls me. Also I heard about an app that can be prog to say the persons name when the phone rings with that persons number. Is there such an animal?

Steve

I want android tv box to stop usb while in sleep mode

hey guys i have android tv box a95x f1 and I have a little usb fan running under it, but i want the fan to only run when being used, i managed to get it to shut down after a certain period of time but even while it's completely powered off the fan still runs, but before if I manually turned it off the fan would stop, now it doesn't matter how I turn it off the fan keeps running

How do I remove Virgin/Bell Bloatware?

I just switched from Virgin Mobile to Freedom on my Samsung Galaxy S10, and I cannot get rid of the apps that were installed with Virgin, even after I reset the phone to factory settings. I cannot uninstall them AT ALL; I can only "disable" them. They just won't get away! It's driving me mad!

Even after a hard reset, those pesky apps won't go away. I backed up my data, before I attempted to reset my phone, so I'm OK with that.

How do I get rid of these apps, for good? Thanks.

Galaxy S5 video camera resolution adjusting App for low resolution?

I want to do pictures and videos in lower resolution than what is available on my phone. Right now, lowest resolution is 2 MB. I want to do 256K pictures and videos to send to text and email without eating up my bandwidth. I do not have unlimited bandwidth! Plus it is faster !

What is a good App for setting my Galaxy S5 phone's camera/video camera's resolution to 256K ? Free would be nice but i can fork out A FEW BUCKS FOR A GOOD App!

Thanks!

Webview; Camera not responding

Creating simple webview where camera is used. All camera works outside of webview. Just looking for some direction here - my eyes are bleeding after a few hours at looking at this. Event log shows no errors and gradle build finishes in 3s. Logcat only shows a memtrack error "couldn't load memtrack module" - which I believe is related to type emulator used.

Looking for some insight

My activity xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"

tools:context="com.app.cameratest_java.MainActivity">

<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" />

</RelativeLayout>

MainActivity java
package com.app.cameratest_java;

import android.Manifest;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.webkit.PermissionRequest;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import java.util.ArrayList;
import java.util.List;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.provider.Settings;

public class MainActivity extends AppCompatActivity {
private WebView webView;
private static final String TAG;

static {
TAG = "MainActivity";
}
public static final int MY_PERMISSIONS_REQUEST_CAMERA = 100;
public static final String ALLOW_KEY = "ALLOWED";
public static final String CAMERA_PREF = "camera_pref";


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
if (getFromPref(this, ALLOW_KEY)) {
showSettingsAlert();
} else if (ContextCompat.checkSelfPermission(this,
Manifest.permission.CAMERA)

!= PackageManager.PERMISSION_GRANTED) {

// Should we show an explanation?
if (ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.CAMERA)) {
showAlert();
} else {
// No explanation needed, we can request the permission.
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.CAMERA},
MY_PERMISSIONS_REQUEST_CAMERA);
}
}
} else {
openCamera();
}
webView = (WebView) findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient());

webView.loadUrl("https://yadayada_html?appid=e780e85949a2499a9acd3236a756344e");

WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);


webView.setWebChromeClient(new WebChromeClient() {

@Override
public void onPermissionRequest(PermissionRequest request) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
request.grant(request.getResources());

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
int hasCameraPermission = checkSelfPermission(Manifest.permission.CAMERA);
Log.d(TAG, "has camera permission: " + hasCameraPermission);
int hasRecordPermission = checkSelfPermission(Manifest.permission.RECORD_AUDIO);
Log.d(TAG, "has record permission: " + hasRecordPermission);
int hasAudioPermission = checkSelfPermission(Manifest.permission.MODIFY_AUDIO_SETTINGS);
Log.d(TAG, "has audio permission: " + hasAudioPermission);
List<String> permissions = new ArrayList<>();
if (hasCameraPermission != PackageManager.PERMISSION_GRANTED) {
permissions.add(Manifest.permission.CAMERA);
}
if (!permissions.isEmpty()) {
requestPermissions(permissions.toArray(new String[permissions.size()]),111);

}
}
}
}
});
}

public static void saveToPreferences(Context context, String key, Boolean allowed) {
SharedPreferences myPrefs = context.getSharedPreferences(CAMERA_PREF,
Context.MODE_PRIVATE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putBoolean(key, allowed);
prefsEditor.commit();
}

public static Boolean getFromPref(Context context, String key) {
SharedPreferences myPrefs = context.getSharedPreferences(CAMERA_PREF,
Context.MODE_PRIVATE);
return (myPrefs.getBoolean(key, false));
}

private void showAlert() {
AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
alertDialog.setTitle("Alert");
alertDialog.setMessage("App needs to access the Camera.");

alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "DONT ALLOW",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
finish();
}
});

alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "ALLOW",
new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
ActivityCompat.requestPermissions(MainActivity.this,
new String[]{Manifest.permission.CAMERA},
MY_PERMISSIONS_REQUEST_CAMERA);
}
});
alertDialog.show();
}

private void showSettingsAlert() {
AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
alertDialog.setTitle("Alert");
alertDialog.setMessage("App needs to access the Camera.");

alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "DONT ALLOW",
new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
//finish();
}
});

alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "SETTINGS",
new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
startInstalledAppDetailsActivity(MainActivity.this);
}
});

alertDialog.show();
}

@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_CAMERA: {
for (int i = 0, len = permissions.length; i < len; i++) {
String permission = permissions;

if (grantResults == PackageManager.PERMISSION_DENIED) {
boolean
showRationale =
ActivityCompat.shouldShowRequestPermissionRationale(
this, permission);

if (showRationale) {
showAlert();
} else if (!showRationale) {
// user denied flagging NEVER ASK AGAIN
// you can either enable some fall back,
// disable features of your app
// or open another dialog explaining
// again the permission and directing to
// the app setting
saveToPreferences(MainActivity.this, ALLOW_KEY, true);
}
}
}
}

// other 'case' lines to check for other
// permissions this app might request
}
}

@Override
protected void onResume() {
super.onResume();
}

public static void startInstalledAppDetailsActivity(final Activity context) {
if (context == null) {
return;
}

final Intent i = new Intent();
i.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
i.addCategory(Intent.CATEGORY_DEFAULT);
i.setData(Uri.parse("package:" + context.getPackageName()));
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
i.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(i);
}

private void openCamera() {
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
startActivity(intent);
}



@Override
public void onBackPressed(){
if (webView.canGoBack()) {
webView.goBack();
} else {
super.onBackPressed();
}
}
}


Manifest xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.cameratest_java">

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.permission.LOCATION_HARDWARE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>


<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>

Help Best ROM or way to remove Google tracking

I got a Samsung Galaxy Tab S4 (SM-T830) and I want to increase its privacy.

I would prefer to install LineagoOS on it but I cannot find a ROM that is compatible with my device. I would consider another ROM that is compatible with the device as long that is does not install or require GAPPs.

What can one do to remove Google apps and spyware from a Tab S4 and make the device a "privacy friendly device?"

Filter

Back
Top Bottom