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

VLC for Android issues

Where I work, when someone leaves a voicemail on my work phone, it sends it to my Outlook email via a .wav file so I can listen to it. Currently I use VLC to play the voicemail messages. And here's where it gets tricky. I use Google Play music (Youtube premium subscriber) as my default music playing app, which I prefer to have as the app that auto launches upon connecting to a Bluetooth multimedia device (such as my car radio).

But when I have to use VLC to play a voicemail, the next time I turn on my car radio it launches over top of Play Music, and starts playing the voicemail. It takes a quite a bit of an effort to get it to let Play Music play my music. This never used to be an issue because there was an option in VLC settings to turn off Bluetooth autoplay. But I can't find it now and tried contacting the developers to see if they could point it out or re-implement the option, and just keep getting generic emails back that don't really explain what happened to the option.

So I'm just wondering if there's any other app that can simply play a .wav file without trying to take over my phone, or if there's a way to get VLC to play along with other apps better.

How could I use multiple radiogroup in an app?

Hello,
in my app, i want to use 4 radiogroup (each radiogroup contains 2 radiobuttons):
Code:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    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">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">


        <RadioGroup
            android:id="@+id/estate_type_radio_group_1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="8dp"
            android:layout_marginLeft="8dp"
            android:layout_marginTop="16dp"
            android:layout_marginEnd="8dp"
            android:layout_marginRight="8dp"
            android:checkedButton="@+id/filter_estate_type_a"
            android:orientation="horizontal"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/sleeping_room_range_seek_bar">

            <RadioButton
                android:id="@+id/filter_estate_type_h"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/house_with_state_48"
                android:drawableLeft="@drawable/house_with_state_48"
                android:text="@string/house" />

            <RadioButton
                android:id="@+id/filter_estate_type_a"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/apartment_with_state_48"
                android:drawableLeft="@drawable/apartment_with_state_48"
                android:text="@string/apartment" />

        </RadioGroup>

        <RadioGroup
            android:id="@+id/estate_type_radio_group_2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="16dp"
            android:orientation="horizontal"

            app:layout_constraintEnd_toEndOf="@+id/estate_type_radio_group_1"
            app:layout_constraintStart_toStartOf="@+id/estate_type_radio_group_1"
            app:layout_constraintTop_toBottomOf="@+id/estate_type_radio_group_1"
            >

            <RadioButton
                android:id="@+id/filter_estate_type_s"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/studio_with_state_48"
                android:drawableLeft="@drawable/studio_with_state_48"
                android:text="@string/studio" />

            <RadioButton
                android:id="@+id/filter_estate_type_r"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/sleeping_room_with_state_48"
                android:drawableLeft="@drawable/sleeping_room_with_state_48"
                android:text="@string/sleeping_room" />

        </RadioGroup>


        <RadioGroup
            android:id="@+id/estate_type_radio_group_3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="16dp"
            android:orientation="horizontal"

            app:layout_constraintEnd_toEndOf="@+id/estate_type_radio_group_2"
            app:layout_constraintStart_toStartOf="@+id/estate_type_radio_group_2"
            app:layout_constraintTop_toBottomOf="@+id/estate_type_radio_group_2">

            <RadioButton
                android:id="@+id/filter_estate_type_local_c"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/local_commel_with_state_48"
                android:drawableLeft="@drawable/local_commel_with_state_48"
                android:text="@string/local_commercial" />

            <RadioButton
                android:id="@+id/filter_estate_type_apps"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/appartement_with_state_48"
                android:drawableLeft="@drawable/appartement_with_state_48"
                android:text="Appartements meubles"/>

        </RadioGroup>
        <RadioGroup
            android:id="@+id/estate_type_radio_group_4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="16dp"
            android:orientation="horizontal"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="@+id/estate_type_radio_group_3"
            app:layout_constraintStart_toStartOf="@+id/estate_type_radio_group_3"
            app:layout_constraintTop_toBottomOf="@+id/estate_type_radio_group_3"
            >

            <RadioButton
                android:id="@+id/filter_estate_ty"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:drawableStart="@drawable/ter_with_state_48"
                android:drawableLeft="@drawable/ter_with_state_48"
                android:text="Terrain" />

            <RadioButton
                android:id="@+id/filter_estate_type_roo"
                style="@style/EstateTypeRadioButtonStyle"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_margin="8dp"
                android:layout_weight="1"
                android:visibility="invisible"
                android:drawableStart="@drawable/sleeng_rm_with_state_48"
                android:drawableLeft="@drawable/sleeng_rm_with_state_48"
                android:text="@string/sleeping_room" />

        </RadioGroup>


           </androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
