potřebuji použít v androidu findViewById mimo activity. Potřebuji to v jiné třídě.
Když jsem zkoušel:
TextView txtName = view.findViewById(R.id.txtName);
či
TextView txtName = context.findViewById(R.id.txtName);
Tak dostávám jen chybu:
FATAL EXCEPTION: main
Process: cz.xxxx.yyyyyy, PID: 14436
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
composer create-project -s dev contributte/apitte-skeleton
-----------
Could not find package contributte/apitte-skeleton with stability dev in a version installable using your PHP
version, PHP extensions and Composer version.
Můžu tu chybu, že mám php8.0 a potřebuji php8.1 nějak ignorovat a přesto provést instalaci?
musim se s vámi podělit s touto chybou na kterou jsem narazil při vývoji android aplikace, protože i ChatGPT mně neporadil. Mám třídu mimo Activity a potřebuji spustit intent. Bohužel to neustále vyhazovalo dokola chybu "null object reference" viz níže.
Požadovaný kód:
---------------------------------------
Intent intent = new Intent(view.getContext(), HomeActivity.class);
startActivity(intent);
Chyba:
---------------------------------------
FATAL EXCEPTION: main
Process: cz.warehouse, PID: 8874
java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.ActivityThread$ApplicationThread android.app.ActivityThread.getApplicationThread()' on a null object reference
at android.app.Activity.startActivityForResult
....
Řešení je:
---------------------------------------
Intent intent = new Intent(view.getContext(), HomeActivity.class);
view.getContext().startActivity(intent);
Ahoj, virtuální tiskárnu do kubuntu lze přidat takto:
1.) jedna možnost je přidat pdf tiskárnu
sudo apt install cups-pdf
Tímto se přidá tiskárna s názvem PDF a ta bude veškeré úlohy posílat do adresáře PDF
2.) Další možností je přidat virtuální BRF tiskárnu.
Stačí klasicky naklikat novou tiskárnu a dát:
- CUPS-BRF
- driver - generic text-only printer
- hotovo
dodatek - jak lze posílat requesty když používáme android retrofit a chceme do url předávat dynamicky parametry.
Endpoint má třeba tento tvar a chceme dynamicky dodávat param "barcode" :
http://192.168.35.205:8001/api/endpoint/get?barcode=B0002
1.) předávání parametrů "barcode=B0002" přes anotaci
-----------
String endpoint = Constants.URL+"endpoint/get";
Call<List<ApiData>> call = APIService.getApiDatas(endpoint, auth, Constants.TOKEN_KEY, code);
interface APIService {
@GET
Call<List<ApiData>> getApiDatas(
@Url String url,
@Header("Authorization") String auth,
@Header("X-AUTH-TOKEN") String token,
@Query("barcode") String barcode
);
}
2.) předávání parametrů "barcode=B0002" už rovnou v názvu endpointu (string)
------------
String endpoint = Constants.URL+"endpoint/get?barcode="+code;
Call<List<ApiData>> call = APIService.getApiDatas(endpoint, auth, Constants.TOKEN_KEY);
interface APIService {
@GET
Call<List<ApiData>> getApiDatas(
@Url String url,
@Header("Authorization") String auth,
@Header("X-AUTH-TOKEN") String token
);
}
ano můžeš v android aktivitě nastavit podmínky jak potřebuješ a načítat pak různé layouty např. takto:
int layoutType = 1;
switch(layoutType){
case 1:
setContentView(R.layout.activity_contact);
break;
case 2:
setContentView(R.layout.activity_home);
break;
default:
setContentView(R.layout.activity_search);
break;
}
musíš si do té třídy předat context a pak to uděláš takto:
TextView txtName = ((MyActivity) context).findViewById(R.id.txtName);
potřebuji použít v androidu findViewById mimo activity. Potřebuji to v jiné třídě.
Když jsem zkoušel:
TextView txtName = view.findViewById(R.id.txtName);
či
TextView txtName = context.findViewById(R.id.txtName);
Tak dostávám jen chybu:
FATAL EXCEPTION: main
Process: cz.xxxx.yyyyyy, PID: 14436
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
ano, jednoduše to můžeš vyřešit tímto ignore na verzi php:
composer create-project -s dev contributte/apitte-skeleton --ignore-platform-req=php
chci instalovat něco přes composer a mám chybu:
composer create-project -s dev contributte/apitte-skeleton
-----------
Could not find package contributte/apitte-skeleton with stability dev in a version installable using your PHP
version, PHP extensions and Composer version.
Můžu tu chybu, že mám php8.0 a potřebuji php8.1 nějak ignorovat a přesto provést instalaci?
musim se s vámi podělit s touto chybou na kterou jsem narazil při vývoji android aplikace, protože i ChatGPT mně neporadil. Mám třídu mimo Activity a potřebuji spustit intent. Bohužel to neustále vyhazovalo dokola chybu "null object reference" viz níže.
Požadovaný kód:
---------------------------------------
Intent intent = new Intent(view.getContext(), HomeActivity.class);
startActivity(intent);
Chyba:
---------------------------------------
FATAL EXCEPTION: main
Process: cz.warehouse, PID: 8874
java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.ActivityThread$ApplicationThread android.app.ActivityThread.getApplicationThread()' on a null object reference
at android.app.Activity.startActivityForResult
....
Řešení je:
---------------------------------------
Intent intent = new Intent(view.getContext(), HomeActivity.class);
view.getContext().startActivity(intent);
Není zač :-)
curl requrest s autorizací v hlavičce pomocí x-api-key můžes poslat takto:
linux
---------------
curl https://www.up4.cz/ -H "x-api-key: xxxxxxxxx"
php
---------------
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.up4.cz');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = [
'x-api-key: xxxxxxx '
];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
print $response;
potřeboval bych se připojit na api pomocí curl v linuxu. Autorizace se provádí v hlavičce pomocí x-api-key. Jak to v terminálu provedu? Díky
1.) jedna možnost je přidat pdf tiskárnu
sudo apt install cups-pdf
Tímto se přidá tiskárna s názvem PDF a ta bude veškeré úlohy posílat do adresáře PDF
2.) Další možností je přidat virtuální BRF tiskárnu.
Stačí klasicky naklikat novou tiskárnu a dát:
- CUPS-BRF
- driver - generic text-only printer
- hotovo
Tiskárna bude odesílat úlohy do adresáře BRF
uprav si document root pomocí htaccess pro nette takto:
/.htaccess (v rootu nette)
------------------------------
< IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ /www/$1 [NE]
< /IfModule>
/www/.htaccess (veřejně dostupný adresář www)
------------------------------
< IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /www/
RewriteRule /\.|^\.(?!well-known/) - [F]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz|map)$ index.php [L]
< /IfModule>
zkus fotky/obrázky vybrat na webech, kde by měly být teoreticky fotky zdarma a bez licence např.:
lifeofpix.com
stocksnap.io
pexels.com
Připadně pak AI, který ti vygeneruje obrázky dle tebe - vygoogli si "Free AI image generator"
fotky ve formátu heic můžeš na kubuntu zobrazit takto:
Instalace:
sudo apt install heif-gdk-pixbuf heif-thumbnailer gimagereader gpicview
Použití:
Tim se ti nainstaluje Image Viewer a pomocí toho si ty soubory heic pak otevírej.
potřeboval bych na svůj linux Kubuntu dostat pro účely testování/vývoje virtuální tiskárnu. Chci tam posílat věci do fronty. Díky
v phpstormu klikni na daný soubor pravým tlačítkem a dej Local history > Show history
To by tě mělo ukázat úplně všechny změny u daného souboru.
potřebuji zprovoznit projekt v nette na hostingu, kde nemůžu změnit document root.
Document root je / ale já mám index v /www/index.php . Můžo to nějak nastavit přes soubor .htaccess?
Díky