создание ярлыка после установки apk - PullRequest
0 голосов
/ 23 апреля 2020

Как можно добавить простой ярлык, я весь день искал кусок кода, чтобы работать, но все о продвинутых ярлыках или замене, а не о простом

public class MainActivity extends AppCompatActivity {

    private void addShourcut(){
        Intent shortCutIntent = new Intent(getApplicationContext() ,MainActivity.class);

        shortCutIntent.setAction(Intent.ACTION_MAIN);

        Intent addIntent = new Intent();

        addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT , shortCutIntent);
        addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME , "TASTE live");
        addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE ,
        addIntent.ShortcutIconResource.fromContext(getApplicationContext() , R.mipmap.ic_launcher));
        addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
        addIntent.putExtra("duplicate" , false);
        getApplicationContext().sendBroadcast(addIntent);

    }

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


        webView = findViewById(R.id.webView);
        webView.loadUrl("https://taste-airsoft.ro");
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setBuiltInZoomControls(false);
    }

}

Я тоже пробовал это безуспешно, я полагаю, что в коде отсутствует «private void addShourcut ()», но у меня нет идеи, где его добавить, оно вступит в конфликт с «защищенной пустотой»

public class MainActivity extends AppCompatActivity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (BuildConfig.DEBUG) {
        final Intent shortcutIntent = new Intent(this, MainActivity.class);

        final Intent intent = new Intent();
        intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
        intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
        intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this, R.mipmap.ic_launcher));
        intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
        sendBroadcast(intent);
    }


    setContentView(R.layout.activity_main);

    webView = findViewById(R.id.webView);
    webView.loadUrl("https://taste-airsoft.ro");
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setBuiltInZoomControls(false);
}

}

Может ли кто-то структурировать это, как я мог бы узнать из своей ошибки? разрешение выдано в XML

...