How we fought bad apps and malicious developers in 2018 Android Dev |
- How we fought bad apps and malicious developers in 2018
- How to play YouTube videos in a WebView with just a few lines of code.
- Call/SMS - filling out the Permissions Declaration Form for an SMS scheduling app (for non-English speaking devs)
- How we built Monzo Chat on Android | Monzo
- Running closed beta test in play store for premium game without risk of APK being spread
- Bye bye instant run , hello apply changes! Android Developers Backstage Episode 108: Instant Re-run
- It feels so good when you don't have to worry about app ratings, so you can tell users what you think of them...
- How do I move a view upwards using the ObjectAnimator?
- How much attention do you pay on Android Lint?
- Play Store Optimization Tips tablet
- How To Sabotage Your Project Using Inconsistency
- RxJava
- Can we use Admob in AOSP devices?
- Live Translation?
- Introduction to ViewPager2
- Is there a way to view which admob ad ID is being called in an app?
- Replacing Recycler View with another Recycler View on item click
- Live Talk: Joe Birch – Modularizing Android Apps (Hosted by Antonio Leiva)
- Help in Android MVVM
- Does Samsung Galaxy S9 and Pixel 2 return an installer package name when downloaded from Google Play Store?
- Help with Android Studio and jsoup
- Would you mind taking a look at my resume and provide feedback?
- How to unsubsribe from Observable in onPause, then resubscribe in onResume?
- Unidirectional data flow on Android using Kotlin: The blog post (part 3)
How we fought bad apps and malicious developers in 2018 Posted: 13 Feb 2019 10:42 AM PST
| ||
How to play YouTube videos in a WebView with just a few lines of code. Posted: 13 Feb 2019 04:55 AM PST
| ||
Posted: 13 Feb 2019 12:30 PM PST EDIT: some have asked why the developer is not claiming the "Device Automation" exception. That is a good question - I think he has already been rejected for that, so this time he is taking a new tack, and asking for a new exception type (if Device Automation is not working he figured, he should try something else - like "Scheduler App" type of exception). I have just suggested text for the screenshots I was provided (which I admit I was confused about myself - but since the Form changes all the time I assumed it was a newer iteration). The question remains whether the developer would be better served continuing to re-request on the same "Device Automation" exception (and being rejected again and again), or to try the new exception type route. Difficulties for non-English speakers The Permission Declaration Form is a hurdle for English speaking developers. They can make the distinction between what the Form claims, and the unreliability of the Google response to it (exceptions which Form says can be requested are never granted with a terse bot-generated e-mail). This process is worse for non-English speaking developers - when this happens to them, they wonder if their understanding of the Form was at fault. To be fair to Google, while their Permissions Declaration Form does not mention other languages: https://support.google.com/googleplay/android-developer/answer/9047303?hl=en In contrast to that, the Permissions Appeal Form does mention some: https://support.google.com/googleplay/android-developer/contact/permissions
A non-English speaking developer asked for suggestions for what to write in the explanation boxes on the Form. I provide a snapshot of what the Form looks like, and an example of how it could be filled - for a (highly rated) SMS scheduler app. It may be illustrative for non-English speakers. Developers can suggest improvements or alternate exceptions which could be claimed instead of Device Automation. The app is an SMS scheduling app (highly rated). The SMS is completely driven by the user - they compose the text of the SMS, and they set the time. So when the SMS sending is triggered later, it is completely with user's prior consent. Here are the screenshots of the Permissions Declaration Form that the developer provided: Individual images: Here is my understanding of how a developer might respond to the question on the Form. Choose the appropriate advance notice scenario:
Use case:
If there is more space, you can use this longer sentence:
Required permissions:
Describe why the use of sensitive permissions is necessary for this use case:
Is your app's use of Call Log or SMS permissions to provide functionality required by law or regulation ?
If portions of your app are restricted to logged in users ...
If portions of your app are restricted, please upload link(s) to any screenshots or videos of your app to help verify the functionalities and use cases declared above.
NOTE: If you can make a video, make one where you compose a message, and schedule it for later time .. then video should cut i.e. jump immediately to showing how that SMS is sent (if a notification appears or some indication appears - you may want to show that in video with a circle or something. You may also want to show an overlay at the top which shows the time let's say 10:00am and then when video jumps to 11:00am when the SMS is being triggered/sent out). If you can't make a video, you may want to make a series of photo slides and make that into a video perhaps. If you want to say something you can put it as a subtitle in the video. EDIT: Any screen recording app available on Google Play store can be used to record the session. [link] [comments] | ||
How we built Monzo Chat on Android | Monzo Posted: 13 Feb 2019 07:07 AM PST
| ||
Running closed beta test in play store for premium game without risk of APK being spread Posted: 13 Feb 2019 12:21 PM PST Hi, We will soon run an closed test round on Google Play with for us, unknown persons. The game will contain a free part and the option to buy the full game, but for the testers we want to release a version where the entire game is free. The risk is then that the apk will get spread. How have you handled this scenario? Have you set an expiry date/self destruct date? Another option would be to run the test with the pay-version and give away some of our free promotion codes to the tester. [link] [comments] | ||
Bye bye instant run , hello apply changes! Android Developers Backstage Episode 108: Instant Re-run Posted: 13 Feb 2019 02:04 PM PST
| ||
Posted: 13 Feb 2019 03:26 PM PST
| ||
How do I move a view upwards using the ObjectAnimator? Posted: 13 Feb 2019 12:07 PM PST This is a pretty simple line of code that moves my view downwards, however I cant seem to find out how to move it upwards. No one seems to be asking this question so I thought it would be a good idea to ask here. [link] [comments] | ||
How much attention do you pay on Android Lint? Posted: 13 Feb 2019 09:16 AM PST How much attention do you give to lint error checking? I just run check on my main app and too many warnings showed up, but most of them were trivial warnings that are not worth the time in my opinion. What about you? Do you care about lint? Are your projects lint error and warning free? [link] [comments] | ||
Play Store Optimization Tips tablet Posted: 13 Feb 2019 11:55 AM PST Hello all 👋 I am wondering why one of our apps get a warning/error in the Play Store Console > User acquisition > Optimization tips section.
Everything is done for tablet on this app, vector drawable, constraint layout, dedicated layout for large screens etc. The few bitmap drawable used are provided in multiple densities. I checked their guidelines and explanations and nothing seems wrong to me. I've even added the On 2 others apps, one of them very similar in terms of assets do not get this warning. Do you have any input on that? [link] [comments] | ||
How To Sabotage Your Project Using Inconsistency Posted: 13 Feb 2019 07:24 AM PST
| ||
Posted: 13 Feb 2019 09:47 AM PST I am adding data from DialogFragment to SqlLite. I'd like to update my activity view when sqllite data changes. (using room persistance library for sqllite). Am I able to update activity view with RxJava when database changes? Can anyone point me into the right direction? [link] [comments] | ||
Can we use Admob in AOSP devices? Posted: 13 Feb 2019 10:42 AM PST I make apps for an AOSP based Android TV device. The app is not distributed through playstore. It comes pre installed in the TV. Can I use Admob, Mopub or any other ad network to earn money in my app? Will it violate their policy? Is there any other ad network that I can use? [link] [comments] | ||
Posted: 13 Feb 2019 02:11 PM PST Hello devs. I was wondering if someeone could help me out with an inquiry. I recently tried LiveTranscribe from Google and fell in love with its capabilities. I know Google Translate has a 'push button/take turns' option for translation, but I would love to have something thats real time like Live Transcribe, but in a window underneath it translates as the person is talking. My question is, does something like this exist already? I have not found anything in my search. OR Is it terribly hard to decompile the APK and just code a translation part/window mode for what I'm seeking? [link] [comments] | ||
Posted: 12 Feb 2019 07:26 PM PST
| ||
Is there a way to view which admob ad ID is being called in an app? Posted: 13 Feb 2019 10:43 AM PST I'm trying to do a little detective work on an app in google play. I can't click the ad, but I'm trying to figure out which ad ID the ad has. It's a long story... But anyway, is there a way to view logs while the app is loading the ad or something? [link] [comments] | ||
Replacing Recycler View with another Recycler View on item click Posted: 13 Feb 2019 04:23 PM PST When the user selects an item in my initial Recycler view A, I want it so the entire Recycler view is replaced with, lets say Recycler view B. I know I'm suppose to type my code in the onBindViewHolder method, but I'm not sure how I would apply this. [link] [comments] | ||
Live Talk: Joe Birch – Modularizing Android Apps (Hosted by Antonio Leiva) Posted: 13 Feb 2019 05:46 AM PST
| ||
Posted: 13 Feb 2019 07:18 AM PST I am new for mvvm and i am bit confused. In my previous project i have a async task that fetch the installed apps. Now where should i put that task? In viewModel? In simple words where should we do stuff like that? Moving files on button click and fetching installed apps. [link] [comments] | ||
Posted: 13 Feb 2019 09:00 AM PST
| ||
Help with Android Studio and jsoup Posted: 13 Feb 2019 02:15 PM PST Hi im using android studio and jsoup to webscrape release dates and names of shoes off of stockx. I have gotten the elements that i want off of the website but I want to now store them in an array list so that I can use them in other parts of the program However I have been struggling in how to add them. I am not the greatest coder and that's why i am reaching out for help. Code is attached. also a link to the stack overflow link here public class doit extends AsyncTask <Void,Void,Void> { String url = "https://stockx.com/new-releases/sneakers"; String words; ArrayList<String> listN = new ArrayList<String>(); ArrayList<String> listD = new ArrayList<String>(); final StringBuilder builder = new StringBuilder(); @Override protected Void doInBackground(Void... voids) { try { Document doc = Jsoup.connect(url).get(); words = doc.text(); String title = doc.title(); Elements date = doc.select("div.date"); Elements name = doc.select("div.name"); builder.append(title).append("\n"); for(Element findN : name) { builder.append("\n").append("name : ").append(findN.text()).append("\n"); listN.add(findN.text()); } for (Element findD : date) { builder.append("\n").append("Date: " ).append(findD.text()); listD.add(findD.text()); } }catch(Exception e){e.printStackTrace();} return null; } @Override protected void onPostExecute(Void aVoid ) { super.onPostExecute(aVoid); texx.setText(builder.toString()); } } [link] [comments] | ||
Would you mind taking a look at my resume and provide feedback? Posted: 13 Feb 2019 02:04 PM PST Hi, I'm a pleb with no job experience. Hopefully, I'm getting my bachelor's degree this summer so I can start to apply for some dev jobs. I'm appreciating any feedback or suggestion that can boost or improve my resume. I know about r/resumes but I decided to post here because I suppose you are more relevant in giving me feedback regarding the content. Although any feedback is welcomed :) [link] [comments] | ||
How to unsubsribe from Observable in onPause, then resubscribe in onResume? Posted: 13 Feb 2019 02:03 PM PST Hello, I am feel really stuck. Basically I have such problem. I create network request and after that I create an Observable which would trigger same network request every 10 seconds. I add that Observable to disposables and clear in inside of Activity( I can't create it inside of ViewModel, because I need lifecycle states). Then I must to stop that Observable, which creates network requests, if onPause is triggered. This is because, I recently figured out, that if user uses battery saver, then all network requests started from background will be killed and SocketException will occur... This fact really changed my logic and will impact my code. Right now I don't know how can I clear that disposable smartly, because I can't simply call clear() inside of onPause, if response from that Observable does not satisfy particular condition. So, I should clear() that observable, check inside of onResume if condition is still not fulfilled and create another observable, which would do same work, fire request every 10 seconds. It does however looks like a mess.. I need clean solution. I tried without Rx, but handlers worked unpredictably and even worse... [link] [comments] | ||
Unidirectional data flow on Android using Kotlin: The blog post (part 3) Posted: 13 Feb 2019 02:42 AM PST |
You are subscribed to email updates from Developing Android Apps. To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google, 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States |
No comments:
Post a Comment