When i select a radiobutton, i should like that the others radiobuttons would uncheck even if they are in another radiogroup.
The code java that i used is here:
Java:
isChecking =true;
mEstateTypeGroup1.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
                if (checkedId != -1 && isChecking) {
                    isChecking = false;
                    mEstateTypeGroup2.clearCheck();
                    mEstateTypeGroup3.clearCheck();
                    mEstateTypeGroup4.clearCheck();
                    mEstateTypeCheckedId = checkedId;
                }
                isChecking = true;
            }
        });
        mEstateTypeGroup2.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
                if (checkedId != -1 && isChecking) {
                    isChecking = false;
                    mEstateTypeGroup1.clearCheck();
                    mEstateTypeGroup3.clearCheck();
                    mEstateTypeGroup4.clearCheck();
                    mEstateTypeCheckedId = checkedId;
                }
                isChecking = true;
            }
        });

        mEstateTypeGroup3.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
                if (checkedId != -1 && isChecking) {
                    isChecking = false;
                    mEstateTypeGroup1.clearCheck();
                    mEstateTypeGroup2.clearCheck();
                    mEstateTypeGroup4.clearCheck();
                    mEstateTypeCheckedId = checkedId;
                 }
                isChecking = true;
            }
        });

        mEstateTypeGroup4.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
                if (checkedId != -1 && isChecking) {
                    isChecking = false;
                    mEstateTypeGroup1.clearCheck();
                    mEstateTypeGroup2.clearCheck();
                    mEstateTypeGroup3.clearCheck();
                    mEstateTypeCheckedId = checkedId;
                    }

                isChecking = true;
            }
        });

But when i execute this code in my app, the selection of radiobutton doesn't work properly. For example: when i check a button and i check another button, the first button isn't unchecked.

Please could you have any idea?
Thank you

Home Screen Apps the same

I'm new to android having bought an S20+ Galaxy and love it. However could anyone help with my home screen problem?
How do I restore my App icons back to normal i.e. Met Office shows only the purple Samsung Internet icon, met office opens ok but I don't know which ones which? About 10 the same, all open OK its just they're all the same purple samsung icon, what have I done?
Please guide me to restore my home screen.
Any help most welcome

Zero-Click RCE Vulnerability in Galaxy phones 2014+

Yep: this is serious!

A vulnerability has been identified that exists in every Samsung Galaxy device made since 2014... one that would allow a hacker to perform Remote Code Execution (RCE) with no user interaction at all.

Fortunately, a fix was quickly identified and is contained in the May security patch, which I got yesterday on the unlocked Galaxy Note 10+. Check for the update, as it's rolling out and it's a critical update!

Correct Architecture for Bottom Nav?

I want to make a music app, very simple, using ExoPlayer. It will have a bottom nav with "songs" as the landing page, a recycler view of all songs in the library, with a player at the bottom of the view. Other areas of the app will be "albums", "artists" and "playlists". These again will be recycler views, but you click on something in these recycler views, and instead of playing, like in "songs", you will be taken to a recycler view of songs contained within that item i.e. I select Artist "Daft Punk", I get a list of Daft Punk songs with the player at the bottom, I click a song in that list and it plays.

So my decision is how to architect this and as I am new to android I honestly don't know the right way. I have done some reading and thing I am right in saying that I would have 1 activity (the nav bar activity). From this, I would have 4 fragments, one for each of the items in the bottom nav. I would then pass a list of all songs to the songs fragment on opening the app, or tapping the "Songs" nav item. But I would pass a different list of songs to the "Songs" fragment if I were navigating through one of the other areas.

Is this the correct approach? I haven't worked much with fragments so am a little wary that this might be a bit dumb... The alternative I though of was to have one child fragment each off of artists, playlists and albums which are essentially a copy of the songs fragment, but this seems like too much duplication. A little guidance here would be appreciated.

I have drawn something simple here to explain what I mean. Haven't added media on this site before so hoping this works correctly. [GALLERY=media, 426]Screenshot 2020-05-08 At 14.09.01 by adrem7 posted May 8, 2020 at 2:09 PM[/GALLERY]

Apps get error kotlin null pointer exception when switching fragment

I have given the error section with an underscore


import android.app.SearchManager
import android.content.Context
import android.os.Bundle
import android.util.Log
import android.view.*
import androidx.appcompat.widget.SearchView
import androidx.core.content.getSystemService
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout

import com.example.paduma.R
import com.example.paduma.model.DataApi
import com.example.paduma.model.Paritta
import com.example.paduma.network.ParittaApi
import com.example.paduma.network.RetrofitClientInstance
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
import java.io.IOException

// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private const val ARG_PARAM1 = "param1"
private const val ARG_PARAM2 = "param2"

/**
* A simple [Fragment] subclass.
*
*/
class ParittaFragment : Fragment() {

companion object {
val INSTANCE_STATE = "INSTANCE_STATE"
}

override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
setHasOptionsMenu(true)
Log.d("life","createview")
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_paritta, container, false)
}

private lateinit var swipeRefreshLayout: SwipeRefreshLayout
private lateinit var recyclerView: RecyclerView
private lateinit var linearLayoutManager: LinearLayoutManager
private lateinit var parittaApi: ParittaApi
private lateinit var adapterParitta: AdapterParitta
private var dataParitta: ArrayList<Paritta.DataParitta>? = ArrayList()
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
// if(savedInstanceState!=null) {
// if (savedInstanceState.getParcelableArrayList<Paritta.DataParitta>(INSTANCE_STATE) != null) {
// dataParitta = savedInstanceState.getParcelableArrayList(INSTANCE_STATE)!!
// setDataRecycler(dataParitta)
// }
// }else{
// loadRecyclerViewData()
//
// }
init(view)
Log.d("life","viewcreated")


}

override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
Log.d("life","activityCreated")

loadData()
}

private fun init(view: View) {
swipeRefreshLayout = view.findViewById(R.id.swipeLayout)
parittaApi = RetrofitClientInstance().getRetrofitInstance().create(ParittaApi::class.java)
recyclerView = view.findViewById(R.id.recycler_paritta)
linearLayoutManager = LinearLayoutManager(view.context)
recyclerView.layoutManager = linearLayoutManager


}


private fun loadData() {
swipeRefreshLayout.isRefreshing=true
val call = parittaApi.getAllParitta()
call.enqueue(object : Callback<Paritta> {
override fun onFailure(call: Call<Paritta>, t: Throwable) {

}

override fun onResponse(call: Call<Paritta>, response: Response<Paritta>) {
if (!response.isSuccessful) {
return
}
dataParitta = response.body()!!.data

adapterParitta =
AdapterParitta(dataParitta as ArrayList<DataApi>, R.layout.recycler_paritta, context!!)

recyclerView.adapter = adapterParitta
swipeRefreshLayout.isRefreshing=true

}

})
}

override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
inflater.inflate(R.menu.main_menu, menu)
val searchView = menu.findItem(R.id.action_search).actionView as SearchView
searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener {
override fun onQueryTextSubmit(query: String?): Boolean {
return false
}

override fun onQueryTextChange(newText: String?): Boolean {
adapterParitta.filter.filter(newText)
return false
}

})
super.onCreateOptionsMenu(menu, inflater)
}


// override fun onSaveInstanceState(outState: Bundle) {
// super.onSaveInstanceState(outState)
// outState.putParcelableArrayList(INSTANCE_STATE,dataParitta)
// }


}

Reviews Want a free USB C to 3.5mm adapter?

While I have a Note 10 plus, this will work for any phone that has a USB C port. A company I have worked with many times before it's looking for honest reviews of their new products and you'll get one for free. I found out about it here on XDA a few years ago and wanted to share so others could join in. Who doesn't want free accessories for their phone

They current have a USB C to 3.5mm adapter (2 pack). Basically, you buy the adapter, post a true review, and he'll reimburse you via PayPal for the adapter. I've personally reviewed a number of products he sells and they have been great.

He also has an 8K HDMI, and USB extension, if you're interested.

If interested, contact Jayson at jaysonchuh@outlook.com

Link to adapter on Amazon.com: https://www.amazon.com/dp/B0837MMB4B

Speaking of the adapter, it's awesome. My car's Bluetooth is not reliable, so when it goes out, I need an adapter to connect my phone to the car because stupid Samsung killed the headphone jack. This adapter fixes that issue. Unlike others, this one for nicely into the USB port (many are cheap and feel like it's going to break my phone), it looks good, and the sound is crystal clear. Well with it...

Help No Sign-in prompt after password change? And Wrong Device Name

Hi all, I have an LG Stylo 4 running Android 9. I have Cricket Wireless and use a data connection. i've set my DNS to cloudflare.

I changed the password on my primary Google account, the one my phone is using by default, and received no prompt to log in to my phone again as I would expect. What could be causing this?

I factory reset my phone to use a different Google account, just in case.

Possibly related: Signing in on my laptop, the two-factor notification from Google showed my phone under its generic(?) name "LMsomethingsomething" rather that "Stylo 4", several times. Google still only listed the one device and it also appeared under this name when plugged in to my laptop, (elementary os) so I wrote it off at the time.

Is my phone compromised, and if so, what to do? I'm very concerned about this.

Let me know if more/what kind of detail may help in answering. Thanks for taking the time to read.

Help Call forwarding over internet

Hello everyone,

I'm looking for a certain set of features in an app (no problem if it requires root). I've googled it but didn't find anything that matched my exact requirements. Here are my requirements:

  • The app should have 2 modes: 1 mode receives calls on the simcard and starts an internet voice call, and the other mode receives this internet call and communicates with the original caller over internet and not wifi or bluetooth.
  • The oposite of this opperation can occur where the device that doesn't have the simcard issues a voice call to the device that has the simcard and makes a call through it.
The purpose of this is to be able to travel abroad and still make internet calls through a local sim card and appear local.

It would be great if someone can help me find an app with those features, paid or free, root or no root. I would also be of help if someone can help me by telling me the correct technical terms for those features so I can search better.

If no such app exists, can anyone help me by telling me if there are technical reasons that prevent such app from exisiting?

Thanks a lot!

How to recover deleted messages/files?

Is there any app that can have a log of whatsapp/sms/messaging apps? For example sometimes I accidentally deleted wrongly and I wish to undo delete.

Is there any app that can undo delete deleted files/messages app?

Is there a recycle bin (like Windows 10 recycle bin function) somewhere in android that can temporarily store deleted files before it permanently gets deleted?

Thanks

Help Can I set ask for password before opening an app?/file?

When I am using my phone, pressing any app icon will launch the app or file. I do not want it to immediately lauch all the app.

How to password protect a file? For example if I press a file, I wish to have a password prompt asking me to scan my fingerprint or pattern or maybe a digit password before the file is opened.

How to password protect an app? For example Google Keep does not have a password protect feature and will auto open after pressing the Google Keep icon, after I press Google Keep icon I wish to have a password prompt asking me to scan fingerprint or pattern or maybe a digit password for Google Keep app only. Hope to have a password option for all apps.

Thank you. (Samsung Note 8 user)

[Free][App] Crazy Ball Sort Puzzle

tn-crazy-sort-puzzle-01.png
New "Crazy Ball Sort Puzzle" 2020 : Sort puzzle for all !
To achieve your goal : Solve logic puzzle by moving BALLS and sorting them to win !

▶️ HOW TO PLAY
Only 2 rules to know :
- Tap a tube = Move the ball on top.
- Then, tap an empty tube or tube with similar ball = Ball changes tube.
Classic game at your Fingertips.

▶️ 5 PROGRESSIVE LEVELS
Thousands of awesome levels : From 5 pipes with 16 balls until 10 pipes with 40 balls. More 100 levels in 5 game modes : Easy - Moderate - Difficult - Crazy - Master.
For each resolved level in time, you win 3 coins to unlock new features (Design, Joker, Undo...).
Put your logic and strategy skills to the test ! Smash your way to the victory !

▶️ TAKE ON CHALLENGES
Each level has its own leaderboard : Ideal for challenging your friends and familly during endless games ! Try to solve each level as soon as possible to be at the top of the list.

▶️ CONNECT ANYTIME, ANYWHERE
Play everywhere, anywhere and as much as you want - no internet connection is required.
Play even when your device has no connection.

▶️ CUSTOMIZE YOUR PUZZLE
You can customize the app as you wish :
✔ Color Sort puzzle
✔ Ball Sort puzzle
✔ Animal Sort puzzle
✔ Bubble Sort puzzle
✔ Donuts Sort puzzle
✔ Flag Sort puzzle
✔ Emojis Sort puzzle
and so much more !

▶️ TIP TO WIN
Before starting game, make sure that you choose easiest balls to sort.

Simple but so attractive. Sort them now !
Download now from the play store and join the fun sort adventure !

> Crazy Ball Sort Puzzle

Removed apps - Constant data use

I have a Note 9 and I recently noticed that I was using extremely large amounts of data, like 2 to 7gb per day. I read the posts on the forum and saw the comments on 'removed apps' being the culprit. I checked my data usage and removed apps was definitely using enormous amounts of data. This is not data that was recorded and is still showing up due to my prior usage in the current months data. I downloaded Glassware and set it to display today's data only and it still shows massive amounts of data being used by 'removed apps.' I didn't uninstall anything from my phone today, so why is there such a large chunk of data being used by this removed app.

See screenshot attached:

Attachments

  • Screenshot_20200507-235923_GlassWire.jpg
    Screenshot_20200507-235923_GlassWire.jpg
    132.5 KB · Views: 511

Cannot find the smartphone I want.

Hello,

Can you please help me to find an unit with the specs I want?

I have saw many many options but still cannot find the one I want. Here is what I'm looking for:
  1. Cannot be a phone made by Google.
  2. No more than $300, that's the top, "no más".
  3. Main camera that takes the best photos at night or in dark places.
  4. Unlocked with USA warranty.
  5. 4G LTE with T-Mobile or AT&T network.
  6. No less than 4 Gb ram / 64 Gb storage space.
Nice to have but not mandatory:
  1. Takes great pictures in daylight/well lighted rooms.
  2. Storage that can be expanded with SD-Card.
  3. Water/liquid spills resistant.
  4. Easy to root after warranty expires.
  5. Unit that is well supported by alternative ROMs (Linage OS perhaps).
So those are my requirements, can you please recommend an unit that fit that description?

How to stop BT autoplay upon reconnect

Samsung S9, with latest SW, but in doing a web search, I think this is an Android issue....

When I have used a media app, such as overdrive, spotify, podcast, etc. via BT in either my car or headset/earbuds and reconnect to the BT device, the media app automatically starts.

For example, I was listening on my headset to podcast while walking. When I get home, I stop it. Later I get in my car, and the podcast automatically starts. Or a book I was listening to starts. The same if I shut off the headset, and turn it on again.

I DON'T WANT THE APP TO AUTOSTART.

I have looked all over the phone's settings, I have looked on the interwebs, see a ton of people complain about this, yet have not found an answer. Anybody know how to stop the media app from autoplaying upon reconnect to BT? Thanks.

"Not Compatible"

Picked up a factory unlocked S20+ from Best Buy today and Straight Talk told me my phone isnt compatible. That was with a Verizon sim. (I was/am using Verizon in my old note and it worked great) Next we tried a T mobile sim and they're saying that's also isnt compatible? Anyone else having this issue? Might switch to Verizon prepaid .....

Hotel currency in Google Maps

Good day,


My Android phone shows hotels in the wrong currency in Google Maps - they are in EUR since I visited Europe a while back. I live in Canada. I was able to change back to CAD in the desktop version of maps, but not in Android. Here is what I have tried and this did not solve the issue:
  • clear the cache
  • force-stop the app, clear the cache, sign out of Maps, sign back in
  • factory reset the phone
  • buy a new phone.

Does anyone know how to solve this?

Filter

Back
Top Bottom